Function at 0x41fdc0
Capabilities:
Encode data using base64
Enumerate pe sections
Resolve function by parsing pe exports

Disassembly:
sub esp, 0x1b0
mov eax, dword [esp + 0x1b4]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1bc]
push ebx
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x1c4]
push ebp
mov ebp, dword [esp + 0x1cc]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x1d0]
push esi
mov dword [esp + 0x38], eax
lea esi, [esp + 0x24]
mov eax, dword [esp + 0x1d8]
push edi
mov dword [esp + 0x28], 0
mov dword [esp + 0x40], eax
mov dword [esi + 0x5c], 0
mov dword [esp + 0x10], esi
lea ebx, [ebx]
mov dword [esi + 0x60], 0
jmp 0x41fe40
mov edx, dword [ebp]
mov ebx, dword [ebp + 0x48]
mov dword [esp + 0x14], ebx
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, dword [ebp + 4]
jb 0x41fe81
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x41fe6f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0bf
mov edi, 0xfffffff8
jmp 0x42abbf
mov eax, dword [esi + 0x18]
cmp eax, dword [ebp + 8]
jb 0x41feb5
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x41fea3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0cf
mov edi, 0xffffffeb
jmp 0x42abbf
cmp dword [ebp + 0x98], 2
jne 0x41fedf
mov eax, dword [esi + 4]
lea ecx, [esi + 0x120]
mov dword [esi + 0x124], eax
mov eax, dword [esi + 0x14]
mov dword [ecx], eax
mov dword [esi + 0x14], ecx
mov dword [ebp + 0x98], 0
mov eax, dword [esi + 8]
xor ebx, ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x18], ebx
movzx edx, byte [eax]
mov dword [esi + 0x94], edx
cmp edx, 0x9b
ja case.0x41ff0c.98
movzx eax, byte [edx + 0x42f318]
jmp dword [eax*4 + 0x42f1d0]
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], ebx
call dword [0x2668e34]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42f066
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x41ff57
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0df
mov edi, 0xfffffffa
jmp 0x42abbb
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x41ff83
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 0x34
jmp 0x4200a2
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 0x33
jmp 0x4200a2
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], ebx
call dword [0x2668e34]
mov edi, eax
add esp, 4
test edi, edi
je 0x41ff3d
mov dword [esi + 0x128], 0x38
jmp 0x42f070
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 0x35
jmp 0x4200a2
cmp dword [ebp + 0x6c], ebx
je 0x420059
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4887d8]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 8], edx
jmp 0x41fedf
push 0x12c
call dword [0x2668e34]
mov edi, eax
add esp, 4
test edi, edi
je 0x41ff3d
mov dword [esi + 0x128], 0x39
jmp 0x42f070
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 0x36
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4887d8]
add eax, ecx
mov dword [edx + 8], eax
mov eax, dword [esi + 0xc]
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]
inc eax
mov dword [edx + 0x18], eax
mov dword [edx], esi
mov esi, edx
jmp 0x41fe1f
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xb0], eax
push 0x12c
mov dword [ebp + 0xac], ebx
call dword [0x2668e34]
mov edi, eax
add esp, 4
test edi, edi
je 0x41ff3d
mov dword [esi + 0x128], 0x3a
jmp 0x42f070
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 4]
mov dword [esi + 0x34], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
jmp 0x42c485
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [ebp + 0x14]
jge case.0x41ff0c.123
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x9c], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
mov edx, dword [esi + 4]
mov ecx, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edx
jmp 0x42ac56
mov dword [esi + 0x4c], ebx
jmp 0x420c41
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x70], ecx
mov eax, dword [esi + 8]
cmp byte [eax + 3], 0x70
jne 0x42031e
mov edi, dword [0x266ca68]
test edi, edi
je 0x420314
mov dword [esp + 0x158], 2
mov eax, dword [esi + 8]
movzx eax, byte [eax + 4]
mov dword [esp + 0x15c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x160], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x164], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x168], eax
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x16c], eax
mov eax, dword [esi + 4]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x170], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 5]
movzx eax, byte [eax + 6]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x180], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 7]
movzx eax, byte [eax + 8]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x184], ecx
mov eax, dword [esi + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x174], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x178], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x17c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x188], eax
lea eax, [esp + 0x158]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x4202e3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4202d4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
jns 0x420314
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4202ff
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
jne 0x42abbb
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1b0
ret
movzx eax, byte [0x488848]
add dword [esi + 8], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax + 3]
cmp edx, 0x89
je 0x420586
cmp edx, 0x8a
je 0x420586
cmp edx, 0x87
je 0x4203d0
cmp edx, 0x88
je 0x4203d0
cmp edx, 0x8b
jne 0x420376
mov dword [esi + 0x50], ebx
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 8], edx
jmp 0x42aec6
push 0x12c
mov dword [ebp + 0x98], 1
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 3
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
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 dword [ecx + 0x14], ebx
mov eax, dword [esi + 0x18]
inc eax
mov dword [ecx + 0x18], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x41fe1f
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [esi + 0x10]
jge 0x4203f9
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x4203f9
mov eax, 1
jmp 0x4203fb
xor eax, eax
mov dword [esi + 0x50], eax
test eax, eax
jne 0x42055b
cmp edx, 0x88
jne 0x42055b
mov ebx, dword [esi + 0x90]
mov edx, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x28]
mov edi, ecx
sar ebx, 1
mov dword [esp + 0x18], eax
test edx, edx
jle 0x420457
mov esi, eax
lea esp, [esp]
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
cmp ecx, ebx
je 0x420448
add edi, dword [ebp + 0x24]
inc esi
cmp esi, edx
jl 0x420430
mov ecx, dword [ebp + 0x28]
mov dword [esp + 0x18], esi
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
cmp eax, edx
jge 0x42055b
mov ebx, edi
cmp edi, ecx
jbe 0x4204ce
sub ebx, dword [ebp + 0x24]
lea eax, [edi + 2]
lea ecx, [ebx + 2]
mov edi, edi
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x420490
test dl, dl
je 0x42048c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x420490
add eax, 2
add ecx, 2
test dl, dl
jne 0x420470
xor eax, eax
jmp 0x420495
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4204ce
movzx ecx, byte [ebx]
movzx eax, byte [ebx + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [esi + 0x10]
jge 0x4204bb
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x4204c7
mov dword [esi + 0x50], 0
cmp ebx, dword [ebp + 0x28]
jmp 0x420463
mov dword [esi + 0x50], 1
cmp dword [esi + 0x50], 0
jne 0x420561
mov ebx, dword [esp + 0x18]
inc ebx
cmp ebx, dword [ebp + 0x20]
jge 0x42055b
lea eax, [edi + 2]
mov dword [esp + 0x1c], eax
lea esp, [esp]
add edi, dword [ebp + 0x24]
lea ecx, [edi + 2]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x420516
test dl, dl
je 0x420512
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x420516
add eax, 2
add ecx, 2
test dl, dl
jne 0x4204f6
xor eax, eax
jmp 0x42051b
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42055b
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
cmp ecx, dword [esi + 0x10]
jge 0x420541
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x420554
inc ebx
mov dword [esi + 0x50], 0
cmp ebx, dword [ebp + 0x20]
jge 0x42055b
mov eax, dword [esp + 0x1c]
jmp 0x4204f0
mov dword [esi + 0x50], 1
cmp dword [esi + 0x50], 0
je 0x42056e
mov ecx, 3
add dword [esi + 8], ecx
jmp 0x42aec6
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
jmp 0x42aec6
mov ecx, dword [ebp + 0xa4]
test ecx, ecx
je 0x420359
movzx ebx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ebx, 8
or ebx, eax
cmp ebx, 0xffff
je 0x4205b2
cmp ebx, dword [ecx + 4]
je 0x4205b2
xor eax, eax
jmp 0x4205b7
mov eax, 1
mov dword [esi + 0x50], eax
test eax, eax
jne 0x420704
cmp edx, 0x8a
jne 0x420704
mov ecx, dword [ebp + 0x28]
xor edx, edx
mov eax, dword [ebp + 0x20]
mov edi, ecx
mov dword [esp + 0x20], edi
mov dword [esp + 0x18], edx
test eax, eax
jle 0x42060a
movzx eax, byte [edi]
movzx ecx, byte [edi + 1]
shl eax, 8
or ecx, eax
mov eax, dword [ebp + 0x20]
cmp ecx, ebx
je 0x4205ff
add edi, dword [ebp + 0x24]
inc edx
cmp edx, eax
jl 0x4205e4
mov ecx, dword [ebp + 0x28]
mov dword [esp + 0x18], edx
mov dword [esp + 0x20], edi
cmp edx, eax
jge 0x420704
mov ebx, edi
cmp edi, ecx
jbe 0x420687
lea eax, [edi + 2]
mov dword [esp + 0x1c], eax
mov edi, eax
sub ebx, dword [ebp + 0x24]
mov eax, edi
lea ecx, [ebx + 2]
lea esp, [esp]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x420650
test dl, dl
je 0x42064c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x420650
add eax, 2
add ecx, 2
test dl, dl
jne 0x420630
xor eax, eax
jmp 0x420655
sbb eax, eax
or eax, 1
test eax, eax
jne 0x42067f
movzx eax, byte [ebx]
xor ecx, ecx
movzx edx, byte [ebx + 1]
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x50], ecx
test ecx, ecx
jne 0x42067f
cmp ebx, dword [ebp + 0x28]
ja 0x420621
mov edi, dword [esp + 0x20]
mov edx, dword [esp + 0x18]
cmp dword [esi + 0x50], 0
jne 0x420561
inc edx
mov dword [esp + 0x18], edx
cmp edx, dword [ebp + 0x20]
jge 0x420704
lea eax, [edi + 2]
mov ebx, edx
mov dword [esp + 0x1c], eax
add edi, dword [ebp + 0x24]
lea ecx, [edi + 2]
lea ebx, [ebx]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4206d0
test dl, dl
je 0x4206cc
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4206d0
add eax, 2
add ecx, 2
test dl, dl
jne 0x4206b0
xor eax, eax
jmp 0x4206d5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x420704
movzx eax, byte [edi]
xor ecx, ecx
movzx edx, byte [edi + 1]
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x50], ecx
test ecx, ecx
jne 0x420704
mov eax, dword [esp + 0x1c]
inc ebx
cmp ebx, dword [ebp + 0x20]
jl 0x4206a4
cmp dword [esi + 0x50], 0
je 0x42056e
mov ecx, 3
add dword [esi + 8], ecx
jmp 0x42aec6
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
mov eax, dword [esi + 0x8c]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [ebp + 0x14]
jl 0x420761
mov dword [ebp + 0x3c], 1
add dword [esi + 8], 3
jmp 0x41fedf
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x90]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x90]
cmp dword [esi + 0x10], eax
jg 0x420797
add eax, 2
mov dword [esi + 0x10], eax
add dword [esi + 8], 3
jmp 0x41fedf
mov edi, dword [esi + 4]
mov ecx, dword [esi + 0xc]
cmp edi, ecx
jne 0x4207fa
cmp edx, 0x99
je 0x4207fa
cmp dword [ebp + 0xa4], ebx
jne 0x4207fa
cmp dword [ebp + 0x58], ebx
jne 0x4207d1
cmp dword [ebp + 0x5c], ebx
je 0x4207fa
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x4207fa
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4207eb
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov dword [ebp + 0x80], edi
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov edi, dword [esi + 0x94]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
jmp 0x4202e5
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
cmp dword [ebp + 0x98], 1
jne 0x420849
mov dword [esi + 0x50], 1
mov dword [ebp + 0x98], ebx
jmp 0x42af66
mov dword [esi + 0x50], ebx
jmp 0x42af66
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x24], eax
cmp dword [ebp + 0x98], 1
jne 0x420875
mov dword [esi + 0x50], 1
mov dword [ebp + 0x98], ebx
jmp 0x42b06d
mov dword [esi + 0x50], ebx
jmp 0x42b06d
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 8]
test ebx, ebx
je 0x420903
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x4208c0
dec dword [esi + 4]
dec edx
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x74]
jb 0x4208da
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4208bc
jmp 0x4208b0
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4208b0
test edx, edx
jg 0x420897
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jae 0x4208d1
mov dword [ebp + 0x84], eax
add dword [esi + 8], 3
jmp 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4208f4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 8]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
sub dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jae 0x4208c0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x420938
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [0x266ca68]
test edi, edi
je 0x420a4f
mov dword [esp + 0x18c], 2
mov eax, dword [esi + 8]
movzx eax, byte [eax + 1]
mov dword [esp + 0x190], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x194], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x198], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x19c], eax
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x1a0], eax
mov eax, dword [esi + 4]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x1a4], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x1b4], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x1b8], ecx
mov eax, dword [esi + 0x10]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x1a8], eax
mov eax, dword [ebp + 0x90]
mov dword [esp + 0x1ac], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x1b0], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x1bc], eax
lea eax, [esp + 0x18c]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x420a49
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x420a3a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
js 0x4202e5
add dword [esi + 8], 6
jmp 0x41fedf
mov eax, dword [esi + 8]
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 + 0x1c], eax
cmp eax, dword [ebp + 0x70]
jne 0x420a79
xor edx, edx
jmp 0x420a86
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 0x420aa3
cmp edx, dword [ecx + 4]
jne 0x420a9d
mov eax, dword [esi + 4]
cmp eax, dword [ecx + 0x10]
je 0x420ad7
mov ecx, dword [ecx]
test ecx, ecx
jne 0x420a90
mov dword [esi + 0x3c], edx
lea ecx, [esi + 0x38]
mov eax, dword [esi + 4]
mov dword [esi + 0x48], eax
mov eax, dword [ebp + 0xa4]
mov dword [ecx], eax
mov dword [ebp + 0xa4], ecx
add dword [esi + 8], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x44], eax
cmp eax, 0x1e
jg 0x420b03
lea eax, [esi + 0xa8]
mov dword [esi + 0x40], eax
jmp 0x420b1b
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x420af1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0fc
mov edi, 0xffffffe6
jmp 0x42abbb
shl eax, 2
push eax
call dword [0x2668e2c]
add esp, 4
mov dword [esi + 0x40], eax
test eax, eax
je 0x41ff3d
mov eax, dword [esi + 0x44]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x40]
call fcn.00415cdb
mov eax, dword [esi + 0x1c]
add esp, 0xc
cmp byte [eax], 0x82
sbb eax, eax
inc eax
mov dword [esi + 0x50], eax
jmp 0x42b1bc
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x420b44
jmp 0x41fedf
mov eax, dword [esi + 8]
inc eax
push 0x12c
mov dword [esi + 0x28], eax
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0xa
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x28]
jmp 0x42bfb2
mov edx, dword [esi + 8]
inc edx
mov dword [esi + 0x28], edx
mov edi, edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x28], edx
cmp byte [edx], 0x71
je 0x420ba0
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0xb
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x28]
add eax, 3
jmp 0x42bfb2
mov edx, dword [esi + 8]
inc edx
mov dword [esi + 0x28], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x28], edx
cmp byte [edx], 0x71
je 0x420bf1
lea eax, [edx + 3]
mov dword [esi + 8], eax
jmp 0x41fedf
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x94], eax
mov dword [esi + 0x4c], 1
mov eax, dword [esi + 0x94]
cmp eax, 0x80
je 0x420c41
cmp eax, 0x85
jne 0x420d10
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
cmp eax, dword [ebp + 0x14]
jge case.0x41ff0c.126
mov dword [esi + 0x54], ebx
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x70], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0x9c], eax
mov ecx, dword [esi + 0x90]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x8c]
mov edx, dword [esi + 4]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4], edx
cmp dword [esi + 0x94], 0x82
jl 0x420ce6
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 0x3f
jmp 0x4200a2
mov dword [esi + 0x4c], ebx
mov dword [esi + 0x54], ebx
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x70], eax
cmp dword [esi + 0x94], 0x82
jl 0x420d32
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 0x30
jmp 0x4200a2
mov edx, dword [esi + 8]
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 + 0x30], edx
mov al, byte [edx]
cmp al, 0x82
jae 0x420d7f
cmp al, 0x7b
je 0x420d7f
mov dword [esi + 0x34], ebx
jmp 0x420d90
mov eax, dword [esi + 0x14]
mov eax, dword [eax + 4]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 0x14]
mov eax, dword [eax]
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0x30]
mov al, byte [edx]
cmp al, 0x77
jb 0x420d9d
cmp al, 0x7a
jbe 0x420da1
cmp al, 0x7c
jne 0x420de5
mov eax, dword [esi + 4]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0xc]
lea ecx, [esp + 0x28]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x420dd3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f12c
mov edi, 1
jmp 0x42abbb
cmp al, 0x7f
je 0x420df9
cmp al, 0x84
je 0x420df9
cmp al, 0x80
je 0x420df9
cmp al, 0x85
jne 0x420eb4
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x90], eax
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x420e38
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x8c]
jne 0x420e38
mov eax, dword [esi + 4]
mov dword [ebp + 0x80], eax
jmp 0x420db3
mov eax, dword [esi + 0x8c]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x90]
cmp ecx, dword [ebp + 0x14]
jl 0x420e58
mov dword [ebp + 0x3c], 1
jmp 0x420eb4
mov edx, dword [esi + 0x10]
cmp ecx, edx
jle 0x420e78
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x420e78
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 + 0x8c]
mov edx, dword [ebp + 0xc]
mov ecx, dword [esi + 0x90]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 4]
mov ecx, dword [esi + 0x90]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x90]
cmp dword [esi + 0x10], eax
jg 0x420eb4
add eax, 2
mov dword [esi + 0x10], eax
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x72
je 0x420f85
mov edx, dword [esi + 4]
cmp edx, dword [esi + 0x34]
je 0x420f85
cmp al, 0x75
jne 0x420f0c
mov dword [ebp + 0x80], edx
lea ecx, [esp + 0x28]
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x8c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x420efa
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f10c
mov edi, 0xfffffc1b
jmp 0x42abbb
cmp al, 0x74
jne 0x420f43
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 7
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x42bfb2
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x82
jb 0x420f55
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0xd
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x42bfb2
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x7b
jne 0x420fc0
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0xc
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x42bfb2
lea eax, [ecx + 3]
mov dword [esi + 8], eax
jmp 0x41fedf
cmp dword [ebp + 0x40], ebx
je case.0x41ff0c.1
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jne case.0x41ff0c.1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x420ff2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421027
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x40], ebx
je 0x42106c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jne 0x42106c
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42105d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x421132
cmp ecx, dword [ebp + 0x78]
je 0x4210c8
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4210a8
mov ebx, dword [esp + 0x14]
cmp ecx, edx
jbe 0x4210cc
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00430af0
add esp, 0x14
test eax, eax
jne 0x421132
jmp 0x4210cc
mov edi, dword [ebp + 0x1c]
lea eax, [edx + edi]
cmp ecx, eax
jb 0x4210c8
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x4210c8
cmp edi, 1
je 0x421132
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x421132
mov ebx, dword [esp + 0x14]
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4210e6
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 4], eax
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42111d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [esi + 4]
mov dword [esi + 0xc], eax
inc dword [esi + 8]
jmp 0x41fedf
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x4211af
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x421165
mov ebx, dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push ebx
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x421132
jmp 0x421186
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x421182
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x421182
cmp edi, 1
je 0x421132
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x421132
mov ebx, dword [esp + 0x14]
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4211a0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x44], ebx
je 0x4211dd
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4211ce
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], ebx
je 0x421132
cmp ecx, dword [ebp + 0x84]
jbe 0x421132
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421223
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f11c
mov edi, 0xfffffff4
jmp 0x42abbb
cmp dword [ebp + 0x44], ebx
je 0x421263
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421254
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x54], ebx
je case.0x41ff0c.23
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x421299
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42128a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], ebx
je 0x421132
cmp eax, dword [ebp + 0x84]
jmp 0x4211ef
mov ecx, dword [esi + 4]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x4211dd
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4212e1
push dword [esp + 0x14]
push edi
push eax
push edx
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x421309
jmp 0x4211b4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4211b4
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x4211b4
cmp edx, 1
je 0x421309
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x4211b4
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 4]
cmp ecx, eax
jmp 0x4211b2
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x4215f3
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x74]
jne 0x421338
mov dword [esi + 0x54], 0
jmp 0x421462
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x42134c
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x421342
cmp edx, dword [ebp + 0x84]
jae 0x42135a
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x421404
test bl, 0x20
jne 0x42137a
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x4213fc
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421394
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x4213fc
and eax, 0x3f
test bl, 8
jne 0x4213af
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x4213fc
test bl, 4
jne 0x4213d3
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 0x4213fc
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 + 0x50], 0
je 0x4214c3
cmp ebx, 0x5f
jne 0x42141c
mov dword [esi + 0x54], 1
jmp 0x42145e
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x4214d4
cmp eax, 3
je 0x4214d4
xor eax, eax
mov dword [esi + 0x54], eax
mov ebx, dword [esp + 0x14]
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x4214db
cmp dword [ebp + 0x88], 0
je 0x4216a1
cmp edi, dword [ebp + 0x84]
jbe 0x4216a1
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x4216a1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4214b1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f11c
mov edi, 0xfffffff4
jmp 0x42abbf
cmp ebx, 0x100
jae 0x421459
mov eax, dword [ebp + 0x38]
test byte [ebx + eax], 0x10
je 0x421459
mov eax, 1
jmp 0x42145b
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x421585
test dl, 0x20
jne 0x4214fb
movzx eax, byte [edi + 1]
and edx, 0x1f
jmp 0x42157d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x421515
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x42157d
and eax, 0x3f
test dl, 8
jne 0x421530
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42157d
test dl, 4
jne 0x421554
and edx, 3
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 0x42157d
and edx, 1
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
cmp dword [ebp + 0x50], 0
je 0x4215d8
cmp edx, 0x5f
jne 0x42159c
mov dword [esi + 0x4c], 1
jmp 0x4216ed
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x4215e9
cmp eax, 3
je 0x4215e9
xor eax, eax
jmp 0x4216ea
cmp edx, 0x100
jae 0x4215d1
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x4215d1
mov eax, 1
jmp 0x4216ea
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x74]
jne 0x421607
mov dword [esi + 0x54], 0
jmp 0x421685
cmp eax, dword [ebp + 0x84]
ja 0x421616
dec eax
mov dword [ebp + 0x84], eax
cmp dword [ebp + 0x50], 0
mov eax, dword [esi + 4]
je 0x421671
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x421631
mov dword [esi + 0x54], 1
jmp 0x421685
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x42166a
cmp eax, 3
je 0x42166a
xor eax, eax
jmp 0x421682
mov eax, 1
jmp 0x421682
movzx eax, byte [eax - 1]
mov ecx, dword [ebp + 0x38]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4216aa
cmp dword [ebp + 0x88], 0
je 0x4216a1
cmp eax, dword [ebp + 0x84]
jmp 0x42147d
mov dword [esi + 0x4c], 0
jmp 0x4216ed
cmp dword [ebp + 0x50], 0
je 0x4216da
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x4216c1
mov dword [esi + 0x4c], 1
jmp 0x4216ed
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
jmp 0x4215b0
movzx eax, byte [eax]
mov ecx, dword [ebp + 0x38]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
mov eax, dword [esi + 0x4c]
cmp cl, 5
jne 0x421708
xor ecx, ecx
cmp eax, dword [esi + 0x54]
sete cl
jmp 0x421710
xor ecx, ecx
cmp eax, dword [esi + 0x54]
setne cl
test ecx, ecx
je 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421732
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x42176c
mov edx, dword [esi + 4]
mov edi, dword [ebp + 0x78]
mov ebx, dword [esp + 0x14]
cmp edx, edi
jae 0x4217c0
push ebx
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x421793
jmp 0x4217c0
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 4]
cmp ecx, eax
ja case.0x41ff0c.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne case.0x41ff0c.13
mov ebx, dword [esp + 0x14]
cmp edx, 1
je 0x421793
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x4217c0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4217ad
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x421816
cmp dword [ebp + 0x88], 0
je 0x4217ed
cmp eax, dword [ebp + 0x84]
jbe 0x4217ed
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421807
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc eax
mov dword [esi + 4], eax
test ebx, ebx
je 0x421132
cmp eax, dword [ebp + 0x78]
jae 0x421132
jmp 0x421830
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x421132
lea eax, [ecx + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jb 0x421830
inc dword [esi + 8]
jmp 0x41fedf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4218a7
cmp dword [ebp + 0x88], ebx
je 0x42187e
cmp eax, dword [ebp + 0x84]
jbe 0x42187e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421898
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
inc eax
mov dword [esi + 4], eax
inc dword [esi + 8]
jmp 0x41fedf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x421908
cmp dword [ebp + 0x88], ebx
je 0x4218df
cmp edi, dword [ebp + 0x84]
jbe 0x4218df
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4218f9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x421a05
cmp edx, 0xc0
jb 0x421a05
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x421942
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421a02
test dl, 0x10
jne 0x421964
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 + 4], 2
jmp 0x421a05
mov ecx, dword [esi + 4]
test dl, 8
jne 0x421991
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 0x421a02
test dl, 4
jne 0x4219c7
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 0x421a02
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 + 4], eax
cmp edx, 0x100
jae 0x421132
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421a38
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x421a9c
cmp dword [ebp + 0x88], ebx
je 0x421a73
cmp edi, dword [ebp + 0x84]
jbe 0x421a73
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421a8d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x421b99
cmp edx, 0xc0
jb 0x421b99
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x421ad6
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421b96
test dl, 0x10
jne 0x421af8
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 + 4], 2
jmp 0x421b99
mov ecx, dword [esi + 4]
test dl, 8
jne 0x421b25
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 0x421b96
test dl, 4
jne 0x421b5b
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 0x421b96
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 + 4], eax
cmp edx, 0xff
ja 0x421bb2
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je 0x421bb2
inc dword [esi + 8]
jmp 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421bcc
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x421c30
cmp dword [ebp + 0x88], ebx
je 0x421c07
cmp edi, dword [ebp + 0x84]
jbe 0x421c07
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421c21
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x421d2d
cmp edx, 0xc0
jb 0x421d2d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x421c6a
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421d2a
test dl, 0x10
jne 0x421c8c
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 + 4], 2
jmp 0x421d2d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x421cb9
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 0x421d2a
test dl, 4
jne 0x421cef
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 0x421d2a
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 + 4], eax
cmp edx, 0x100
jae 0x421132
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421d60
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x421dc4
cmp dword [ebp + 0x88], ebx
je 0x421d9b
cmp edi, dword [ebp + 0x84]
jbe 0x421d9b
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421db5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x421ec1
cmp edx, 0xc0
jb 0x421ec1
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x421dfe
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421ebe
test dl, 0x10
jne 0x421e20
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 + 4], 2
jmp 0x421ec1
mov ecx, dword [esi + 4]
test dl, 8
jne 0x421e4d
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 0x421ebe
test dl, 4
jne 0x421e83
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 0x421ebe
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 + 4], eax
cmp edx, 0xff
ja 0x421eda
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je 0x421eda
inc dword [esi + 8]
jmp 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421ef4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x421f58
cmp dword [ebp + 0x88], ebx
je 0x421f2f
cmp edi, dword [ebp + 0x84]
jbe 0x421f2f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x421f49
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x422055
cmp edx, 0xc0
jb 0x422055
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x421f92
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422052
test dl, 0x10
jne 0x421fb4
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 + 4], 2
jmp 0x422055
mov ecx, dword [esi + 4]
test dl, 8
jne 0x421fe1
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 0x422052
test dl, 4
jne 0x422017
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 0x422052
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 + 4], eax
cmp edx, 0x100
jae 0x421132
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422088
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x4220ec
cmp dword [ebp + 0x88], ebx
je 0x4220c3
cmp edi, dword [ebp + 0x84]
jbe 0x4220c3
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4220dd
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x4221e9
cmp edx, 0xc0
jb 0x4221e9
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x422126
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4221e6
test dl, 0x10
jne 0x422148
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 + 4], 2
jmp 0x4221e9
mov ecx, dword [esi + 4]
test dl, 8
jne 0x422175
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 0x4221e6
test dl, 4
jne 0x4221ab
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 0x4221e6
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 + 4], eax
cmp edx, 0xff
ja 0x422202
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x422202
inc dword [esi + 8]
jmp 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42221c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x422280
cmp dword [ebp + 0x88], ebx
je 0x422257
cmp edi, dword [ebp + 0x84]
jbe 0x422257
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422271
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42237d
cmp edx, 0xc0
jb 0x42237d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4222ba
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42237a
test dl, 0x10
jne 0x4222dc
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 + 4], 2
jmp 0x42237d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x422309
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 0x42237a
test dl, 4
jne 0x42233f
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 0x42237a
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 + 4], eax
cmp edx, 0xd
ja 0x4223b5
je 0x422394
cmp edx, 0xa
je 0x421132
jbe 0x4223cd
cmp edx, 0xc
jmp 0x4223cb
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x421132
cmp byte [eax], 0xa
jne 0x421132
inc eax
mov dword [esi + 4], eax
inc dword [esi + 8]
jmp 0x41fedf
cmp edx, 0x85
je 0x4223f6
cmp edx, 0x2027
jbe 0x4223cd
cmp edx, 0x2029
jbe 0x4223f6
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4223e7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x64], 0
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42241a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42247e
cmp dword [ebp + 0x88], ebx
je 0x422455
cmp edi, dword [ebp + 0x84]
jbe 0x422455
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42246f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x42257b
cmp edx, 0xc0
jb 0x42257b
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4224b8
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422578
test dl, 0x10
jne 0x4224da
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 + 4], 2
jmp 0x42257b
mov ecx, dword [esi + 4]
test dl, 8
jne 0x422507
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 0x422578
test dl, 4
jne 0x42253d
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 0x422578
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 + 4], eax
cmp edx, 0x180e
ja 0x4225d6
je 0x42259d
cmp edx, 0xa0
ja 0x4225c6
je 0x42259d
cmp edx, 9
je 0x42259d
cmp edx, 0x20
jne 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4225b7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x1680
je 0x42259d
inc dword [esi + 8]
jmp 0x41fedf
cmp edx, 0x205f
ja 0x422604
je 0x42259d
cmp edx, 0x2000
jb 0x421132
cmp edx, 0x200a
jbe 0x42259d
cmp edx, 0x202f
je 0x42259d
inc dword [esi + 8]
jmp 0x41fedf
cmp edx, 0x3000
je 0x42259d
inc dword [esi + 8]
jmp 0x41fedf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x422669
cmp dword [ebp + 0x88], ebx
je 0x422640
cmp edi, dword [ebp + 0x84]
jbe 0x422640
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42265a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x422766
cmp edx, 0xc0
jb 0x422766
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4226a3
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422763
test dl, 0x10
jne 0x4226c5
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 + 4], 2
jmp 0x422766
mov ecx, dword [esi + 4]
test dl, 8
jne 0x4226f2
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 0x422763
test dl, 4
jne 0x422728
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 0x422763
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 + 4], eax
cmp edx, 0x180e
ja 0x422798
je 0x421132
cmp edx, 0xa0
ja 0x422790
je 0x421132
cmp edx, 9
je 0x421132
cmp edx, 0x20
jmp 0x4227c8
cmp edx, 0x1680
jmp 0x4227c8
cmp edx, 0x205f
ja 0x4227c2
je 0x421132
cmp edx, 0x2000
jb 0x4227ce
cmp edx, 0x200a
jbe 0x421132
cmp edx, 0x202f
jmp 0x4227c8
cmp edx, 0x3000
je 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4227e8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42284c
cmp dword [ebp + 0x88], ebx
je 0x422823
cmp edi, dword [ebp + 0x84]
jbe 0x422823
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42283d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x422949
cmp edx, 0xc0
jb 0x422949
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x422886
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422946
test dl, 0x10
jne 0x4228a8
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 + 4], 2
jmp 0x422949
mov ecx, dword [esi + 4]
test dl, 8
jne 0x4228d5
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 0x422946
test dl, 4
jne 0x42290b
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 0x422946
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 + 4], eax
cmp edx, 0x85
ja 0x422969
je 0x422978
cmp edx, 0xa
jb 0x421132
cmp edx, 0xd
jbe 0x422978
inc dword [esi + 8]
jmp 0x41fedf
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422992
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x4229f6
cmp dword [ebp + 0x88], ebx
je 0x4229cd
cmp edi, dword [ebp + 0x84]
jbe 0x4229cd
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4229e7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x422af3
cmp edx, 0xc0
jb 0x422af3
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x422a30
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422af0
test dl, 0x10
jne 0x422a52
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 + 4], 2
jmp 0x422af3
mov ecx, dword [esi + 4]
test dl, 8
jne 0x422a7f
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 0x422af0
test dl, 4
jne 0x422ab5
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 0x422af0
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 + 4], eax
cmp edx, 0x85
ja 0x422b38
je 0x421132
cmp edx, 0xa
jb 0x422b0f
cmp edx, 0xd
jbe 0x421132
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422b29
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x422b0f
inc dword [esi + 8]
jmp 0x41fedf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x422ba0
cmp dword [ebp + 0x88], ebx
je 0x422b77
cmp edi, dword [ebp + 0x84]
jbe 0x422b77
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422b91
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x422c9d
cmp edx, 0xc0
jb 0x422c9d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x422bda
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422c9a
test dl, 0x10
jne 0x422bfc
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 + 4], 2
jmp 0x422c9d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x422c29
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 0x422c9a
test dl, 4
jne 0x422c5f
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 0x422c9a
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
mov eax, dword [esi + 8]
movzx eax, byte [eax + 1]
movzx edi, word [ecx*2 + 0x48bbd0]
cmp eax, 8
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f3b4]
cmp dword [esi + 0x94], 0xf
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422cf9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov al, byte [edi*8 + 0x4888f1]
cmp al, 9
je 0x422d1f
cmp al, 5
je 0x422d1f
cmp al, 8
je 0x422d1f
xor ecx, ecx
jmp 0x422d24
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422d52
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 8]
xor edx, edx
movzx ecx, byte [edi*8 + 0x4888f1]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x488878]
setne dl
xor eax, eax
cmp dword [esi + 0x94], 0x10
sete al
cmp edx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422daa
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 8]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edi*8 + 0x4888f1]
setne cl
xor eax, eax
cmp dword [esi + 0x94], 0x10
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422df9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 8]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edi*8 + 0x4888f0]
setne cl
xor eax, eax
cmp dword [esi + 0x94], 0x10
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422e48
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx eax, byte [edi*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x422e74
cmp eax, 3
je 0x422e74
xor ecx, ecx
jmp 0x422e79
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422ea7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx eax, byte [edi*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x422ee0
cmp edx, 9
je 0x422ee0
cmp edx, 0xa
je 0x422ee0
cmp edx, 0xc
je 0x422ee0
cmp edx, 0xd
je 0x422ee0
xor ecx, ecx
jmp 0x422ee5
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422f13
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx eax, byte [edi*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x422f51
cmp edx, 9
je 0x422f51
cmp edx, 0xa
je 0x422f51
cmp edx, 0xb
je 0x422f51
cmp edx, 0xc
je 0x422f51
cmp edx, 0xd
je 0x422f51
xor ecx, ecx
jmp 0x422f56
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422f84
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx eax, byte [edi*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x422fb5
cmp eax, 3
je 0x422fb5
cmp edx, 0x5f
je 0x422fb5
xor ecx, ecx
jmp 0x422fba
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x94], 0xf
sete al
cmp ecx, eax
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x422fe8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423011
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f1af
mov edi, 0xfffffff2
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x423078
cmp dword [ebp + 0x88], ebx
je 0x42304f
cmp edi, dword [ebp + 0x84]
jbe 0x42304f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423069
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x14]
mov dword [esi + 4], edi
test ebx, ebx
je 0x423175
cmp edx, 0xc0
jb 0x423175
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4230b2
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423172
test dl, 0x10
jne 0x4230d4
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 + 4], 2
jmp 0x423175
mov ecx, dword [esi + 4]
test dl, 8
jne 0x423101
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 0x423172
test dl, 4
jne 0x423137
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 0x423172
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x4231cc
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4231bd
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x421132
jmp 0x4231e0
mov eax, dword [esi + 4]
mov ecx, 1
movzx edx, byte [eax]
test ebx, ebx
je 0x4232e1
cmp edx, 0xc0
jb 0x4232e1
test dl, 0x20
jne 0x423215
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4232d9
test dl, 0x10
jne 0x42323a
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x4232d9
test dl, 8
jne 0x423268
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x4232d9
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x4232a2
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x4232d9
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x421132
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4231e0
inc dword [esi + 8]
jmp 0x41fedf
xor eax, eax
cmp edx, 0x6e
sete al
mov dword [esp + 0x154], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x90], ecx
add dword [esi + 8], 3
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x10]
jge 0x423372
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x423372
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x42337c
mov eax, dword [ebp + 0x4c]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x80], eax
mov edx, dword [esi + 8]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x42339d
movzx eax, byte [eax + 0x42f3e0]
jmp dword [eax*4 + 0x42f3d8]
lea eax, [edx + 1]
mov dword [esi + 8], eax
lea ebx, [ecx - 0x62]
movsx eax, byte [ecx + 0x487f96]
and ebx, 1
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x487f9e]
mov dword [esp + 0x20], ebx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x423423
mov dword [esi + 0x84], 0x7fffffff
jmp 0x423423
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x20], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x88], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
jne 0x42341f
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
mov eax, dword [esi + 0x80]
test eax, eax
je 0x41fedf
jns 0x423440
cmp dword [esi + 0x88], 0
je 0x41fedf
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x423482
lea ecx, [ecx]
push dword [esp + 0x154]
mov ebx, dword [esi + 4]
push ebp
push dword [esi + 0x80]
push ebx
push dword [esi + 0x90]
call fcn.0042f820
add esp, 0x14
test eax, eax
js 0x4234a3
add eax, ebx
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x423450
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
cmp dword [esp + 0x20], 0
je 0x4234f9
mov dword [esi + 0x7c], eax
jmp 0x42b454
cmp dword [ebp + 0x88], 0
je 0x4234d0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4234d0
cmp eax, dword [ebp + 0x84]
jbe 0x4234d0
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4234ea
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edi, dword [esi + 0x88]
jmp 0x423510
cmp edi, dword [esi + 0x84]
jge 0x42b48c
push dword [esp + 0x154]
mov ebx, dword [esi + 4]
push ebp
push dword [esi + 0x80]
push ebx
push dword [esi + 0x90]
call fcn.0042f820
add esp, 0x14
test eax, eax
js 0x423548
add eax, ebx
inc edi
mov dword [esi + 4], eax
jmp 0x423510
cmp dword [ebp + 0x88], 0
je 0x42b48c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42b48c
cmp eax, dword [ebp + 0x84]
jbe 0x42b48c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42b48c
jmp 0x421209
push dword [esp + 0x154]
push ebp
push dword [esi + 0x80]
push dword [esi + 4]
push dword [esi + 0x90]
call fcn.0042f820
add esp, 0x14
mov dword [esi + 0x80], eax
test eax, eax
jns 0x423605
cmp dword [ebp + 0x88], 0
je 0x4235dc
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x4235dc
cmp eax, dword [ebp + 0x84]
jbe 0x4235dc
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4235f6
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
add dword [esi + 4], eax
jmp 0x41fedf
mov eax, dword [esi + 8]
inc eax
mov dword [esi + 0x24], eax
add dword [esi + 8], 0x21
mov edx, dword [esi + 8]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x423633
movzx eax, byte [eax + 0x42f3f0]
jmp dword [eax*4 + 0x42f3e8]
lea eax, [edx + 1]
mov dword [esi + 8], eax
lea ebx, [ecx - 0x62]
movsx eax, byte [ecx + 0x487f96]
and ebx, 1
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x487f9e]
mov dword [esp + 0x18], ebx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x4236cf
mov dword [esi + 0x84], 0x7fffffff
jmp 0x4236cf
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x18], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x88], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
jne 0x4236b5
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
jmp 0x4236cf
mov dword [esi + 0x84], 1
mov dword [esi + 0x88], 1
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x4238f3
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x42384b
lea esp, [esp]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4238a2
movzx ebx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
cmp ebx, 0xc0
jb 0x4237e9
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x42372a
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 1]
jmp 0x4237e6
test bl, 0x10
jne 0x42374b
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 2]
jmp 0x4237e6
test bl, 8
jne 0x423775
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x4237e6
test bl, 4
jne 0x4237ab
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 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 0x4237e6
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 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 + 4], eax
cmp ebx, 0xff
jbe 0x423823
cmp dword [esi + 0x94], 0x6a
jne 0x42383a
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423814
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [esi + 0x24]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x423879
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4236f0
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
mov edi, dword [esp + 0x18]
test edi, edi
je 0x4239b2
test ebx, ebx
jne 0x42ef82
mov dword [esi + 0x7c], eax
jmp 0x42b5c0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423893
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x4238ca
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4238ca
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4238e4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov ebx, 1
cmp dword [esi + 0x88], ebx
jl 0x423847
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x423961
movzx edi, byte [eax]
mov edx, 1
inc eax
mov ecx, edi
mov dword [esi + 4], eax
and ecx, 7
mov eax, dword [esi + 0x24]
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x423938
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x423904
jmp 0x423847
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423952
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x423989
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x423989
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4239a3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x20], eax
test ebx, ebx
je 0x423b40
lea ebx, [ebx]
cmp eax, dword [esi + 0x84]
jge 0x42c89c
mov edi, dword [esi + 4]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x423b08
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x423ac5
test bl, 0x20
jne 0x423a18
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x18], 2
jmp 0x423abd
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x423a3d
and ebx, 0xf
mov dword [esp + 0x18], 3
shl ebx, 6
or ebx, ecx
jmp 0x423abd
and eax, 0x3f
test bl, 8
jne 0x423a60
and ebx, 7
mov dword [esp + 0x18], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x423abd
test bl, 4
jne 0x423a8c
and ebx, 3
mov dword [esp + 0x18], 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 0x423abd
and ebx, 1
mov dword [esp + 0x18], 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
cmp ebx, 0xff
jbe 0x423ad6
cmp dword [esi + 0x94], 0x6a
jmp 0x423aeb
mov eax, dword [esi + 0x24]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x42c89c
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 4], eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
jmp 0x4239d0
cmp dword [ebp + 0x88], 0
je 0x42c89c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42c89c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42c89c
jmp 0x421209
cmp eax, dword [esi + 0x84]
jge 0x42b5f2
mov ebx, dword [esi + 4]
cmp ebx, dword [ebp + 0x78]
jae 0x423b83
movzx edi, byte [ebx]
mov edx, 1
mov eax, dword [esi + 0x24]
mov ecx, edi
and ecx, 7
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x42b5f2
lea eax, [ebx + 1]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x20]
inc eax
mov dword [esp + 0x20], eax
jmp 0x423b40
cmp dword [ebp + 0x88], 0
je 0x42b5f2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42b5f2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42b5f2
jmp 0x421209
mov eax, dword [esi + 8]
add eax, 3
mov dword [esi + 0x24], eax
mov edx, dword [esi + 8]
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 + 8], edx
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x423bf0
movzx eax, byte [eax + 0x42f400]
jmp dword [eax*4 + 0x42f3f8]
lea eax, [edx + 1]
mov dword [esi + 8], eax
lea ebx, [ecx - 0x62]
movsx eax, byte [ecx + 0x487f96]
and ebx, 1
mov dword [esi + 0x88], eax
movsx eax, byte [ecx + 0x487f9e]
mov dword [esi + 0x84], eax
test eax, eax
jne 0x423c8a
mov dword [esi + 0x84], 0x7fffffff
jmp 0x423c8a
movzx ecx, byte [edx + 1]
xor edi, edi
movzx eax, byte [edx + 2]
cmp bl, 0x69
mov ebx, edi
sete bl
shl ecx, 8
or ecx, eax
mov dword [esi + 0x88], ecx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
jne 0x423c6c
mov dword [esi + 0x84], 0x7fffffff
add dword [esi + 8], 5
jmp 0x423c8a
mov ebx, dword [esp + 0x18]
mov dword [esi + 0x84], 1
mov dword [esi + 0x88], 1
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x423dc9
jmp 0x423ca0
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x423e6d
movzx ecx, byte [edx]
inc edx
cmp dword [esp + 0x14], 0
mov dword [esi + 4], edx
je 0x423da4
cmp ecx, 0xc0
jb 0x423da4
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x423ce5
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x423da1
test cl, 0x10
jne 0x423d06
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 0x423da1
test cl, 8
jne 0x423d30
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 0x423da1
test cl, 4
jne 0x423d66
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 0x423da1
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 + 4], eax
push dword [esp + 0x14]
push dword [esi + 0x24]
push ecx
call fcn.00431020
add esp, 0xc
test eax, eax
je 0x423e44
inc edi
cmp edi, dword [esi + 0x88]
jle 0x423ca0
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
test ebx, ebx
jne 0x42ef90
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x20], eax
cmp eax, dword [esi + 0x84]
jge 0x423f9f
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423f7c
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x423f5b
cmp edx, 0xc0
jb 0x423f5b
test dl, 0x20
jne 0x423ebe
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x423f53
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423e5e
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x423e95
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x423e95
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x423eaf
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423edd
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x423f53
and eax, 0x3f
test dl, 8
jne 0x423efd
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423f53
test dl, 4
jne 0x423f26
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 0x423f53
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
push dword [esp + 0x14]
push dword [esi + 0x24]
push edx
call fcn.00431020
add esp, 0xc
test eax, eax
je 0x423f9f
mov eax, dword [esp + 0x20]
add dword [esi + 4], ebx
inc eax
jmp 0x423def
cmp dword [ebp + 0x88], 0
je 0x423f9f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x423f9f
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jg 0x421209
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x15
jmp 0x42bfa9
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x4241d1
mov dword [esi + 0x80], 1
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x424109
test al, 0x20
jne 0x42401e
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x78]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x78], ecx
inc dword [esi + 0x80]
jmp 0x424109
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x424052
mov eax, dword [esi + 0x78]
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 + 0x78], edx
add dword [esi + 0x80], 2
jmp 0x424109
test al, 8
jne 0x424088
mov eax, dword [esi + 0x78]
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 + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x424109
test al, 4
mov eax, dword [esi + 0x78]
jne 0x4240c7
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 + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x424109
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 + 0x78], edx
add dword [esi + 0x80], 5
mov edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 4]
sub eax, edx
mov ecx, dword [esi + 0x80]
cmp ecx, eax
jle 0x42416f
cmp dword [ebp + 0x88], 0
je 0x424146
cmp edx, edi
jb 0x424146
cmp edx, dword [ebp + 0x84]
jbe 0x424146
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424160
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test ecx, ecx
jle 0x42419d
lea eax, [ecx - 1]
mov dword [esi + 0x80], eax
mov eax, dword [esi + 8]
mov ecx, dword [esi + 4]
mov bl, byte [eax]
mov dl, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 4], eax
inc dword [esi + 8]
cmp bl, dl
jne 0x4241a8
mov ecx, dword [esi + 0x80]
test ecx, ecx
jg 0x424173
dec dword [esi + 0x80]
jmp 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4241c2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 4]
sub eax, edi
cmp eax, 1
jge 0x42422c
cmp dword [ebp + 0x88], 0
je 0x424203
cmp edi, dword [ebp + 0x84]
jbe 0x424203
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42421d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 8]
mov cl, byte [edi]
mov dl, byte [eax + 1]
lea eax, [edi + 1]
mov dword [esi + 4], eax
cmp dl, cl
je 0x4245df
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42425c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x4242c0
cmp dword [ebp + 0x88], ebx
je 0x424297
cmp edi, dword [ebp + 0x84]
jbe 0x424297
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4242b1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x42459b
mov dword [esi + 0x80], 1
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
cmp eax, 0xc0
jb 0x4243ff
test al, 0x20
jne 0x424314
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x78]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x78], ecx
inc dword [esi + 0x80]
jmp 0x4243ff
mov ecx, dword [esi + 8]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x424348
mov eax, dword [esi + 0x78]
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 + 0x78], edx
add dword [esi + 0x80], 2
jmp 0x4243ff
test al, 8
jne 0x42437e
mov eax, dword [esi + 0x78]
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 + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x4243ff
test al, 4
mov eax, dword [esi + 0x78]
jne 0x4243bd
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 + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x4243ff
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 + 0x78], edx
add dword [esi + 0x80], 5
mov edi, dword [esi + 0x78]
mov eax, dword [esi + 4]
cmp edi, 0x80
jae 0x42444f
mov edx, dword [ebp + 0x30]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
je 0x424444
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424435
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 8]
inc dword [esi + 4]
jmp 0x41fedf
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x42452f
test dl, 0x20
jne 0x42447f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42452c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4244a6
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x42452c
test dl, 8
jne 0x4244c9
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 0x42452c
test dl, 4
jne 0x4244f8
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 0x42452c
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 + 4], eax
mov eax, dword [esi + 0x80]
add dword [esi + 8], eax
mov edi, dword [esi + 0x78]
cmp edi, edx
je 0x41fedf
mov eax, edi
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edi
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
mov eax, dword [eax*8 + 0x4888f4]
add eax, edi
cmp edx, eax
je 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42458c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 8]
mov edx, dword [ebp + 0x30]
movzx ecx, byte [edi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
je 0x4245d9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4245ca
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
lea eax, [edi + 1]
mov dword [esi + 4], eax
add dword [esi + 8], 2
jmp 0x41fedf
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov dword [esi + 0x88], ecx
add dword [esi + 8], 3
jmp 0x424701
mov dword [esp + 0x24], 1
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x28
je 0x424642
mov dword [esp + 0x18], ebx
cmp al, 0x35
jne 0x42464a
mov dword [esp + 0x18], 1
lea eax, [ecx + 3]
mov dword [esi + 8], eax
jmp 0x424701
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x424701
mov dword [esi + 0x88], 1
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x424701
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 1
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x424701
mov ecx, dword [esi + 8]
xor eax, eax
cmp edx, 0x2e
setge al
movzx edx, byte [ecx]
dec eax
and eax, 0xfffffff3
add eax, 0x2e
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x18], ebx
movsx eax, byte [edx + 0x487ff8]
mov dword [esi + 0x88], eax
movsx eax, byte [edx + 0x488000]
mov dword [esi + 0x84], eax
test eax, eax
jne 0x424701
mov dword [esi + 0x84], 0x7fffffff
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x424ba6
mov dword [esi + 0x80], 1
mov eax, dword [esi + 8]
mov dword [esi + 0x20], eax
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
mov dword [esi + 0x78], ebx
cmp ebx, 0xc0
jb 0x424838
mov eax, dword [esi + 8]
test bl, 0x20
jne 0x424757
movzx eax, byte [eax + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or eax, ebx
mov dword [esi + 0x78], eax
inc dword [esi + 0x80]
jmp 0x424838
test bl, 0x10
jne 0x424789
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
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 + 0x78], ecx
add dword [esi + 0x80], 2
jmp 0x424838
mov ecx, dword [esi + 8]
movzx edx, byte [eax + 1]
and edx, 0x3f
movzx eax, byte [ecx + 2]
and eax, 0x3f
test bl, 8
jne 0x4247c7
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 + 0x78], edx
add dword [esi + 0x80], 3
jmp 0x424838
test bl, 4
jne 0x4247fd
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 + 0x78], edx
add dword [esi + 0x80], 4
jmp 0x424838
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 + 0x78], edx
add dword [esi + 0x80], 5
mov eax, dword [esi + 0x80]
add dword [esi + 8], eax
cmp dword [esi + 0x80], 1
jle 0x424bb4
cmp dword [esi + 0x94], 0x2e
jl 0x424897
mov edx, dword [esi + 0x78]
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
mov ecx, dword [eax*8 + 0x4888f4]
add ecx, edx
cmp ecx, edx
je 0x424897
lea eax, [esi + 0x68]
push eax
push ecx
call fcn.00430c90
add esp, 8
mov dword [esi + 0x64], eax
jmp 0x42489e
mov dword [esi + 0x64], 0
cmp dword [esi + 0x88], 1
mov dword [esp + 0x1c], 1
jl 0x4249c1
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x80]
sub eax, ebx
mov edi, dword [esi + 4]
mov dword [esp + 0x20], ecx
cmp edi, eax
ja 0x424935
mov edx, dword [esi + 0x20]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x4248e8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4248f1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4248d7
cmp edi, 0xfffffffc
je 0x4249a9
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x42492e
cmp edi, 0xfffffffd
je 0x4249a9
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x42492e
cmp edi, 0xfffffffe
je 0x4249a9
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x42492e
cmp edi, 0xffffffff
je 0x4249a9
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4249a9
mov edi, dword [esi + 4]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esi + 0x64]
test ebx, ebx
jle 0x424b13
sub ecx, ebx
cmp edi, ecx
ja 0x424b13
mov ecx, edi
lea edx, [esi + 0x68]
mov edi, ebx
sub edi, 4
jb 0x424967
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42496c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x424956
cmp edi, 0xfffffffc
je 0x4249a9
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x424b13
cmp edi, 0xfffffffd
je 0x4249a9
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x424b13
cmp edi, 0xfffffffe
je 0x4249a9
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x424b13
cmp edi, 0xffffffff
je 0x4249a9
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x424b13
mov edx, dword [esp + 0x1c]
add dword [esi + 4], ebx
inc edx
mov dword [esp + 0x1c], edx
cmp edx, dword [esi + 0x88]
jle 0x4248b3
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
mov edi, dword [esp + 0x18]
test edi, edi
jne 0x42efa2
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x424b96
jmp 0x424a00
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x80]
sub eax, ebx
mov edi, dword [esi + 4]
mov dword [esp + 0x20], ecx
cmp edi, eax
ja 0x424a82
mov edx, dword [esi + 0x20]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x424a35
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x424a3e
add ecx, 4
add edx, 4
sub edi, 4
jae 0x424a24
cmp edi, 0xfffffffc
je 0x424af6
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x424a7b
cmp edi, 0xfffffffd
je 0x424af6
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x424a7b
cmp edi, 0xfffffffe
je 0x424af6
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x424a7b
cmp edi, 0xffffffff
je 0x424af6
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x424af6
mov edi, dword [esi + 4]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esi + 0x64]
test ebx, ebx
jle 0x424b69
sub ecx, ebx
cmp edi, ecx
ja 0x424b69
mov ecx, edi
lea edx, [esi + 0x68]
mov edi, ebx
sub edi, 4
jb 0x424ab4
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x424ab9
add ecx, 4
add edx, 4
sub edi, 4
jae 0x424aa3
cmp edi, 0xfffffffc
je 0x424af6
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x424b69
cmp edi, 0xfffffffd
je 0x424af6
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x424b69
cmp edi, 0xfffffffe
je 0x424af6
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x424b69
cmp edi, 0xffffffff
je 0x424af6
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x424b69
mov edx, dword [esp + 0x1c]
add dword [esi + 4], ebx
inc edx
mov dword [esp + 0x1c], edx
cmp edx, dword [esi + 0x84]
jl 0x424a00
jmp 0x424b96
cmp dword [ebp + 0x88], 0
je 0x424b40
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x424b40
cmp eax, dword [ebp + 0x84]
jbe 0x424b40
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424b5a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x424b96
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x424b96
cmp eax, dword [ebp + 0x84]
jbe 0x424b96
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42cc9e
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
inc dword [esi + 8]
jmp 0x424bb8
mov ebx, dword [esp + 0x14]
cmp dword [esi + 0x94], 0x2e
jl 0x424d1f
mov ecx, dword [ebp + 0x34]
mov edx, 1
mov eax, dword [esi + 0x78]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x8c], eax
cmp dword [esi + 0x88], edx
jl 0x424c07
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x424c56
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x424bfa
cmp dword [esi + 0x8c], ecx
jne 0x424c2d
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x88]
jle 0x424be2
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
mov edi, dword [esp + 0x18]
test edi, edi
je 0x424ca7
mov dword [esi + 0x7c], eax
jmp 0x42b6f7
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424c47
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x424c7e
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x424c7e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424c98
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x424d0f
jmp 0x424cc0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x424ce7
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x424cd8
cmp dword [esi + 0x8c], ecx
jne 0x424d0f
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x424cc0
jmp 0x424d0f
cmp dword [ebp + 0x88], 0
je 0x424d0f
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x424d0f
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42b729
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x424d4d
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x424d9c
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
jne 0x424d73
inc edi
cmp edi, dword [esi + 0x88]
jle 0x424d30
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
mov edi, dword [esp + 0x18]
test edi, edi
je 0x424ded
mov dword [esi + 0x7c], eax
jmp 0x42b84b
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424d8d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x424dc4
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x424dc4
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424dde
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x424e4a
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x424e22
movzx eax, byte [ecx]
cmp dword [esi + 0x78], eax
jne 0x424e4a
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x424e01
jmp 0x424e4a
cmp dword [ebp + 0x88], 0
je 0x424e4a
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x424e4a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42b87d
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x424eaf
cmp dword [ebp + 0x88], ebx
je 0x424e86
cmp eax, dword [ebp + 0x84]
jbe 0x424e86
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424ea0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
inc dword [esi + 8]
mov eax, dword [esi + 4]
mov ebx, dword [esp + 0x14]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 4], edi
test ebx, ebx
je 0x424fa1
cmp edx, 0xc0
jb 0x424fa1
test dl, 0x20
jne 0x424ef1
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x424f9e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x424f18
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x424f9e
test dl, 8
jne 0x424f3b
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 0x424f9e
test dl, 4
jne 0x424f6a
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 0x424f9e
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 + 4], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
inc eax
cmp dword [esi + 0x94], 0x20
mov dword [esi + 8], eax
jne 0x424ff0
cmp ecx, edx
je 0x424fc7
mov eax, dword [ebp + 0x34]
movzx eax, byte [eax + ecx]
cmp eax, edx
jne 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x424fe1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp ecx, edx
jne 0x41fedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425012
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov dword [esi + 0x88], ecx
add dword [esi + 8], 3
jmp 0x425170
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov ecx, dword [esi + 8]
mov al, byte [ecx]
cmp al, 0x42
je 0x425080
cmp al, 0x4f
je 0x425080
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x18], ebx
mov dword [esi + 8], eax
jmp 0x425170
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x18], ebx
mov dword [esi + 8], eax
jmp 0x425170
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x425170
mov dword [esi + 0x88], 1
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x425170
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 1
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x425170
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
mov dword [esp + 0x24], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
add dword [esi + 8], 3
jmp 0x425170
mov ecx, dword [esi + 8]
xor eax, eax
cmp edx, 0x48
setl al
movzx edx, byte [ecx]
dec eax
and eax, 0xd
add eax, 0x3b
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x18], ebx
movsx eax, byte [edx + 0x487ff8]
mov dword [esi + 0x88], eax
movsx eax, byte [edx + 0x488000]
mov dword [esi + 0x84], eax
test eax, eax
jne 0x425170
mov dword [esi + 0x84], 0x7fffffff
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x78], eax
inc dword [esi + 8]
cmp dword [esi + 0x94], 0x48
jl 0x425622
cmp dword [esp + 0x14], 0
mov ecx, dword [ebp + 0x34]
mov eax, dword [esi + 0x78]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x8c], eax
je 0x42537b
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x4252d3
jmp 0x4251c0
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42532a
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x4252b9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4251fa
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4252b6
test cl, 0x10
jne 0x42521b
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 0x4252b6
test cl, 8
jne 0x425245
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 0x4252b6
test cl, 4
jne 0x42527b
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 0x4252b6
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 + 4], eax
cmp dword [esi + 0x78], ecx
je 0x425301
cmp dword [esi + 0x8c], ecx
je 0x425301
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4251c0
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
test ebx, ebx
mov ebx, dword [esp + 0x14]
je 0x425434
test ebx, ebx
jne 0x42efb0
mov dword [esi + 0x7c], eax
jmp 0x42b97e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42531b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x425352
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425352
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42536c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edx, 1
cmp dword [esi + 0x88], edx
jl 0x4252d3
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4253e3
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x4253ba
cmp dword [esi + 0x8c], ecx
je 0x4253ba
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x88]
jle 0x425390
jmp 0x4252d3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4253d4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x42540b
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42540b
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425425
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
test ebx, ebx
je 0x4255b5
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x4255a5
mov edi, dword [esi + 4]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x42557d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42555c
test dl, 0x20
jne 0x425492
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x42555c
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4254bc
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 0x42555c
test dl, 8
jne 0x4254e8
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 0x42555c
test dl, 4
jne 0x425520
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 0x42555c
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 dword [esi + 0x78], edx
je 0x4255a5
cmp dword [esi + 0x8c], edx
je 0x4255a5
add eax, edi
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x425454
jmp 0x4255a5
cmp dword [ebp + 0x88], 0
je 0x4255a5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4255a5
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42cef3
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x425612
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4255ea
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x425612
cmp dword [esi + 0x8c], ecx
je 0x425612
inc eax
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x4255c3
jmp 0x425612
cmp dword [ebp + 0x88], 0
je 0x425612
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425612
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42b9d9
mov ebx, dword [esp + 0x14]
test ebx, ebx
je 0x4257e8
mov ebx, 1
cmp dword [esi + 0x88], ebx
jl 0x42573c
nop
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jae 0x425797
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x42572a
test dl, 0x20
jne 0x42567a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x425727
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4256a1
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x425727
test dl, 8
jne 0x4256c4
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 0x425727
test dl, 4
jne 0x4256f3
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 0x425727
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 + 4], eax
cmp dword [esi + 0x78], edx
je 0x42576e
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x425640
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 0x88]
cmp eax, dword [esi + 0x84]
je 0x41fedf
mov edi, dword [esp + 0x18]
test edi, edi
je 0x42589c
test ebx, ebx
jne 0x42efbe
mov dword [esi + 0x7c], eax
jmp 0x42bad6
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425788
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x4257bf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4257bf
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4257d9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edi, 1
cmp dword [esi + 0x88], edi
jl 0x425740
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42584b
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
je 0x425822
inc edi
cmp edi, dword [esi + 0x88]
jle 0x425800
jmp 0x425740
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42583c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x425873
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425873
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42588d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
test ebx, ebx
je 0x425a19
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x425a09
lea esp, [esp]
mov edi, dword [esi + 4]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x4259e1
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4259c8
test dl, 0x20
jne 0x4258fe
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4259c8
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x425928
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 0x4259c8
test dl, 8
jne 0x425954
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 0x4259c8
test dl, 4
jne 0x42598c
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 0x4259c8
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 dword [esi + 0x78], edx
je 0x425a09
add eax, edi
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x4258c0
jmp 0x425a09
cmp dword [ebp + 0x88], 0
je 0x425a09
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425a09
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42d14c
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x425a70
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x425a48
movzx eax, byte [ecx]
cmp dword [esi + 0x78], eax
je 0x425a70
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x425a27
jmp 0x425a70
cmp dword [ebp + 0x88], 0
je 0x425a70
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425a70
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42bb08
mov eax, dword [esi + 8]
mov dword [esp + 0x18], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov dword [esi + 0x88], ecx
add dword [esi + 8], 3
jmp 0x425baa
mov dword [esi + 0x88], ebx
xor edx, edx
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
mov eax, dword [esi + 8]
cmp byte [eax], 0x5c
sete dl
add eax, 3
mov dword [esp + 0x18], edx
mov dword [esi + 8], eax
jmp 0x425baa
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x425baa
mov dword [esi + 0x88], 1
mov dword [esi + 0x84], 0x7fffffff
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x425baa
mov dword [esi + 0x88], ebx
mov dword [esi + 0x84], 1
inc dword [esi + 8]
mov dword [esp + 0x24], 1
jmp 0x425baa
mov dword [esi + 0x88], ebx
mov eax, dword [esi + 8]
mov dword [esp + 0x24], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x84], ecx
add dword [esi + 8], 3
jmp 0x425baa
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
movsx eax, byte [ecx + 0x487fa3]
lea edx, [ecx - 0x55]
mov dword [esi + 0x88], eax
and edx, 1
movsx eax, byte [ecx + 0x487fab]
mov dword [esp + 0x18], edx
mov dword [esi + 0x84], eax
test eax, eax
jne 0x425baa
mov dword [esi + 0x84], 0x7fffffff
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x74], eax
inc dword [esi + 8]
mov ecx, dword [esi + 0x74]
cmp ecx, 0x10
je 0x425bcc
cmp ecx, 0xf
je 0x425bcc
mov dword [esi + 0x58], 0xffffffff
jmp 0x425bef
xor eax, eax
cmp ecx, 0xf
sete al
mov dword [esi + 0x60], eax
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x58], eax
inc dword [esi + 8]
mov eax, dword [esi + 8]
movzx eax, byte [eax]
mov dword [esi + 0x5c], eax
inc dword [esi + 8]
mov ecx, dword [esi + 0x88]
test ecx, ecx
jle 0x42702e
mov eax, dword [esi + 0x58]
test eax, eax
js 0x426c43
cmp eax, 8
ja case.default.0x425c11
jmp dword [eax*4 + 0x42f408]
cmp dword [esi + 0x60], ebx
je 0x425c46
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425c37
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov ebx, dword [esp + 0x14]
mov edx, 1
cmp ecx, edx
jl 0x427032
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x425cac
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
test ebx, ebx
je 0x425c9e
cmp ecx, 0xc0
jb 0x425c9e
test cl, 0x20
jne 0x425c7a
inc eax
jmp 0x425c9b
test cl, 0x10
jne 0x425c84
add eax, 2
jmp 0x425c9b
test cl, 8
jne 0x425c8e
add eax, 3
jmp 0x425c9b
test cl, 4
jne 0x425c98
add eax, 4
jmp 0x425c9b
add eax, 5
mov dword [esi + 4], eax
inc edx
cmp edx, dword [esi + 0x88]
jle 0x425c57
jmp 0x427032
cmp dword [ebp + 0x88], 0
je 0x425cd4
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425cd4
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425cee
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edi, edi
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x425e8d
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x425e11
cmp ecx, 0xc0
jb 0x425e11
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x425d52
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x425e0e
test cl, 0x10
jne 0x425d73
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 0x425e0e
test cl, 8
jne 0x425d9d
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 0x425e0e
test cl, 4
jne 0x425dd3
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 0x425e0e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp eax, 9
je 0x425e48
cmp eax, 5
je 0x425e48
cmp eax, 8
je 0x425e48
xor eax, eax
jmp 0x425e4d
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x425e64
inc edi
cmp edi, dword [esi + 0x88]
jle 0x425d10
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425e7e
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x425eb5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x425eb5
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x425ecf
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x426064
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x425ff1
cmp ecx, 0xc0
jb 0x425ff1
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x425f32
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x425fee
test cl, 0x10
jne 0x425f53
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 0x425fee
test cl, 8
jne 0x425f7d
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 0x425fee
test cl, 4
jne 0x425fb3
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 0x425fee
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x42603b
inc edi
cmp edi, dword [esi + 0x88]
jle 0x425ef0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426055
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x42608c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42608c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4260a6
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
jmp 0x4260d0
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42623d
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x4261d1
cmp ecx, 0xc0
jb 0x4261d1
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x426112
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4261ce
test cl, 0x10
jne 0x426133
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 0x4261ce
test cl, 8
jne 0x42615d
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 0x4261ce
test cl, 4
jne 0x426193
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 0x4261ce
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x426214
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4260d0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42622e
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x426265
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x426265
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42627f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42640d
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x4263a1
cmp ecx, 0xc0
jb 0x4263a1
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4262e2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x42639e
test cl, 0x10
jne 0x426303
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 0x42639e
test cl, 8
jne 0x42632d
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 0x42639e
test cl, 4
jne 0x426363
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 0x42639e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f0]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x4263e4
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4262a0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4263fe
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x426435
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x426435
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42644f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4265ef
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x426571
cmp ecx, 0xc0
jb 0x426571
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4264b2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x42656e
test cl, 0x10
jne 0x4264d3
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 0x42656e
test cl, 8
jne 0x4264fd
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 0x42656e
test cl, 4
jne 0x426533
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 0x42656e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x4265aa
cmp eax, 3
je 0x4265aa
xor eax, eax
jmp 0x4265af
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4265c6
inc edi
cmp edi, dword [esi + 0x88]
jle 0x426470
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4265e0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x426617
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x426617
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426631
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4267df
movzx edx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
test ebx, ebx
je 0x426752
cmp edx, 0xc0
jb 0x426752
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x426693
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
jmp 0x42674f
test dl, 0x10
jne 0x4266b4
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
jmp 0x42674f
test dl, 8
jne 0x4266de
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x42674f
test dl, 4
jne 0x426714
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x42674f
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x42679a
cmp edx, 9
je 0x42679a
cmp edx, 0xa
je 0x42679a
cmp edx, 0xc
je 0x42679a
cmp edx, 0xd
je 0x42679a
xor eax, eax
jmp 0x42679f
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4267b6
inc edi
cmp edi, dword [esi + 0x88]
jle 0x426651
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4267d0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x426807
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x426807
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426821
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4269d4
movzx edx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
test ebx, ebx
je 0x426942
cmp edx, 0xc0
jb 0x426942
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x426883
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
jmp 0x42693f
test dl, 0x10
jne 0x4268a4
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
jmp 0x42693f
test dl, 8
jne 0x4268ce
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x42693f
test dl, 4
jne 0x426904
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x42693f
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x42698f
cmp edx, 9
je 0x42698f
cmp edx, 0xa
je 0x42698f
cmp edx, 0xb
je 0x42698f
cmp edx, 0xc
je 0x42698f
cmp edx, 0xd
je 0x42698f
xor eax, eax
jmp 0x426994
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x4269ab
inc edi
cmp edi, dword [esi + 0x88]
jle 0x426841
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4269c5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4269fc
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4269fc
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426a16
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, dword [esp + 0x14]
mov edi, 1
cmp ecx, edi
jl 0x427032
jmp 0x426a40
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x426bc6
movzx edx, byte [ecx]
inc ecx
mov dword [esi + 4], ecx
test ebx, ebx
je 0x426b41
cmp edx, 0xc0
jb 0x426b41
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x426a82
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
jmp 0x426b3e
test dl, 0x10
jne 0x426aa3
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
jmp 0x426b3e
test dl, 8
jne 0x426acd
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x426b3e
test dl, 4
jne 0x426b03
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 0x426b3e
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x426b81
cmp eax, 3
je 0x426b81
cmp edx, 0x5f
je 0x426b81
xor eax, eax
jmp 0x426b86
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x426b9d
inc edi
cmp edi, dword [esi + 0x88]
jle 0x426a40
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426bb7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x426bee
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x426bee
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426c08
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426c31
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f1af
mov edi, 0xfffffff2
jmp 0x42abbb
mov eax, dword [esi + 0x74]
mov ebx, dword [esp + 0x14]
cmp eax, 0x16
jne 0x426f6a
lea edi, [eax - 0x15]
cmp ecx, edi
jl 0x427032
mov edi, edi
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x426f19
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
test ebx, ebx
je 0x426d61
cmp ecx, 0xc0
jb 0x426d61
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x426ca2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x426d5e
test cl, 0x10
jne 0x426cc3
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 0x426d5e
test cl, 8
jne 0x426ced
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 0x426d5e
test cl, 4
jne 0x426d23
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 0x426d5e
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 + 4], eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
je 0x426ef0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x426ede
nop
mov eax, dword [esi + 4]
mov ecx, 1
movzx edx, byte [eax]
test ebx, ebx
je 0x426ea1
cmp edx, 0xc0
jb 0x426ea1
test dl, 0x20
jne 0x426dd5
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x426e99
test dl, 0x10
jne 0x426dfa
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x426e99
test dl, 8
jne 0x426e28
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x426e99
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x426e62
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x426e99
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x426ede
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x426da0
inc edi
cmp edi, dword [esi + 0x88]
jle 0x426c60
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426f0a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x426f41
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x426f41
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426f5b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
add eax, 0xfffffffa
test ebx, ebx
je 0x42803b
cmp eax, 0xf
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f42c]
mov ebx, 1
cmp ecx, ebx
jl 0x42702e
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x42706b
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x426fe7
push dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
je 0x427004
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x426fd8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x427004
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x427004
cmp edi, 1
je 0x426fbe
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x426fbe
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x427021
nop
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x427021
inc ecx
mov dword [esi + 4], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x427010
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x426f92
mov ebx, dword [esp + 0x14]
mov ecx, dword [esi + 0x88]
cmp ecx, dword [esi + 0x84]
je 0x41fedf
mov edi, dword [esp + 0x18]
test edi, edi
je 0x428a0c
mov eax, dword [esi + 0x58]
test eax, eax
js 0x4289f2
cmp eax, 8
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f46c]
cmp dword [ebp + 0x88], 0
je 0x427093
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427093
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4270ad
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, edx
jae 0x427108
inc eax
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4270fa
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4270fa
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4270e2
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4270d0
jmp 0x427032
cmp dword [ebp + 0x88], 0
je 0x427130
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427130
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42714a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 4]
sub eax, ecx
cmp edx, eax
jbe 0x428184
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427183
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42733a
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x427299
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4271da
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x427296
test cl, 0x10
jne 0x4271fb
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 0x427296
test cl, 8
jne 0x427225
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 0x427296
test cl, 4
jne 0x42725b
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 0x427296
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 + 4], eax
cmp ecx, 0xd
ja 0x4272bd
je 0x4272aa
cmp ecx, 0xa
je 0x4272d6
lea eax, [ecx - 0xb]
jmp 0x4272cb
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4272d6
cmp byte [eax], 0xa
jne 0x4272d6
inc eax
mov dword [esi + 4], eax
jmp 0x4272d6
cmp ecx, 0x85
je 0x4272d0
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x4272e8
cmp dword [ebp + 0x64], 0
jne 0x427311
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4271a0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427302
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42732b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x427362
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427362
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42737c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
jmp 0x4273a0
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427524
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x427499
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4273da
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x427496
test cl, 0x10
jne 0x4273fb
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 0x427496
test cl, 8
jne 0x427425
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 0x427496
test cl, 4
jne 0x42745b
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 0x427496
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 + 4], eax
cmp ecx, 0x180e
ja 0x4274bf
je 0x4274fb
cmp ecx, 0xa0
ja 0x4274b7
je 0x4274fb
cmp ecx, 9
je 0x4274fb
cmp ecx, 0x20
jmp 0x4274e7
cmp ecx, 0x1680
jmp 0x4274e7
cmp ecx, 0x205f
ja 0x4274e1
je 0x4274fb
cmp ecx, 0x2000
jb 0x4274e9
cmp ecx, 0x200a
jbe 0x4274fb
cmp ecx, 0x202f
jmp 0x4274e7
cmp ecx, 0x3000
je 0x4274fb
inc edi
cmp edi, dword [esi + 0x88]
jle 0x4273a0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427515
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x42754c
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42754c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427566
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427706
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x42767b
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4275bc
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x427678
test cl, 0x10
jne 0x4275dd
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 0x427678
test cl, 8
jne 0x427607
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 0x427678
test cl, 4
jne 0x42763d
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 0x427678
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 + 4], eax
cmp ecx, 0x180e
ja 0x4276a1
je 0x4276cb
cmp ecx, 0xa0
ja 0x427699
je 0x4276cb
cmp ecx, 9
je 0x4276cb
cmp ecx, 0x20
jmp 0x4276c9
cmp ecx, 0x1680
jmp 0x4276c9
cmp ecx, 0x205f
ja 0x4276c3
je 0x4276cb
cmp ecx, 0x2000
jb 0x4276dd
cmp ecx, 0x200a
jbe 0x4276cb
cmp ecx, 0x202f
jmp 0x4276c9
cmp ecx, 0x3000
jne 0x4276dd
inc edi
cmp edi, dword [esi + 0x88]
jle 0x427582
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4276f7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x42772e
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42772e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427748
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4278bc
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x42785d
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x42779e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x42785a
test cl, 0x10
jne 0x4277bf
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 0x42785a
test cl, 8
jne 0x4277e9
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 0x42785a
test cl, 4
jne 0x42781f
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 0x42785a
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 + 4], eax
cmp ecx, 0x85
ja 0x427871
je 0x427893
cmp ecx, 0xa
jb 0x427881
cmp ecx, 0xd
jmp 0x42787f
cmp ecx, 0x2028
jb 0x427881
cmp ecx, 0x2029
jbe 0x427893
inc edi
cmp edi, dword [esi + 0x88]
jle 0x427764
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4278ad
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4278e4
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4278e4
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4278fe
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
lea ebx, [ebx]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427a71
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x427a19
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x42795a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x427a16
test cl, 0x10
jne 0x42797b
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 0x427a16
test cl, 8
jne 0x4279a5
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 0x427a16
test cl, 4
jne 0x4279db
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 0x427a16
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 + 4], eax
cmp ecx, 0x85
ja 0x427a2b
je 0x427a36
lea eax, [ecx - 0xa]
cmp eax, 3
jmp 0x427a34
lea eax, [ecx - 0x2028]
cmp eax, 1
ja 0x427a48
inc edi
cmp edi, dword [esi + 0x88]
jle 0x427920
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427a62
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x427a99
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427a99
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427ab3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427c15
movzx ecx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ecx, 0xc0
jb 0x427bc9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x427b0a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x427bc6
test cl, 0x10
jne 0x427b2b
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 0x427bc6
test cl, 8
jne 0x427b55
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 0x427bc6
test cl, 4
jne 0x427b8b
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 0x427bc6
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 + 4], eax
cmp ecx, 0x80
jae 0x427bda
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x427bec
inc edi
cmp edi, dword [esi + 0x88]
jle 0x427ad0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427c06
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x427c3d
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427c3d
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427c57
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427cca
mov al, byte [edx]
cmp al, 0x80
jae 0x427ca1
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x427ca1
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x427c73
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427cbb
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x427cf2
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427cf2
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427d0c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, 1
cmp ecx, ebx
jl 0x42702e
mov edx, dword [ebp + 0x78]
jmp 0x427d30
mov edi, dword [esi + 4]
cmp edi, edx
jae 0x427da5
mov al, byte [edi]
cmp al, 0x80
jae 0x427d49
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne 0x427d7c
lea eax, [edi + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x427d6e
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x427d6e
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x427d56
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x427d30
jmp 0x42702e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427d96
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x427dcd
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427dcd
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427de7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427e5a
mov al, byte [edx]
cmp al, 0x80
jae 0x427e31
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x427e31
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x427e03
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427e4b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x427e82
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427e82
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427e9c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ebx, 1
cmp ecx, ebx
jl 0x42702e
mov edx, dword [ebp + 0x78]
jmp 0x427ec0
mov edi, dword [esi + 4]
cmp edi, edx
jae 0x427f35
mov al, byte [edi]
cmp al, 0x80
jae 0x427ed9
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne 0x427f0c
lea eax, [edi + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x427efe
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x427efe
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x427ee6
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x427ec0
jmp 0x42702e
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427f26
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
cmp dword [ebp + 0x88], 0
je 0x427f5d
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x427f5d
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427f77
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edi, 1
cmp ecx, edi
jl 0x427032
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x427fea
mov al, byte [edx]
cmp al, 0x80
jae 0x427fc1
movzx ecx, al
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x427fc1
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x427f93
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x427fdb
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428012
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428012
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42802c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp eax, 0xf
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f490]
mov ebx, 1
cmp ecx, ebx
jl 0x42702e
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x4280d9
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4280ab
push 0
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
je 0x4280c8
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42809c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4280c8
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x4280c8
cmp edi, 1
je 0x428082
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x428082
inc dword [esi + 4]
inc ebx
cmp ebx, dword [esi + 0x88]
jle 0x428058
jmp 0x42702e
cmp dword [ebp + 0x88], 0
je 0x428101
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428101
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42811b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 4]
sub eax, ecx
cmp edx, eax
jbe 0x428184
cmp dword [ebp + 0x88], 0
je 0x42815b
cmp edx, dword [ebp + 0x84]
jbe 0x42815b
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428175
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
lea eax, [ecx + edx]
mov dword [esi + 4], eax
jmp 0x427032
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 4]
sub eax, ecx
cmp edx, eax
jbe 0x428184
cmp dword [ebp + 0x88], 0
je 0x4281c0
cmp edx, dword [ebp + 0x84]
jbe 0x4281c0
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4281da
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edx, 1
cmp ecx, edx
jl 0x427032
jmp 0x428200
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x4282a1
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 4], ecx
cmp eax, 0x7b
ja case.0x428222.14
movzx eax, byte [eax + 0x42f4e0]
jmp dword [eax*4 + 0x42f4d0]
cmp ecx, dword [ebp + 0x78]
jae case.0x428222.10
cmp byte [ecx], 0xa
jne case.0x428222.10
lea eax, [ecx + 1]
mov dword [esi + 4], eax
jmp case.0x428222.10
cmp dword [ebp + 0x64], 0
jne 0x42824f
inc edx
cmp edx, dword [esi + 0x88]
jle 0x428200
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428269
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428292
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4282c9
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4282c9
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4282e3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edx, 1
cmp ecx, edx
jl 0x427032
nop
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x428358
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 9
je 0x42832f
cmp ecx, 0x20
je 0x42832f
cmp ecx, 0xa0
je 0x42832f
inc edx
cmp edx, dword [esi + 0x88]
jle 0x428300
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428349
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428380
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428380
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42839a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edx, 1
cmp ecx, edx
jl 0x427032
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42840e
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 9
je 0x4283d7
cmp ecx, 0x20
je 0x4283d7
cmp ecx, 0xa0
jne 0x4283e5
inc edx
cmp edx, dword [esi + 0x88]
jle 0x4283b6
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4283ff
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428436
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428436
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428450
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edx, 1
cmp ecx, edx
jl 0x427032
lea esp, [esp]
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x4284c8
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xa
jl 0x428491
cmp ecx, 0xd
jle 0x42849f
cmp ecx, 0x85
je 0x42849f
inc edx
cmp edx, dword [esi + 0x88]
jle 0x428470
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4284b9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4284f0
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4284f0
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42850a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edx, 1
cmp ecx, edx
jl 0x427032
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42857e
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp ecx, 0xa
jl 0x428555
cmp ecx, 0xd
jle 0x428547
cmp ecx, 0x85
jne 0x428555
inc edx
cmp edx, dword [esi + 0x88]
jle 0x428526
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42856f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4285a6
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4285a6
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4285c0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
lea esp, [esp]
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x428631
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x428608
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x4285e0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428622
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428659
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428659
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428673
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4286e1
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x4286b8
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x428690
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4286d2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428709
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428709
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428723
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x428791
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne 0x428768
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x428740
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428782
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4287b9
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4287b9
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4287d3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x428841
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x428818
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x4287f0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428832
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428869
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428869
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428883
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4288f1
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne 0x4288c8
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x4288a0
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4288e2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x428919
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x428919
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428933
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, 1
cmp ecx, edi
jl 0x427032
nop
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x4289a1
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x428978
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x88]
jle 0x428950
jmp 0x427032
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x428992
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x88], 0
je 0x4289c9
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x4289c9
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x4289e3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [esi + 0x74], 0x16
je 0x42f058
test ebx, ebx
jne 0x42f04a
mov dword [esi + 0x7c], ecx
jmp 0x42bc85
mov eax, dword [esi + 4]
mov dword [esi + 0x2c], eax
mov eax, dword [esi + 0x58]
test eax, eax
js 0x42965e
cmp eax, 8
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f55c]
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x429628
nop
mov edx, dword [esi + 4]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x428aab
movzx ecx, byte [edx]
test ebx, ebx
je 0x428a8e
cmp ecx, 0xc0
jb 0x428a8e
test cl, 0x20
jne 0x428a68
mov eax, 2
jmp 0x428a8e
test cl, 0x10
jne 0x428a74
mov eax, 3
jmp 0x428a8e
test cl, 8
jne 0x428a80
mov eax, 4
jmp 0x428a8e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x60], 0
jne 0x429628
add eax, edx
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x428a40
jmp 0x429628
cmp dword [ebp + 0x88], 0
je 0x429628
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x429628
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x429628
jmp 0x421497
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x429628
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428c31
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x428bd4
cmp edx, 0xc0
jb 0x428bd4
test dl, 0x20
jne 0x428b33
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x428bcc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x428b55
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x428bcc
and eax, 0x3f
test dl, 8
jne 0x428b75
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x428bcc
test dl, 4
jne 0x428b9e
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 0x428bcc
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
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp eax, 9
je 0x428c0b
cmp eax, 5
je 0x428c0b
cmp eax, 8
je 0x428c0b
xor eax, eax
jmp 0x428c10
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x428af2
jmp 0x429628
cmp dword [ebp + 0x88], 0
je 0x429628
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x429628
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jle 0x429628
jmp 0x421209
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429628
jmp 0x428c80
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428dbd
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x428d61
cmp edx, 0xc0
jb 0x428d61
test dl, 0x20
jne 0x428cc1
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x428d59
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x428ce3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x428d59
and eax, 0x3f
test dl, 8
jne 0x428d03
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x428d59
test dl, 4
jne 0x428d2c
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 0x428d59
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, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x428c80
jmp 0x429628
cmp dword [ebp + 0x88], 0
je 0x429628
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x429628
mov dword [ebp + 0x60], ebx
cmp dword [ebp + 0x88], ebx
jle 0x429628
jmp 0x421209
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429628
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428dbd
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x428ee0
cmp edx, 0xc0
jb 0x428ee0
test dl, 0x20
jne 0x428e40
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x428ed8
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x428e62
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x428ed8
and eax, 0x3f
test dl, 8
jne 0x428e82
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x428ed8
test dl, 4
jne 0x428eab
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 0x428ed8
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, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x428e03
jmp 0x429628
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429628
jmp 0x428f50
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428dbd
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x429031
cmp edx, 0xc0
jb 0x429031
test dl, 0x20
jne 0x428f91
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x429029
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x428fb3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x429029
and eax, 0x3f
test dl, 8
jne 0x428fd3
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x429029
test dl, 4
jne 0x428ffc
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 0x429029
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, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f0]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x428f50
jmp 0x429628
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x429628
jmp 0x4290a0
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428c31
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x429182
cmp edx, 0xc0
jb 0x429182
test dl, 0x20
jne 0x4290e1
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42917a
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x429103
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42917a
and eax, 0x3f
test dl, 8
jne 0x429123
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42917a
test dl, 4
jne 0x42914c
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 0x42917a
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
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x4291bb
cmp eax, 3
je 0x4291bb
xor eax, eax
jmp 0x4291c0
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x4290a0
jmp 0x429628
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429628
jmp 0x429200
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428dbd
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x4292e1
cmp edx, 0xc0
jb 0x4292e1
test dl, 0x20
jne 0x429241
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4292d9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x429263
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4292d9
and eax, 0x3f
test dl, 8
jne 0x429283
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4292d9
test dl, 4
jne 0x4292ac
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 0x4292d9
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, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x429329
cmp edx, 9
je 0x429329
cmp edx, 0xa
je 0x429329
cmp edx, 0xc
je 0x429329
cmp edx, 0xd
je 0x429329
xor eax, eax
jmp 0x42932e
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x429200
jmp 0x429628
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429628
lea ecx, [ecx]
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428dbd
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x429451
cmp edx, 0xc0
jb 0x429451
test dl, 0x20
jne 0x4293b1
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x429449
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4293d3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x429449
and eax, 0x3f
test dl, 8
jne 0x4293f3
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x429449
test dl, 4
jne 0x42941c
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 0x429449
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, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x42949e
cmp edx, 9
je 0x42949e
cmp edx, 0xa
je 0x42949e
cmp edx, 0xb
je 0x42949e
cmp edx, 0xc
je 0x42949e
cmp edx, 0xd
je 0x42949e
xor eax, eax
jmp 0x4294a3
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x429370
jmp 0x429628
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429628
mov edi, dword [esi + 4]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x428dbd
cmp dword [esp + 0x14], 0
movzx edx, byte [edi]
je 0x4295c3
cmp edx, 0xc0
jb 0x4295c3
test dl, 0x20
jne 0x429523
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4295bb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x429545
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4295bb
and eax, 0x3f
test dl, 8
jne 0x429565
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4295bb
test dl, 4
jne 0x42958e
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 0x4295bb
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, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x429603
cmp eax, 3
je 0x429603
cmp edx, 0x5f
je 0x429603
xor eax, eax
jmp 0x429608
mov eax, 1
cmp eax, dword [esi + 0x60]
je 0x429628
lea eax, [edi + ebx]
mov dword [esi + 4], eax
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x4294e2
cmp dword [esp + 0x24], 0
jne 0x41fedf
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x2c
jmp 0x42bfa9
mov eax, dword [esi + 0x74]
cmp eax, 0x16
jne 0x429964
mov eax, dword [esi + 0x88]
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jge 0x429932
mov ebx, dword [ebp + 0x78]
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, ebx
jae 0x42990b
mov ebx, dword [esp + 0x14]
movzx edx, byte [edi]
test ebx, ebx
je 0x429765
cmp edx, 0xc0
jb 0x429765
test dl, 0x20
jne 0x4296c4
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42975d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4296e6
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42975d
and eax, 0x3f
test dl, 8
jne 0x429706
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42975d
test dl, 4
jne 0x42972f
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 0x42975d
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
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
je 0x429932
add dword [esi + 4], ecx
mov ebx, dword [ebp + 0x78]
cmp dword [esi + 4], ebx
jae 0x4298f4
jmp 0x4297b0
cmp dword [esp + 0x14], 0
mov ecx, 1
mov eax, dword [esi + 4]
movzx edx, byte [eax]
je 0x4298b7
cmp edx, 0xc0
jb 0x4298b7
test dl, 0x20
jne 0x4297e8
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4298af
test dl, 0x10
jne 0x42980d
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x4298af
test dl, 8
jne 0x42983e
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x4298af
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x429878
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x4298af
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x4298f4
add dword [esi + 4], ecx
mov ebx, dword [ebp + 0x78]
cmp dword [esi + 4], ebx
jb 0x4297b0
mov eax, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x1c], eax
cmp eax, dword [esi + 0x84]
jl 0x429683
jmp 0x42992e
cmp dword [ebp + 0x88], 0
je 0x42992e
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42992e
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jg 0x421209
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x24], 0
jne 0x41fedf
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x2d
jmp 0x42bfa9
add eax, 0xfffffffa
test ebx, ebx
je 0x42a6ef
cmp eax, 0xf
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f580]
mov eax, dword [esi + 0x84]
mov ebx, dword [esi + 0x88]
cmp eax, 0x7fffffff
jge 0x429a56
cmp ebx, eax
jge 0x42a6db
mov edi, edi
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x429a21
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4299d2
push dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x42a6db
jmp 0x4299f7
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4299f7
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x4299f7
cmp edi, 1
je 0x42a6db
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x42a6db
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x429a13
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x429a13
inc ecx
mov dword [esi + 4], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x429a02
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x4299a0
jmp 0x42a6db
cmp dword [ebp + 0x88], 0
je 0x42a6db
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42a6db
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42a6db
jmp 0x421209
cmp ebx, eax
jge 0x42a6db
mov edi, edi
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x429a21
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x429a8e
push dword [esp + 0x14]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x42a6db
jmp 0x429ab3
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x429ab3
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x429ab3
cmp edi, 1
je 0x42a6db
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x42a6db
inc dword [esi + 4]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x429ad1
mov edi, edi
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x429ad1
inc ecx
mov dword [esi + 4], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x429ac0
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x429a60
jmp 0x42a6db
mov eax, dword [esi + 0x84]
cmp eax, 0x7fffffff
jge 0x429b6e
mov edi, dword [esi + 0x88]
cmp edi, eax
jge 0x42a6df
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 4]
cmp eax, edx
jae 0x429b39
inc eax
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x429b2b
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x429b2b
lea eax, [ecx + 1]
mov dword [esi + 4], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x429b13
inc edi
cmp edi, dword [esi + 0x84]
jl 0x429b01
jmp 0x42a6df
cmp dword [ebp + 0x88], 0
je 0x42a6df
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42a6df
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42a6df
jmp 0x421497
mov eax, dword [ebp + 0x78]
mov dword [esi + 4], eax
cmp dword [ebp + 0x88], 0
je 0x42a6df
jmp 0x429b49
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x84]
mov edi, dword [esi + 4]
sub eax, edi
sub ecx, dword [esi + 0x88]
cmp ecx, eax
jbe 0x429bb5
mov dword [esi + 4], edx
cmp dword [ebp + 0x88], 0
je 0x42a6df
cmp edx, dword [ebp + 0x84]
jmp 0x429b4f
lea eax, [edi + ecx]
mov dword [esi + 4], eax
jmp 0x42a6df
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
mov edi, dword [esi + 4]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x429a21
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x429cdd
test dl, 0x20
jne 0x429c10
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x429cdd
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x429c3a
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 0x429cdd
test dl, 8
jne 0x429c69
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 0x429cdd
test dl, 4
jne 0x429ca1
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 0x429cdd
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, 0xd
jne 0x429cf9
lea eax, [edi + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jae 0x42a6db
cmp byte [eax], 0xa
jne 0x429d33
inc eax
jmp 0x429d30
cmp edx, 0xa
je 0x429d2e
cmp dword [ebp + 0x64], 0
jne 0x42a6db
cmp edx, 0xb
je 0x429d2e
cmp edx, 0xc
je 0x429d2e
cmp edx, 0x85
je 0x429d2e
cmp edx, 0x2028
je 0x429d2e
cmp edx, 0x2029
jne 0x42a6db
add eax, edi
mov dword [esi + 4], eax
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x429bd2
jmp 0x42a6db
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
jmp 0x429d60
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x429e37
test dl, 0x20
jne 0x429d96
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x429e2f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x429db8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x429e2f
and eax, 0x3f
test dl, 8
jne 0x429dd8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x429e2f
test dl, 4
jne 0x429e01
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 0x429e2f
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 0x429e5d
je 0x429e8b
cmp edx, 0xa0
ja 0x429e55
je 0x429e8b
cmp edx, 9
je 0x429e8b
cmp edx, 0x20
jmp 0x429e85
cmp edx, 0x1680
jmp 0x429e85
cmp edx, 0x205f
ja 0x429e7f
je 0x429e8b
cmp edx, 0x2000
jb 0x429e87
cmp edx, 0x200a
jbe 0x429e8b
cmp edx, 0x202f
jmp 0x429e85
cmp edx, 0x3000
je 0x429e8b
xor edx, edx
jmp 0x429e90
mov edx, 1
xor eax, eax
cmp dword [esi + 0x74], 0x12
sete al
cmp edx, eax
je 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x429d60
jmp 0x42a6db
cmp dword [ebp + 0x88], 0
je 0x42a6db
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42a6db
mov dword [ebp + 0x60], ecx
cmp dword [ebp + 0x88], ecx
jle 0x42a6db
jmp 0x421209
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
jmp 0x429f00
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x429fd3
test dl, 0x20
jne 0x429f32
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x429fcb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x429f54
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x429fcb
and eax, 0x3f
test dl, 8
jne 0x429f74
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x429fcb
test dl, 4
jne 0x429f9d
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 0x429fcb
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 0x42a012
je 0x42a01d
cmp edx, 0xa
jb 0x429fe7
cmp edx, 0xd
jbe 0x42a01d
xor edx, edx
xor eax, eax
cmp dword [esi + 0x74], 0x14
sete al
cmp edx, eax
je 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x429f00
jmp 0x42a6db
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x429fe7
mov edx, 1
jmp 0x429fe9
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
jmp 0x42a040
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42a117
test dl, 0x20
jne 0x42a076
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42a10f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42a098
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42a10f
and eax, 0x3f
test dl, 8
jne 0x42a0b8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42a10f
test dl, 4
jne 0x42a0e1
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 0x42a10f
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 0x42a12c
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
jne 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x42a040
jmp 0x42a6db
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
jmp 0x42a160
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42a237
test dl, 0x20
jne 0x42a196
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42a22f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42a1b8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42a22f
and eax, 0x3f
test dl, 8
jne 0x42a1d8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42a22f
test dl, 4
jne 0x42a201
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 0x42a22f
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 0x42a6db
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x42a160
jmp 0x42a6db
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
lea ebx, [ebx]
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42a357
test dl, 0x20
jne 0x42a2b6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42a34f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42a2d8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42a34f
and eax, 0x3f
test dl, 8
jne 0x42a2f8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42a34f
test dl, 4
jne 0x42a321
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 0x42a34f
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 0x42a36c
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
jne 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x42a280
jmp 0x42a6db
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
jmp 0x42a3a0
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42a477
test dl, 0x20
jne 0x42a3d6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42a46f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42a3f8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42a46f
and eax, 0x3f
test dl, 8
jne 0x42a418
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42a46f
test dl, 4
jne 0x42a441
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 0x42a46f
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 0x42a6db
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x42a3a0
jmp 0x42a6db
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
lea ebx, [ebx]
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42a597
test dl, 0x20
jne 0x42a4f6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42a58f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42a518
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42a58f
and eax, 0x3f
test dl, 8
jne 0x42a538
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42a58f
test dl, 4
jne 0x42a561
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 0x42a58f
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 0x42a5ac
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
jne 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x42a4c0
jmp 0x42a6db
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a6db
jmp 0x42a5e0
mov edi, dword [esi + 4]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x429eb9
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42a6b7
test dl, 0x20
jne 0x42a616
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42a6af
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x42a638
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42a6af
and eax, 0x3f
test dl, 8
jne 0x42a658
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42a6af
test dl, 4
jne 0x42a681
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 0x42a6af
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 0x42a6db
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je 0x42a6db
lea eax, [edi + ecx]
inc ebx
mov dword [esi + 4], eax
cmp ebx, dword [esi + 0x84]
jl 0x42a5e0
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42d7be
cmp eax, 0xf
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f5c0]
mov ebx, dword [esi + 0x88]
cmp ebx, dword [esi + 0x84]
jge 0x42a736
lea ecx, [ecx]
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x42a775
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42a74a
push 0
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
je 0x42a767
mov ebx, dword [esp + 0x14]
cmp dword [esp + 0x24], 0
jne 0x41fedf
jmp 0x42bf7b
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x42a767
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x42a767
cmp edi, 1
je 0x42a736
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
je 0x42a736
inc dword [esi + 4]
inc ebx
cmp ebx, dword [esi + 0x84]
jl 0x42a710
jmp 0x42a736
cmp dword [ebp + 0x88], 0
je 0x42a736
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42a736
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42a736
jmp 0x421209
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x84]
mov edi, dword [esi + 4]
sub eax, edi
sub ecx, dword [esi + 0x88]
cmp ecx, eax
jbe 0x42a7ed
mov dword [esi + 4], edx
cmp dword [ebp + 0x88], 0
je 0x42a73a
cmp edx, dword [ebp + 0x84]
jbe 0x42a73a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42a73a
jmp 0x421497
lea eax, [edi + ecx]
mov dword [esi + 4], eax
jmp 0x42a73a
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x42a73a
lea ebx, [ebx]
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x42a86f
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x42a837
lea eax, [ecx + 1]
mov dword [esi + 4], eax
cmp eax, dword [ebp + 0x78]
jae 0x42a73a
cmp byte [eax], 0xa
jne 0x42a861
inc eax
jmp 0x42a85e
cmp eax, 0xa
je 0x42a85b
cmp dword [ebp + 0x64], 0
jne 0x42a73a
cmp eax, 0xb
je 0x42a85b
cmp eax, 0xc
je 0x42a85b
cmp eax, 0x85
jne 0x42a73a
lea eax, [ecx + 1]
mov dword [esi + 4], eax
inc edx
cmp edx, dword [esi + 0x84]
jl 0x42a810
jmp 0x42a73a
cmp dword [ebp + 0x88], 0
je 0x42a73a
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x84]
jbe 0x42a73a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jle 0x42a73a
jmp 0x421497
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x42a73a
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x42a86f
movzx eax, byte [ecx]
cmp eax, 9
je 0x42a73a
cmp eax, 0x20
je 0x42a73a
cmp eax, 0xa0
je 0x42a73a
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x42a8b6
jmp 0x42a73a
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x42a73a
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x42a86f
movzx eax, byte [ecx]
cmp eax, 9
je 0x42a928
cmp eax, 0x20
je 0x42a928
cmp eax, 0xa0
jne 0x42a73a
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x42a904
jmp 0x42a73a
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x42a73a
mov edi, edi
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x42a86f
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x42a73a
cmp eax, 0xb
je 0x42a73a
cmp eax, 0xc
je 0x42a73a
cmp eax, 0xd
je 0x42a73a
cmp eax, 0x85
je 0x42a73a
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x42a950
jmp 0x42a73a
mov edx, dword [esi + 0x88]
cmp edx, dword [esi + 0x84]
jge 0x42a73a
mov ecx, dword [esi + 4]
cmp ecx, dword [ebp + 0x78]
jae 0x42a86f
movzx eax, byte [ecx]
cmp eax, 0xa
je 0x42a9e2
cmp eax, 0xb
je 0x42a9e2
cmp eax, 0xc
je 0x42a9e2
cmp eax, 0xd
je 0x42a9e2
cmp eax, 0x85
jne 0x42a73a
lea eax, [ecx + 1]
inc edx
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x84]
jl 0x42a9b4
jmp 0x42a73a
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x42a73a
jmp 0x42aa10
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42a86f
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne 0x42a73a
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x42aa10
jmp 0x42a73a
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x42a73a
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42a86f
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je 0x42a73a
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x42aa52
jmp 0x42a73a
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x42a73a
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42a86f
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne 0x42a73a
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x42aa94
jmp 0x42a73a
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x42a73a
jmp 0x42aae0
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42a86f
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je 0x42a73a
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x42aae0
jmp 0x42a73a
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x42a73a
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42a86f
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne 0x42a73a
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x42ab22
jmp 0x42a73a
mov edi, dword [esi + 0x88]
cmp edi, dword [esi + 0x84]
jge 0x42a73a
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jae 0x42a86f
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je 0x42a73a
lea eax, [edx + 1]
inc edi
mov dword [esi + 4], eax
cmp edi, dword [esi + 0x84]
jl 0x42ab64
jmp 0x42a73a
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42abae
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f1bf
mov edi, 0xfffffffb
mov ebx, dword [esp + 0x14]
mov eax, dword [esi + 0x128]
dec eax
cmp eax, 0x41
ja case.default.0x42abcf
jmp dword [eax*4 + 0x42f600]
cmp edi, 0xfffffc1c
je 0x42ac93
cmp edi, 0xfffffc20
jne 0x42ac1e
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x42abcf.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42ac1a
cmp byte [ecx], 0x71
jne case.0x42abcf.49
xor edi, edi
jmp 0x42ac26
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x98]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x42ac93
cmp dword [esi + 0x94], 0x82
jl 0x42ac6c
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 1
jmp 0x4200a2
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x9c]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa0]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
lea ecx, [esp + 0x28]
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ace7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
jne 0x42abbf
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x1b0
ret
cmp edi, 0xfffffc20
jne 0x42ad81
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x42abcf.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42ad30
cmp byte [ecx], 0x71
jne case.0x42abcf.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je case.0x41ff0c.123
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ad72
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
je 0x42ad30
cmp edi, 0xfffffc1c
jne case.0x42abcf.49
mov edx, dword [esi + 8]
mov al, byte [edx]
cmp al, 0x7b
je 0x42adc3
cmp al, 0x71
jne 0x42adb4
mov edi, edi
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x71
je 0x42ada0
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
jmp case.0x42abcf.49
mov eax, dword [esi + 0x94]
cmp eax, 0x82
jge 0x42ae1a
cmp eax, 0x7b
je 0x42ae1a
cmp dword [ebp + 0x68], 0
jne 0x42ae24
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x71
je 0x42ae24
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4887d8]
add eax, ecx
mov dword [esi + 8], eax
jmp 0x41fe40
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
push 0x12c
mov dword [esi + 0x24], eax
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 2
jmp 0x4200a2
cmp edi, 1
jne 0x42aea9
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x10]
jle 0x42ae67
mov dword [esi + 0x10], eax
mov dword [esi + 0x50], 1
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
add edx, 3
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
jne 0x42aec6
jmp 0x42ae90
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x42ae90
jmp 0x42aec6
test edi, edi
je 0x42aeb9
cmp edi, 0xfffffc20
jne case.0x42abcf.49
mov dword [esi + 0x50], 0
mov eax, dword [esi + 0x70]
add dword [esi + 8], eax
cmp dword [esi + 0x50], 0
jne 0x42aed8
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x420797
cmp dword [esi + 0x94], 0x86
jne 0x42c586
push 0x12c
mov dword [ebp + 0x98], 2
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x31
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x42bfb2
cmp edi, 1
je 0x42af8d
cmp edi, 0xfffffc19
je 0x42af8d
test edi, edi
je 0x42af42
cmp edi, 0xfffffc20
jne case.0x42abcf.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x42af93
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 4
jmp 0x42b08f
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x72
jne 0x42afc4
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42afb5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [esi + 0x50], 0
jne 0x42b0e5
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x42afd1
lea eax, [edx + 3]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
jmp 0x41fedf
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
cmp edi, 1
je 0x42b111
cmp edi, 0xfffffc19
je 0x42b111
cmp edi, 0xfffffc1e
je 0x42b0c1
cmp edi, 0xfffffc1d
je 0x42b0c1
cmp edi, 0xfffffc1a
je 0x42b0c1
test edi, edi
je 0x42b04e
cmp edi, 0xfffffc20
jne case.0x42abcf.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov edx, dword [esi + 8]
cmp byte [edx], 0x71
jne 0x42b0db
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 5
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
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 dword [ecx + 0x14], 0
mov eax, dword [esi + 0x18]
inc eax
mov dword [ecx + 0x18], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x41fe1f
mov edx, dword [esi + 8]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x42b0c4
cmp dword [esi + 0x50], 0
je 0x42b327
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b0ff
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f12c
mov edi, 1
jmp 0x42abbf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b12b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 0x44]
shl eax, 2
push eax
push dword [esi + 0x40]
push dword [ebp + 0xc]
call fcn.00415cdb
mov eax, dword [esi + 0x38]
lea ebx, [esi + 0x38]
add esp, 0xc
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x42ef4c
cmp edi, 0xfffffc19
je 0x42ef4c
test edi, edi
je 0x42b19c
cmp edi, 0xfffffc20
je 0x42b19c
mov ecx, dword [esi + 0x40]
lea eax, [esi + 0xa8]
cmp ecx, eax
je 0x4202e5
push ecx
call dword [0x2668e30]
add esp, 4
jmp 0x4202e5
mov dword [ebp + 0xa4], ebx
mov edx, dword [esi + 0x1c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0x1c], eax
cmp byte [eax], 0x71
jne 0x42b1fc
cmp dword [esi + 0x50], 0
je 0x42b1cc
mov dword [ebp + 0x98], 2
push 0x12c
call dword [0x2668e34]
mov edx, eax
add esp, 4
test edx, edx
je 0x41ff3d
mov dword [esi + 0x128], 6
mov eax, dword [esi + 4]
mov dword [edx + 4], eax
mov ecx, dword [esi + 0x1c]
jmp 0x4200ab
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
lea eax, [esi + 0xa8]
mov ecx, dword [esi + 0x40]
cmp ecx, eax
je 0x42b21b
push ecx
call dword [0x2668e30]
add esp, 4
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b235
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x30]
mov al, byte [eax]
cmp al, 0x7b
jne 0x42b285
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 8
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x42bfb2
cmp al, 0x82
jb 0x42c573
push 0x12c
mov dword [ebp + 0x98], 2
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x32
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x42bfb2
lea ecx, [esp + 0x28]
test edi, edi
jne 0x42acd1
mov eax, dword [esi + 0x30]
mov dword [ebp + 0xb4], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b2f2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f13c
mov edi, 0xfffffc1c
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
mov edx, dword [esi + 0x28]
nop
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x28], edx
cmp byte [edx], 0x71
je 0x42b310
lea eax, [edx + 3]
mov dword [esi + 8], eax
jmp 0x41fedf
test edi, edi
je 0x421132
jmp case.0x42abcf.49
cmp edi, 0xfffffc1c
jne 0x42b352
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x30]
jmp 0x42b354
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x30]
cmp byte [eax], 0x7b
jne 0x42c586
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 9
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x42bfb2
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42b3d5
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b3c6
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
push dword [esp + 0x154]
mov edi, dword [esi + 4]
push ebp
push dword [esi + 0x80]
push edi
push dword [esi + 0x90]
call fcn.0042f820
add esp, 0x14
test eax, eax
jns 0x42b44c
cmp dword [ebp + 0x88], 0
je 0x42b423
cmp edi, dword [ebp + 0x78]
jb 0x42b423
cmp edi, dword [ebp + 0x84]
jbe 0x42b423
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b43d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
add eax, edi
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0xe
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x80]
sub dword [esi + 4], eax
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42b4bb
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0xf
jmp 0x42bfa9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b4d5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42b520
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b511
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42b576
cmp dword [ebp + 0x88], 0
je 0x42b54d
cmp eax, dword [ebp + 0x84]
jbe 0x42b54d
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b567
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
mov edi, ecx
mov edx, dword [esi + 0x24]
and ecx, 7
shr edi, 3
mov eax, 1
shl eax, cl
test byte [edi + edx], al
jne 0x42b5bd
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b5ae
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x11
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42c85a
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x13
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42b661
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b652
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42b6b7
cmp dword [ebp + 0x88], 0
je 0x42b68e
cmp eax, dword [ebp + 0x84]
jbe 0x42b68e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b6a8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x42b6f0
cmp dword [esi + 0x8c], ecx
je 0x42b6f0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b6e1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc eax
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x18
jmp 0x42bfa9
dec dword [esi + 4]
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42b758
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x19
jmp 0x42bfa9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b772
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42b7bd
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b7ae
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42b813
cmp dword [ebp + 0x88], 0
je 0x42b7ea
cmp eax, dword [ebp + 0x84]
jbe 0x42b7ea
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b804
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
je 0x42b848
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b839
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x1a
jmp 0x42bfa9
dec dword [esi + 4]
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42b8ac
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x1b
jmp 0x42bfa9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b8c6
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42b911
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b902
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42b967
cmp dword [ebp + 0x88], 0
je 0x42b93e
cmp eax, dword [ebp + 0x84]
jbe 0x42b93e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b958
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ecx, byte [eax]
cmp dword [esi + 0x78], ecx
je 0x42b9a5
cmp dword [esi + 0x8c], ecx
je 0x42b9a5
inc eax
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x1d
jmp 0x42bfa9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42b9bf
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42ceb6
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x1f
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42ba48
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ba39
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42ba9e
cmp dword [ebp + 0x88], 0
je 0x42ba75
cmp eax, dword [ebp + 0x84]
jbe 0x42ba75
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ba8f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [eax]
inc eax
mov dword [esi + 4], eax
cmp dword [esi + 0x78], edx
jne 0x42bad3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bac4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x21
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42d10e
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x23
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42bb77
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bb68
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x42bbcf
cmp dword [ebp + 0x88], 0
je 0x42bba6
cmp ecx, dword [ebp + 0x84]
jbe 0x42bba6
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bbc0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [esi + 0x74], 0xc
jne 0x42bbf0
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42bc12
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x42bc2f
mov eax, dword [esi + 4]
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 4], edx
mov eax, dword [esi + 0x74]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f708]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x42bbf0
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x42bbf0
cmp edi, 1
je 0x42bc2f
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x42bbf0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bc49
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x42bc6b.14
movzx eax, byte [ecx + 0x42f758]
jmp dword [eax*4 + 0x42f748]
cmp edx, dword [ebp + 0x78]
jae case.0x42bc0b.12
cmp byte [edx], 0xa
jne case.0x42bc0b.12
lea eax, [edx + 1]
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x2b
jmp 0x42bfa9
cmp dword [ebp + 0x64], 0
je case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bccc
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bcf5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp ecx, 9
je 0x42bd1a
cmp ecx, 0x20
je 0x42bd1a
cmp ecx, 0xa0
jne case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bd34
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp ecx, 9
je case.0x42bc0b.12
cmp ecx, 0x20
je case.0x42bc0b.12
cmp ecx, 0xa0
je case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bd7b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp ecx, 0xa
jb case.0x42bc0b.12
cmp ecx, 0xd
jbe 0x42bda4
cmp ecx, 0x85
jne case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bdbe
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp ecx, 0xa
jb 0x42bde7
cmp ecx, 0xd
jbe case.0x42bc0b.12
cmp ecx, 0x85
je case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42be01
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
je case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42be37
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 4
jne case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42be6d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
je case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bea3
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 1
jne case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bed9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
je case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bf0f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [ebp + 0x38]
test byte [ecx + eax], 0x10
jne case.0x42bc0b.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42bf45
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
dec dword [esi + 4]
cmp dword [esi + 0x74], 0x11
mov eax, dword [esi + 4]
jne 0x42bf7b
cmp eax, dword [esi + 0x2c]
jbe 0x42bf7b
cmp byte [eax], 0xa
jne 0x42bf7b
cmp byte [eax - 1], 0xd
jne 0x42bf7b
dec dword [esi + 4]
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jb 0x42e51c
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x2f
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
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]
inc eax
mov dword [ecx + 0x18], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x41fe1f
cmp edi, 0xfffffc1b
jne 0x42c006
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x70]
add eax, dword [ebp + 0x70]
mov dword [esi + 8], eax
mov dword [esi + 0x54], 1
jmp 0x420d1c
cmp edi, 0xfffffc20
jne 0x42c03a
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x42abcf.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42c042
cmp byte [ecx], 0x71
jmp 0x42c03c
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x420d1c
cmp dword [esi + 0x54], 0
jne 0x42ef77
cmp dword [esi + 0x4c], 0
jne 0x42ef77
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c08f
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
je 0x42c0c6
cmp edi, 0xfffffc1d
je 0x42c0c6
cmp edi, 0xfffffc1e
je 0x42c0c6
cmp edi, 0xfffffc1f
je 0x42c0c6
cmp edi, 0xfffffc20
jne case.0x42abcf.49
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c0e0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f15c
mov edi, 0xfffffc1a
jmp 0x42abbf
test edi, edi
je 0x42c180
cmp edi, 0xfffffc1d
je 0x42c180
cmp edi, 0xfffffc20
je 0x42c180
jmp case.0x42abcf.49
cmp edi, 1
je 0x42c124
cmp edi, 0xfffffc19
jne 0x42c13e
cmp dword [ebp + 0xac], 0
jne 0x42c13e
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
jmp case.0x42abcf.49
cmp edi, 0xfffffc1f
jne case.0x42abcf.49
mov eax, dword [esi + 8]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x42c173
test dl, dl
je 0x42c16f
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x42c173
add eax, 2
add ecx, 2
test dl, dl
jne 0x42c153
xor eax, eax
jmp 0x42c178
sbb eax, eax
or eax, 1
test eax, eax
jne case.0x42abcf.49
mov eax, dword [esi + 4]
lea ecx, [esp + 0x28]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c1a0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f17c
mov edi, 0xfffffc1e
jmp 0x42abbf
cmp edi, 1
je 0x42c1bf
cmp edi, 0xfffffc19
jne case.0x42abcf.51
cmp dword [ebp + 0xac], 0
jne case.0x42abcf.51
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
je 0x42c1e4
cmp edi, 0xfffffc20
jne case.0x42abcf.49
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c1fe
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f14c
mov edi, 0xfffffc1d
jmp 0x42abbf
test edi, edi
je 0x42c228
cmp edi, 0xfffffc1d
je 0x42c228
cmp edi, 0xfffffc20
jne case.0x42abcf.49
mov eax, dword [esi + 8]
lea ecx, [esp + 0x28]
add eax, 2
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c24b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f18c
mov edi, 0xfffffc1f
jmp 0x42abbf
cmp edi, 1
je 0x42c26a
cmp edi, 0xfffffc19
jne case.0x42abcf.54
cmp dword [ebp + 0xac], 0
jne case.0x42abcf.54
mov eax, dword [esi + 8]
add eax, 2
mov dword [ebp + 0xac], eax
lea ecx, [esp + 0x28]
test edi, edi
jne 0x42acd1
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov eax, esi
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c2a7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f16c
mov edi, 0xfffffc20
jmp 0x42abbf
cmp edi, 0xfffffc1b
jne 0x42c2f4
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov eax, dword [esi + 0x70]
add eax, dword [ebp + 0x70]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x98], eax
mov dword [esi + 0x54], 1
jmp 0x420cbb
cmp edi, 0xfffffc20
jne 0x42c328
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x42abcf.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42c330
cmp byte [ecx], 0x71
jmp 0x42c32a
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x98]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x420cbb
cmp dword [esi + 0x54], 0
jne 0x42c39b
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0x9c]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x90]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa0]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x8c]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
cmp dword [esi + 0x4c], 0
jne 0x420797
cmp dword [esi + 0x54], 0
jne 0x420797
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c3c9
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edi, 1
jne 0x42c421
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
mov edx, dword [esi + 8]
mov al, byte [edx]
cmp al, 0x7c
je 0x42c4c0
cmp al, 0x71
je 0x42c4c0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c412
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edi, 0xfffffc20
jne 0x42c455
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 8]
mov dword [esi + 0x28], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x42abcf.49
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
je 0x42c45d
cmp byte [ecx], 0x71
jmp 0x42c457
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 8]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 8], ecx
mov eax, dword [esi + 0x24]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 8]
cmp byte [eax], 0x71
jne 0x42c3e3
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x40
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x42bfb2
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 8], edx
cmp byte [edx], 0x71
je 0x42c4c0
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x10], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 4], ecx
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, 0x72
je 0x420797
cmp ecx, dword [esi + 0x34]
je 0x420797
push 0x12c
cmp al, 0x74
jne 0x42c536
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x41
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
add eax, 3
jmp 0x42bfb2
mov dword [ebp + 0x98], 2
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x42
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 0x30]
jmp 0x42bfb2
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x30]
mov dword [esi + 8], eax
jmp 0x41fe40
test edi, edi
jne case.0x42abcf.49
add dword [esi + 8], 3
jmp 0x41fe40
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x42c5ce
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c5bf
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test ebx, ebx
je 0x423fa3
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x423fa3
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x42c5e2
jmp 0x423fa3
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42c62f
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c620
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edx, dword [esi + 4]
cmp edx, dword [ebp + 0x78]
jb 0x42c685
cmp dword [ebp + 0x88], 0
je 0x42c65c
cmp edx, dword [ebp + 0x84]
jbe 0x42c65c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c676
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ebx, byte [edx]
inc edx
mov dword [esi + 4], edx
cmp ebx, 0xc0
jb 0x42c779
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x42c6b3
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x42c776
test bl, 0x10
jne 0x42c6d5
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add dword [esi + 4], 2
jmp 0x42c779
mov ecx, dword [esi + 4]
test bl, 8
jne 0x42c705
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x42c776
test bl, 4
jne 0x42c73b
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 [ecx + 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 0x42c776
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 [ecx + 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 + 4], eax
cmp ebx, 0xff
jbe 0x42c7b7
cmp dword [esi + 0x94], 0x6a
jne 0x42c7f9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c7a8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov edx, dword [esi + 0x24]
mov edi, ebx
and ebx, 7
shr edi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [edi + edx], al
jne 0x42c7f9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c7ea
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
inc dword [esi + 0x7c]
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42f0b0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c832
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0df
mov edi, 0xfffffffa
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x42c883
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c874
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42c89c
jmp 0x42c890
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x42c890
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x12
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42c8ff
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c8f0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42c955
cmp dword [ebp + 0x88], 0
je 0x42c92c
cmp edi, dword [ebp + 0x84]
jbe 0x42c92c
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42c946
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ca51
cmp edx, 0xc0
jb 0x42ca51
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42c98b
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ca4e
test dl, 0x10
jne 0x42c9ad
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 + 4], 2
jmp 0x42ca51
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42c9dd
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 0x42ca4e
test dl, 4
jne 0x42ca13
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 0x42ca4e
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 + 4], eax
push ebx
push dword [esi + 0x24]
push edx
call fcn.00431020
add esp, 0xc
test eax, eax
jne 0x42ca8b
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ca7c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x14
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42caf1
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cae2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x80]
sub eax, edi
mov ebx, dword [esi + 4]
cmp ebx, eax
ja 0x42cb64
mov edx, dword [esi + 0x20]
mov ecx, ebx
sub edi, 4
jb 0x42cb24
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42cb29
add ecx, 4
add edx, 4
sub edi, 4
jae 0x42cb13
cmp edi, 0xfffffffc
je 0x42cb56
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x42cb61
cmp edi, 0xfffffffd
je 0x42cb56
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x42cb61
cmp edi, 0xfffffffe
je 0x42cb56
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x42cb61
cmp edi, 0xffffffff
je 0x42cb56
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x42cb61
mov eax, dword [esi + 0x80]
jmp 0x42cbcb
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x64]
test edi, edi
jle 0x42cbfa
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x42cbfa
lea edx, [esi + 0x68]
mov ecx, ebx
sub edi, 4
jb 0x42cb96
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42cb9b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x42cb85
cmp edi, 0xfffffffc
je 0x42cbc8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x42cbfa
cmp edi, 0xfffffffd
je 0x42cbc8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x42cbfa
cmp edi, 0xfffffffe
je 0x42cbc8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x42cbfa
cmp edi, 0xffffffff
je 0x42cbc8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x42cbfa
mov eax, dword [esi + 0x64]
add eax, ebx
mov dword [esi + 4], eax
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x16
jmp 0x42bfa9
cmp dword [ebp + 0x88], 0
je 0x42cc24
cmp ebx, dword [ebp + 0x78]
jb 0x42cc24
cmp ebx, dword [ebp + 0x84]
jbe 0x42cc24
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421209
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cc3e
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
cmp ecx, dword [esi + 0x2c]
jne 0x42cc86
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cc77
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42cc9e
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x42cc92
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x17
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42cd01
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ccf2
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42cd57
cmp dword [ebp + 0x88], 0
je 0x42cd2e
cmp edi, dword [ebp + 0x84]
jbe 0x42cd2e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cd48
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ebx, byte [edi]
inc edi
mov dword [esi + 4], edi
cmp ebx, 0xc0
jb 0x42ce3c
test bl, 0x20
jne 0x42cd85
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42ce39
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42cdad
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 4], 2
jmp 0x42ce3c
mov edx, dword [esi + 4]
test bl, 8
jne 0x42cdd6
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 0x42ce39
test bl, 4
jne 0x42ce05
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 0x42ce39
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 + 4], eax
cmp dword [esi + 0x78], ebx
je 0x42ce77
cmp dword [esi + 0x8c], ebx
je 0x42ce77
inc dword [esi + 0x7c]
mov ebx, dword [esp + 0x14]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x1c
jmp 0x42bfa9
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ce91
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbb
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x42cedf
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ced0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42cef3
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x42cee7
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x1e
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42cf56
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cf47
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42cfac
cmp dword [ebp + 0x88], 0
je 0x42cf83
cmp edi, dword [ebp + 0x84]
jbe 0x42cf83
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42cf9d
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x42d0a0
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42cfda
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42d09d
test dl, 0x10
jne 0x42cffc
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 + 4], 2
jmp 0x42d0a0
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42d02c
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 0x42d09d
test dl, 4
jne 0x42d062
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 0x42d09d
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 + 4], eax
cmp dword [esi + 0x78], edx
jne 0x42d0ce
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d0bf
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x20
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
jne 0x42d137
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d128
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42d14c
nop
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x42d140
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x41ff3d
mov dword [esi + 0x128], 0x22
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42d1af
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d1a0
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov ecx, dword [esi + 4]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x42d207
cmp dword [ebp + 0x88], 0
je 0x42d1de
cmp ecx, dword [ebp + 0x84]
jbe 0x42d1de
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d1f8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [esi + 0x74], 0xc
jne 0x42d228
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42d25b
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004309a0
add esp, 0x14
test eax, eax
jne 0x42d278
mov eax, dword [esi + 4]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 4], edi
cmp edx, 0xc0
jb 0x42d354
test dl, 0x20
jne 0x42d2a1
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42d351
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x42d228
mov al, byte [ecx]
cmp al, byte [ebp + 0x2c]
jne 0x42d228
cmp edi, 1
je 0x42d278
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x2d]
jne 0x42d228
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d292
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x42d2c8
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x42d351
test dl, 8
jne 0x42d2ee
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 0x42d351
test dl, 4
jne 0x42d31d
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 0x42d351
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 + 4], eax
mov eax, dword [esi + 0x74]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x42d363.15
jmp dword [eax*4 + 0x42f7d4]
cmp edx, 0xd
ja 0x42d39f
je 0x42d381
cmp edx, 0xa
je case.0x42d363.12
jbe 0x42d3b7
cmp edx, 0xc
jmp 0x42d3b5
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae case.0x42d363.12
cmp byte [eax], 0xa
jne case.0x42d363.12
inc eax
mov dword [esi + 4], eax
jmp case.0x42d363.12
cmp edx, 0x85
je 0x42d3e0
cmp edx, 0x2027
jbe 0x42d3b7
cmp edx, 0x2029
jbe 0x42d3e0
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d3d1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp dword [ebp + 0x64], 0
je case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d400
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x180e
ja 0x42d46b
je 0x42d495
cmp edx, 0xa0
ja 0x42d463
je 0x42d495
cmp edx, 9
je 0x42d495
cmp edx, 0x20
je 0x42d495
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x2a
jmp 0x42bfa9
cmp edx, 0x1680
jmp 0x42d437
cmp edx, 0x205f
ja 0x42d48d
je 0x42d495
cmp edx, 0x2000
jb case.0x42d363.12
cmp edx, 0x200a
jbe 0x42d495
cmp edx, 0x202f
jmp 0x42d437
cmp edx, 0x3000
jne case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d4af
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x180e
ja 0x42d4f0
je case.0x42d363.12
cmp edx, 0xa0
ja 0x42d4e8
je case.0x42d363.12
cmp edx, 9
je case.0x42d363.12
cmp edx, 0x20
jmp 0x42d520
cmp edx, 0x1680
jmp 0x42d520
cmp edx, 0x205f
ja 0x42d51a
je case.0x42d363.12
cmp edx, 0x2000
jb 0x42d526
cmp edx, 0x200a
jbe case.0x42d363.12
cmp edx, 0x202f
jmp 0x42d520
cmp edx, 0x3000
je case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d540
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x85
ja 0x42d56c
je 0x42d57b
cmp edx, 0xa
jb case.0x42d363.12
cmp edx, 0xd
jbe 0x42d57b
jmp case.0x42d363.12
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d595
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x85
ja 0x42d5bc
je case.0x42d363.12
cmp edx, 0xa
jb 0x42d5cb
cmp edx, 0xd
jmp 0x42d5c5
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d5e5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x100
jae case.0x42d363.12
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
je case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d627
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x100
jae 0x42d64b
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 4
jne case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d665
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x100
jae case.0x42d363.12
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
je case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d6a7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x100
jae 0x42d6cb
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 1
jne case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d6e5
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x100
jae case.0x42d363.12
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
je case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d727
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
cmp edx, 0x100
jae 0x42d74b
mov eax, dword [ebp + 0x38]
test byte [edx + eax], 0x10
jne case.0x42d363.12
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d765
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
je 0x42e51c
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42d7a2
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x42d796
cmp dword [esi + 0x74], 0x11
jne 0x42d7be
mov eax, dword [esi + 4]
cmp eax, dword [esi + 0x2c]
jbe 0x42d7be
cmp byte [eax], 0xa
jne 0x42d7be
dec eax
cmp byte [eax], 0xd
jne 0x42d7be
mov dword [esi + 4], eax
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x2e
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42d821
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d812
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42d877
cmp dword [ebp + 0x88], 0
je 0x42d84e
cmp eax, dword [ebp + 0x84]
jbe 0x42d84e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d868
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx ecx, byte [eax]
inc eax
mov dword [esi + 4], eax
test ebx, ebx
je 0x42d8b6
cmp ecx, 0xc0
jb 0x42d8b6
test cl, 0x20
jne 0x42d892
inc eax
jmp 0x42d8b3
test cl, 0x10
jne 0x42d89c
add eax, 2
jmp 0x42d8b3
test cl, 8
jne 0x42d8a6
add eax, 3
jmp 0x42d8b3
test cl, 4
jne 0x42d8b0
add eax, 4
jmp 0x42d8b3
add eax, 5
mov dword [esi + 4], eax
cmp dword [esi + 0x60], 0
je 0x42d8e5
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d8d6
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x24
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42d94b
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d93c
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42d9a1
cmp dword [ebp + 0x88], 0
je 0x42d978
cmp edi, dword [ebp + 0x84]
jbe 0x42d978
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42d992
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42da9d
cmp edx, 0xc0
jb 0x42da9d
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42d9d7
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42da9a
test dl, 0x10
jne 0x42d9f9
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 + 4], 2
jmp 0x42da9d
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42da29
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 0x42da9a
test dl, 4
jne 0x42da5f
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 0x42da9a
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp eax, 9
je 0x42dad4
cmp eax, 5
je 0x42dad4
cmp eax, 8
je 0x42dad4
xor eax, eax
jmp 0x42dad9
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x42db07
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42daf8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x25
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42db6d
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42db5e
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42dbc3
cmp dword [ebp + 0x88], 0
je 0x42db9a
cmp edi, dword [ebp + 0x84]
jbe 0x42db9a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dbb4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42dcbf
cmp edx, 0xc0
jb 0x42dcbf
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42dbf9
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42dcbc
test dl, 0x10
jne 0x42dc1b
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 + 4], 2
jmp 0x42dcbf
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42dc4b
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 0x42dcbc
test dl, 4
jne 0x42dc81
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 0x42dcbc
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 + 4], eax
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
jne 0x42dd20
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dd11
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x26
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42dd86
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dd77
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42dddc
cmp dword [ebp + 0x88], 0
je 0x42ddb3
cmp edi, dword [ebp + 0x84]
jbe 0x42ddb3
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ddcd
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ded8
cmp edx, 0xc0
jb 0x42ded8
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42de12
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ded5
test dl, 0x10
jne 0x42de34
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 + 4], 2
jmp 0x42ded8
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42de64
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 0x42ded5
test dl, 4
jne 0x42de9a
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 0x42ded5
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 + 4], eax
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
jne 0x42df32
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42df23
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x27
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42df98
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42df89
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42dfee
cmp dword [ebp + 0x88], 0
je 0x42dfc5
cmp edi, dword [ebp + 0x84]
jbe 0x42dfc5
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42dfdf
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e0ea
cmp edx, 0xc0
jb 0x42e0ea
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e024
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e0e7
test dl, 0x10
jne 0x42e046
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 + 4], 2
jmp 0x42e0ea
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e076
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 0x42e0e7
test dl, 4
jne 0x42e0ac
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 0x42e0e7
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 + 4], eax
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f0]
cmp eax, dword [esi + 0x5c]
sete cl
cmp ecx, dword [esi + 0x60]
jne 0x42e144
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e135
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x28
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42e1aa
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e19b
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e200
cmp dword [ebp + 0x88], 0
je 0x42e1d7
cmp edi, dword [ebp + 0x84]
jbe 0x42e1d7
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e1f1
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e2fc
cmp edx, 0xc0
jb 0x42e2fc
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e236
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e2f9
test dl, 0x10
jne 0x42e258
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 + 4], 2
jmp 0x42e2fc
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e288
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 0x42e2f9
test dl, 4
jne 0x42e2be
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 0x42e2f9
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x42e353
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e344
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jae 0x42e4a1
nop
mov eax, dword [esi + 4]
mov ecx, 1
movzx edx, byte [eax]
test ebx, ebx
je 0x42e464
cmp edx, 0xc0
jb 0x42e464
test dl, 0x20
jne 0x42e395
movzx eax, byte [eax + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42e45c
test dl, 0x10
jne 0x42e3ba
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
movzx eax, byte [eax + 2]
jmp 0x42e45c
test dl, 8
jne 0x42e3eb
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
mov ecx, 4
jmp 0x42e45c
movzx eax, byte [eax + 1]
and eax, 0x3f
test dl, 4
jne 0x42e425
mov ecx, dword [esi + 4]
and edx, 3
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
mov ecx, 5
jmp 0x42e45c
and edx, ecx
mov ecx, dword [esi + 4]
shl edx, 6
or eax, edx
shl eax, 6
movzx edx, byte [ecx + 2]
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
mov ecx, 6
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x42e4a1
add dword [esi + 4], ecx
mov eax, dword [esi + 4]
cmp eax, dword [ebp + 0x78]
jb 0x42e360
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x29
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov ecx, dword [esi + 4]
lea edx, [ecx - 1]
mov dword [esi + 4], edx
cmp ecx, dword [esi + 0x2c]
je 0x42e51c
test ebx, ebx
je 0x429637
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x429637
dec edx
mov dword [esi + 4], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x42e4f5
jmp 0x429637
test edi, edi
jne case.0x42abcf.49
mov edx, dword [esi + 4]
lea eax, [edx - 1]
mov dword [esi + 4], eax
cmp edx, dword [esi + 0x2c]
jne 0x42e545
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e536
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
test ebx, ebx
jne 0x42e554
mov eax, dword [esi + 4]
movzx edx, byte [eax]
jmp 0x42e648
mov ecx, dword [esi + 4]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42e56c
nop
dec ecx
mov dword [esi + 4], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x42e560
mov eax, dword [esi + 4]
movzx edx, byte [eax]
cmp edx, 0xc0
jb 0x42e648
test dl, 0x20
jne 0x42e58f
movzx eax, byte [eax + 1]
and edx, 0x1f
jmp 0x42e640
test dl, 0x10
jne 0x42e5af
movzx ecx, byte [eax + 1]
and edx, 0xf
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or edx, ecx
movzx eax, byte [eax + 2]
jmp 0x42e640
test dl, 8
jne 0x42e5db
movzx ecx, byte [eax + 1]
and edx, 7
mov eax, dword [esi + 4]
and ecx, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
movzx edx, byte [eax + 2]
movzx eax, byte [eax + 3]
and edx, 0x3f
or edx, ecx
jmp 0x42e640
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 4]
and eax, 0x3f
test dl, 4
jne 0x42e610
and edx, 3
shl edx, 6
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
jmp 0x42e640
and edx, 1
shl edx, 6
or eax, edx
movzx edx, byte [ecx + 2]
shl eax, 6
and edx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 2
jne 0x42993d
dec dword [esi + 4]
jmp 0x42e545
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42e6be
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e6af
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e718
cmp dword [ebp + 0x88], 0
je 0x42e6ef
cmp edi, dword [ebp + 0x84]
jbe 0x42e6ef
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e709
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42e814
cmp edx, 0xc0
jb 0x42e814
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e74e
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42e811
test dl, 0x10
jne 0x42e770
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 + 4], 2
jmp 0x42e814
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e7a0
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 0x42e811
test dl, 4
jne 0x42e7d6
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 0x42e811
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 + 4], eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x4899d0]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x42e84d
cmp eax, 3
je 0x42e84d
xor eax, eax
jmp 0x42e852
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x42e880
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e871
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x3b
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42e8e6
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e8d7
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42e940
cmp dword [ebp + 0x88], 0
je 0x42e917
cmp edi, dword [ebp + 0x84]
jbe 0x42e917
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42e931
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ea3c
cmp edx, 0xc0
jb 0x42ea3c
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42e976
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ea39
test dl, 0x10
jne 0x42e998
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 + 4], 2
jmp 0x42ea3c
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42e9c8
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 0x42ea39
test dl, 4
jne 0x42e9fe
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 0x42ea39
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x42ea84
cmp edx, 9
je 0x42ea84
cmp edx, 0xa
je 0x42ea84
cmp edx, 0xc
je 0x42ea84
cmp edx, 0xd
je 0x42ea84
xor eax, eax
jmp 0x42ea89
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x42eab7
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eaa8
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x3c
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42eb1d
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eb0e
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42eb77
cmp dword [ebp + 0x88], 0
je 0x42eb4e
cmp edi, dword [ebp + 0x84]
jbe 0x42eb4e
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eb68
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42ec73
cmp edx, 0xc0
jb 0x42ec73
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42ebad
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42ec70
test dl, 0x10
jne 0x42ebcf
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 + 4], 2
jmp 0x42ec73
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42ebff
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 0x42ec70
test dl, 4
jne 0x42ec35
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 0x42ec70
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
cmp dword [eax*4 + 0x488878], 6
je 0x42ecc0
cmp edx, 9
je 0x42ecc0
cmp edx, 0xa
je 0x42ecc0
cmp edx, 0xb
je 0x42ecc0
cmp edx, 0xc
je 0x42ecc0
cmp edx, 0xd
je 0x42ecc0
xor eax, eax
jmp 0x42ecc5
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x42ecf3
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ece4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x3d
jmp 0x42bfa9
test edi, edi
jne case.0x42abcf.49
mov eax, dword [esi + 0x7c]
cmp eax, dword [esi + 0x84]
jl 0x42ed59
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ed4a
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
mov edi, dword [esi + 4]
cmp edi, dword [ebp + 0x78]
jb 0x42edb3
cmp dword [ebp + 0x88], 0
je 0x42ed8a
cmp edi, dword [ebp + 0x84]
jbe 0x42ed8a
mov dword [ebp + 0x60], 1
cmp dword [ebp + 0x88], 1
jg 0x421497
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42eda4
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
movzx edx, byte [edi]
inc edi
mov dword [esi + 4], edi
test ebx, ebx
je 0x42eeaf
cmp edx, 0xc0
jb 0x42eeaf
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42ede9
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42eeac
test dl, 0x10
jne 0x42ee0b
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 + 4], 2
jmp 0x42eeaf
mov ecx, dword [esi + 4]
test dl, 8
jne 0x42ee3b
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 0x42eeac
test dl, 4
jne 0x42ee71
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 0x42eeac
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 + 4], eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x4899d0]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x48bbd0]
movzx eax, byte [eax*8 + 0x4888f1]
mov eax, dword [eax*4 + 0x488878]
cmp eax, 1
je 0x42eeef
cmp eax, 3
je 0x42eeef
cmp edx, 0x5f
je 0x42eeef
xor eax, eax
jmp 0x42eef4
mov eax, 1
cmp eax, dword [esi + 0x60]
jne 0x42ef22
mov eax, esi
lea ecx, [esp + 0x28]
mov esi, dword [esi]
mov dword [esp + 0x10], esi
cmp eax, ecx
je 0x42ef13
push eax
call dword [0x2668e38]
add esp, 4
test esi, esi
je 0x42f0ef
xor edi, edi
jmp 0x42abbf
inc dword [esi + 0x7c]
push 0x12c
call dword [0x2668e34]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x42c818
mov dword [esi + 0x128], 0x3e
jmp 0x42bfa9
mov ecx, dword [esi + 0x40]
lea eax, [esi + 0xa8]
cmp ecx, eax
je 0x42ef63
push ecx
call dword [0x2668e30]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 4], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0xc], eax
jmp 0x41fedf
add eax, 3
mov dword [esi + 8], eax
jmp 0x41fedf
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42c800
mov eax, dword [esi + 0x88]
mov ebx, dword [esp + 0x14]
mov dword [esi + 0x7c], eax
jmp 0x42ca8e
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42cbd3
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42ce50
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42d0d1
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42d8e8
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42db0a
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42dd23
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42df35
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42e147
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42e883
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42eaba
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42ecf6
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42ef25
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42d43c
mov eax, dword [esi + 0x88]
mov dword [esi + 0x7c], eax
jmp 0x42e4a4
mov dword [esi + 0x128], 0x37
mov eax, dword [esi + 4]
mov dword [edi + 4], eax
mov ecx, dword [esi + 8]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4887d8]
movzx eax, byte [ecx + 1]
add edx, eax
add edx, ecx
mov dword [edi + 8], edx
mov eax, dword [esi + 0xc]
mov dword [edi + 0xc], eax
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]
inc eax
mov dword [edi + 0x18], eax
mov dword [edi], esi
mov esi, edi
jmp 0x41fe1f
mov dword [esi + 0x128], 0x10
jmp 0x42bfa9
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x1b0
ret
push dword [esi + 0x128]
push str.jump_error_in_pcre_match:_label__d_non_existent_n
call fcn.00415d11
add esp, 8
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x1b0
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x1b0
ret