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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x68
push ebx
push ebp
mov ebp, dword [esp + 0x84]
push esi
push edi
mov esi, dword [ebp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x80]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x88]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x94]
mov dword [esi + 0x1c], eax
lea ecx, [ecx]
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
mov edi, edi
mov edx, dword [ebp]
mov ecx, dword [ebp + 4]
mov edi, dword [ebp + 0x4c]
mov dword [esp + 0x8c], edi
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, ecx
jb 0x457f0e
mov esi, dword [esi]
test esi, esi
je 0x465bb1
mov edi, 0xfffffff8
jmp 0x4617b9
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x457f2a
mov esi, dword [esi]
test esi, esi
je 0x465bbe
mov edi, 0xffffffeb
jmp 0x4617b9
cmp dword [ebp + 0x98], 2
jne 0x457f61
mov eax, dword [esi + 8]
lea ecx, [esi + 0x128]
mov dword [esi + 0x12c], eax
mov eax, dword [esi + 0x18]
mov dword [ecx], eax
mov dword [esi + 0x18], ecx
mov dword [ebp + 0x98], 0
jmp 0x457f61
add dword [esi + 0xc], 3
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], ebx
movzx edx, byte [eax]
mov dword [esi + 0x9c], edx
cmp edx, 0xa1
ja case.0x457f94.98
movzx eax, byte [edx + 0x465dcc]
jmp dword [eax*4 + 0x465c80]
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x465415
push 0x134
call dword [0x114445c]
mov edi, eax
add esp, 4
test edi, edi
jne 0x46540f
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 4]
test edx, edx
jne 0x465465
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x46545f
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 4]
test edx, edx
jne 0x465483
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x46547d
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x4654a1
push 0x134
call dword [0x114445c]
mov edi, eax
add esp, 4
test edi, edi
jne 0x46549b
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 4]
test edx, edx
jne 0x4654b6
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4654b0
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x4580ee
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x507ef8]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x457f61
mov edi, dword [esi + 4]
test edi, edi
jne 0x4654d4
push 0x134
call dword [0x114445c]
mov edi, eax
add esp, 4
test edi, edi
jne 0x4654ce
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 4]
test edx, edx
jne 0x4654e9
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4654e3
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x465507
push 0x134
call dword [0x114445c]
mov edi, eax
add esp, 4
test edi, edi
jne 0x465501
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [esi + 0xc]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x38], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
jmp 0x462cf8
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [ebp + 0x14]
jge case.0x457f94.129
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edx
jmp 0x46185b
mov dword [esi + 0x54], ebx
jmp 0x4589ff
mov dword [esi + 0x54], ebx
jmp 0x458a23
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x78], ecx
add dword [esi + 0xc], 3
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x76
jne 0x458368
mov edi, dword [0x1148438]
test edi, edi
je 0x458354
mov dword [esp + 0x10], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x28], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x38], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x3c], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x30], eax
test eax, eax
jne 0x45830e
mov dword [esp + 0x30], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x10]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x458343
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
jns 0x458354
mov esi, dword [esi]
test esi, esi
je 0x461c9c
jmp 0x4617b9
movzx eax, byte [0x507f6e]
add dword [esi + 0xc], eax
movzx eax, byte [0x507f6e]
sub dword [esi + 0x78], eax
mov dword [esi + 0x58], ebx
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx]
mov dword [esp + 0x88], edx
lea eax, [edx - 0x8d]
cmp eax, 0x10
ja case.0x45838e.146
movzx eax, byte [eax + 0x465e88]
jmp dword [eax*4 + 0x465e70]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x45838e.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x4583c7
cmp edx, dword [edi + 4]
je 0x4583c7
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x461af3
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x461af3
cmp dword [ebp + 0xa4], ebx
je case.0x45838e.145
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edi, byte [ecx + 1]
shl ebx, 8
shl edi, 8
or ebx, eax
movzx eax, byte [ecx + 2]
or edi, eax
imul edi, dword [ebp + 0x24]
add edi, dword [ebp + 0x30]
test ebx, ebx
jle case.0x45838e.145
lea esp, [esp]
movzx eax, byte [edi]
xor ecx, ecx
movzx edx, byte [edi + 1]
dec ebx
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x58], ecx
test ecx, ecx
jne 0x461af3
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x458410
jmp 0x461af3
mov eax, dword [esi + 0xc]
movzx ecx, byte [ecx + 1]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x458474
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x458474
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x45838e.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x45838e.145
movzx edi, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edx, byte [ecx + 1]
shl edi, 8
shl edx, 8
or edi, eax
movzx eax, byte [ecx + 2]
or edx, eax
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
test edi, edi
jle 0x461af3
movzx eax, byte [edx]
dec edi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x4584c9
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x4584d8
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x4584a7
jmp 0x461af3
mov dword [esi + 0x58], 1
jmp 0x461af3
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46551c
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465516
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x98]
cmp edx, dword [ebp + 0x14]
jl 0x458574
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x457f56
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x14]
cmp ecx, edx
jl 0x457f56
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x4585c3
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x98]
add eax, 2
mov dword [esi + 0x14], eax
jmp 0x457f56
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x458616
cmp edx, 0x9f
je 0x458616
cmp dword [ebp + 0xa4], ebx
jne 0x458616
cmp dword [ebp + 0x5c], ebx
jne 0x458605
cmp dword [ebp + 0x60], ebx
je 0x458616
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x458616
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
mov dword [ebp + 0x80], edi
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov edi, dword [esi + 0x9c]
mov esi, dword [esi]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
test esi, esi
je 0x461c9c
jmp 0x4617b9
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x45866f
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x461bed
mov dword [esi + 0x58], ebx
jmp 0x461bed
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x45869b
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x461d3b
mov dword [esi + 0x58], ebx
jmp 0x461d3b
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x458702
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x4586e8
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x45eee6.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4586e4
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4586d8
test edx, edx
jg 0x4586c0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x457f56
mov dword [ebp + 0x84], eax
jmp 0x457f56
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0xc]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
sub dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jae 0x4586e8
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c0
mov edi, dword [0x1148438]
test edi, edi
je 0x45880c
mov dword [esp + 0x44], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x5c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x6c], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x70], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x60], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x64], eax
test eax, eax
jne 0x4587c6
mov dword [esp + 0x64], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x44]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x4587fb
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
jns 0x45880c
mov esi, dword [esi]
test esi, esi
je 0x461c9c
jmp 0x4617b9
add dword [esi + 0xc], 6
jmp 0x457f5a
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp + 0x70]
add eax, ecx
mov dword [esi + 0x20], eax
cmp eax, dword [ebp + 0x70]
jne 0x458836
xor edx, edx
jmp 0x458843
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 0x458863
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x45885d
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x4588c4
mov ecx, dword [ecx]
test ecx, ecx
jne 0x458850
mov dword [esi + 0x40], edx
lea ecx, [esi + 0x3c]
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x50], eax
mov eax, dword [ebp + 0xa4]
mov dword [ecx], eax
mov dword [ebp + 0xa4], ecx
add dword [esi + 0xc], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], eax
cmp eax, 0x1e
jg 0x4588d8
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call fcn.0044d823
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x461e24
mov esi, dword [esi]
test esi, esi
je 0x465be2
mov edi, 0xffffffe6
jmp 0x4617b9
shl eax, 2
push eax
call dword [0x1144454]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x45889e
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x458901
jmp 0x457f61
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465557
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465551
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x458960
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465575
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46556f
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x4589b3
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x457f61
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x9c], eax
mov dword [esi + 0x54], 1
mov eax, dword [esi + 0x9c]
cmp eax, 0x86
je 0x4589ff
cmp eax, 0x8b
jne 0x458a23
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
cmp eax, dword [ebp + 0x14]
jl 0x458a40
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
jmp 0x46290d
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4], edx
cmp dword [esi + 0x9c], 0x88
jb 0x458abd
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x465907
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4658fd
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [esi + 0x34], edx
mov al, byte [edx]
cmp al, 0x88
jae 0x458b18
cmp al, 0x81
je 0x458b18
mov dword [esi + 0x38], ebx
jmp 0x458b29
mov eax, dword [esi + 0x18]
mov eax, dword [eax + 4]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x34]
mov al, byte [edx]
cmp al, 0x7d
jb 0x458b36
cmp al, 0x80
jbe 0x458b3a
cmp al, 0x82
jne 0x458b66
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x465c16
mov edi, 1
jmp 0x4617b9
cmp al, 0x85
je 0x458b7a
cmp al, 0x8a
je 0x458b7a
cmp al, 0x86
je 0x458b7a
cmp al, 0x8b
jne 0x458c41
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x458bb6
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x458bb6
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x458b4c
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x98]
cmp ecx, dword [ebp + 0x14]
jl 0x458be5
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x458c41
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x458c05
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x458c05
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov edx, dword [ebp + 0xc]
mov ecx, dword [esi + 0x98]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0x98]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x98]
cmp dword [esi + 0x14], eax
jg 0x458c41
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x458c77
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov esi, dword [esi]
test esi, esi
je 0x465bef
mov edi, 0xfffffc1a
jmp 0x4617b9
cmp cl, 0x78
je 0x458cf0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x458cf0
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x458cbe
test ecx, ecx
jne 0x465596
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465590
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test ecx, ecx
jne 0x4655b7
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4655b1
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x461f57
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4655d5
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4655cf
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
cmp dword [ebp + 0x44], ebx
je case.0x457f94.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x457f94.1
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x458e18
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
cmp dword [ebp + 0x44], ebx
je 0x458d8a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x458d8a
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x4597d4
cmp ecx, dword [ebp + 0x78]
je 0x458df0
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x458dc8
cmp ecx, edx
jbe 0x458df0
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00467e40
add esp, 0x14
test eax, eax
jne 0x4597d4
jmp 0x458df0
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x458df0
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x458df0
cmp edi, 1
je 0x4597d4
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4597d4
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617b9
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x458d55
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x457f61
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x458eda
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x458e55
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x4597d4
jmp 0x458e79
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x458e79
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x458e79
cmp edx, 1
je 0x4597d4
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4597d4
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x45eee6.14
cmp dword [ebp + 0x18], ebx
jne case.0x45eee6.14
cmp dword [edi], 2
jne case.0x45eee6.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x45eee6.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x45eee6.14
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617b9
cmp dword [ebp + 0x48], ebx
jne 0x458d5b
cmp dword [ebp + 0x88], ebx
je 0x4597d4
cmp ecx, dword [ebp + 0x84]
jbe 0x4597d4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4597d4
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617b9
cmp dword [ebp + 0x48], ebx
jne 0x458d5b
cmp dword [ebp + 0x58], ebx
je case.0x457f94.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x458d5b
cmp dword [ebp + 0x88], ebx
je 0x458e18
cmp eax, dword [ebp + 0x84]
jbe 0x458e18
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x458e18
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617b9
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x458fe5
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x458fad
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x458fd5
jmp 0x458e79
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x458e79
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x458e79
cmp edx, 1
je 0x458fd5
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x458e79
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x458e79
cmp dword [ebp + 0x88], ebx
je 0x4597d4
cmp ecx, dword [ebp + 0x84]
jbe 0x4597d4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4597d4
jmp 0x458ec6
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x4592e7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x459035
mov dword [esi + 0x5c], ebx
jmp 0x45916e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x45904a
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x459040
cmp edx, dword [ebp + 0x84]
jae 0x459058
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x45910c
test bl, 0x20
jne 0x459080
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x45910c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45909a
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x459102
and eax, 0x3f
test bl, 8
jne 0x4590b5
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x459102
test bl, 4
jne 0x4590d9
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x459102
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp dword [ebp + 0x54], 0
je 0x4591a7
cmp ebx, 0x5f
jne 0x459124
mov dword [esi + 0x5c], 1
jmp 0x45916e
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x459146
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x4591b8
cmp eax, 3
je 0x4591b8
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x4591bf
cmp dword [ebp + 0x88], 0
je 0x45919b
cmp edx, dword [ebp + 0x84]
jbe 0x45919b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
mov dword [esi + 0x54], 0
jmp 0x459425
cmp ebx, 0x100
jae 0x459169
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x459169
mov eax, 1
jmp 0x45916b
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x459269
test bl, 0x20
jne 0x4591df
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x459261
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4591f9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x459261
and eax, 0x3f
test bl, 8
jne 0x459214
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x459261
test bl, 4
jne 0x459238
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 0x459261
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [ebp + 0x54], 0
je 0x4592cc
cmp ebx, 0x5f
jne 0x459280
mov dword [esi + 0x54], 1
jmp 0x459425
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x4592a2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x4592dd
cmp eax, 3
je 0x4592dd
xor eax, eax
jmp 0x459422
cmp ebx, 0x100
jae 0x4592c5
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x4592c5
mov eax, 1
jmp 0x459422
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x4592f7
mov dword [esi + 0x5c], ebx
jmp 0x459392
cmp eax, dword [ebp + 0x84]
ja 0x459306
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x45937e
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x459320
mov dword [esi + 0x5c], 1
jmp 0x459392
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ecx, 0x8000007f
jns 0x459342
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x459370
cmp eax, 3
je 0x459370
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x45938f
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x45938f
movzx eax, byte [eax - 1]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4593d3
cmp dword [ebp + 0x88], ebx
je 0x4593ce
cmp eax, dword [ebp + 0x84]
jbe 0x4593ce
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4593ce
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617c0
mov dword [esi + 0x54], ebx
jmp 0x459425
cmp dword [ebp + 0x54], ebx
je 0x459412
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x4593e9
mov dword [esi + 0x54], 1
jmp 0x459425
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ecx, 0x8000007f
jns 0x45940b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x4592a4
movzx eax, byte [eax]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0xc]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x54]
cmp cl, 5
jne 0x459440
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x459448
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x457f61
jmp 0x458d5b
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x45948d
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x4594b8
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x458d5b
jmp 0x4594b8
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x4594b8
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4594b8
cmp edx, 1
je 0x458d5b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x458d5b
cmp dword [ebp + 0x88], ebx
je case.0x457f94.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x457f94.13
cmp dword [ebp + 0x18], ebx
jne case.0x457f94.13
cmp dword [ebp + 0x1c], 2
jne case.0x457f94.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x457f94.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x459516
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
cmp eax, dword [ebp + 0x84]
jbe case.0x45eee6.14
jmp 0x458eb2
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x458e18
cmp eax, dword [ebp + 0x78]
jae 0x458e18
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x458e18
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x459532
inc dword [esi + 0xc]
jmp 0x457f61
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4594f9
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x457f61
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x45958d
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
cmp edi, dword [ebp + 0x84]
jbe case.0x45eee6.14
jmp 0x458eb2
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x459689
cmp ebx, 0xc0
jb 0x459689
test bl, 0x20
jne 0x4595ca
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x459686
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4595f4
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x459689
mov edx, dword [esi + 8]
test bl, 8
jne 0x45961a
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45967d
test bl, 4
jne 0x459649
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45967d
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x4597d4
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x4597d4
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4597bb
cmp ebx, 0xc0
jb 0x4597bb
test bl, 0x20
jne 0x4596fc
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4597b8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x459726
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4597bb
mov edx, dword [esi + 8]
test bl, 8
jne 0x45974c
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4597af
test bl, 4
jne 0x45977b
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4597af
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x45871d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x45871d
inc dword [esi + 0xc]
jmp 0x457f5a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4598e4
cmp ebx, 0xc0
jb 0x4598e4
test bl, 0x20
jne 0x459825
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4598e1
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45984f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4598e4
mov edx, dword [esi + 8]
test bl, 8
jne 0x459875
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4598d8
test bl, 4
jne 0x4598a4
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4598d8
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x4597d4
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x45969c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x459a04
cmp ebx, 0xc0
jb 0x459a04
test bl, 0x20
jne 0x459945
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x459a01
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45996f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x459a04
mov edx, dword [esi + 8]
test bl, 8
jne 0x459995
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4599f8
test bl, 4
jne 0x4599c4
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4599f8
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x45871d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x45871d
inc dword [esi + 0xc]
jmp 0x457f5a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x459b2d
cmp ebx, 0xc0
jb 0x459b2d
test bl, 0x20
jne 0x459a6e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x459b2a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x459a98
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x459b2d
mov edx, dword [esi + 8]
test bl, 8
jne 0x459abe
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x459b21
test bl, 4
jne 0x459aed
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x459b21
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x4597d4
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x45969c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x459c4d
cmp ebx, 0xc0
jb 0x459c4d
test bl, 0x20
jne 0x459b8e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x459c4a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x459bb8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x459c4d
mov edx, dword [esi + 8]
test bl, 8
jne 0x459bde
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x459c41
test bl, 4
jne 0x459c0d
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x459c41
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x45871d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x45871d
inc dword [esi + 0xc]
jmp 0x457f5a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x459d76
cmp ebx, 0xc0
jb 0x459d76
test bl, 0x20
jne 0x459cb7
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x459d73
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x459ce1
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x459d76
mov edx, dword [esi + 8]
test bl, 8
jne 0x459d07
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x459d6a
test bl, 4
jne 0x459d36
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x459d6a
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xd
ja 0x459def
je 0x459d91
cmp ebx, 0xa
je 0x4597d4
jbe 0x4596a2
cmp ebx, 0xc
jmp 0x459e09
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x459dda
cmp dword [ebp + 0x88], 0
je 0x4597d4
cmp eax, dword [ebp + 0x84]
jbe 0x4597d4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4597d4
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617c0
cmp byte [eax], 0xa
jne 0x4597d4
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x457f5a
cmp ebx, 0x85
je 0x459e0f
cmp ebx, 0x2027
jbe 0x4596a2
cmp ebx, 0x2029
ja 0x4596a2
cmp dword [ebp + 0x68], 0
jmp 0x45969c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x459f20
cmp ebx, 0xc0
jb 0x459f20
test bl, 0x20
jne 0x459e61
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x459f1d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x459e8b
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x459f20
mov edx, dword [esi + 8]
test bl, 8
jne 0x459eb1
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x459f14
test bl, 4
jne 0x459ee0
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x459f14
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x459f58
je 0x45871d
cmp ebx, 0xa0
ja 0x459f4d
je 0x45871d
cmp ebx, 9
je 0x45871d
cmp ebx, 0x20
jmp 0x4597ce
cmp ebx, 0x1680
jmp 0x4597ce
cmp ebx, 0x205f
ja 0x459f89
je 0x45871d
cmp ebx, 0x2000
jb 0x4597d4
cmp ebx, 0x200a
jbe 0x45871d
cmp ebx, 0x202f
jmp 0x4597ce
cmp ebx, 0x3000
je 0x45871d
inc dword [esi + 0xc]
jmp 0x457f5a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x45a0a5
cmp ebx, 0xc0
jb 0x45a0a5
test bl, 0x20
jne 0x459fe6
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x45a0a2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45a010
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x45a0a5
mov edx, dword [esi + 8]
test bl, 8
jne 0x45a036
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45a099
test bl, 4
jne 0x45a065
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45a099
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x45a0dd
je 0x4597d4
cmp ebx, 0xa0
ja 0x45a0d2
je 0x4597d4
cmp ebx, 9
je 0x4597d4
cmp ebx, 0x20
jmp 0x45969c
cmp ebx, 0x1680
jmp 0x45969c
cmp ebx, 0x205f
ja 0x45a10e
je 0x4597d4
cmp ebx, 0x2000
jb 0x4596a2
cmp ebx, 0x200a
jbe 0x4597d4
cmp ebx, 0x202f
jmp 0x45969c
cmp ebx, 0x3000
jmp 0x45969c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x45a221
cmp ebx, 0xc0
jb 0x45a221
test bl, 0x20
jne 0x45a162
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x45a21e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45a18c
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x45a221
mov edx, dword [esi + 8]
test bl, 8
jne 0x45a1b2
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45a215
test bl, 4
jne 0x45a1e1
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45a215
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x45a249
je 0x4596a2
cmp ebx, 0xa
jb 0x4597d4
cmp ebx, 0xd
jbe 0x4596a2
inc dword [esi + 0xc]
jmp 0x457f5a
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x4597d4
jmp 0x4596a2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x45a365
cmp ebx, 0xc0
jb 0x45a365
test bl, 0x20
jne 0x45a2a6
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x45a362
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45a2d0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x45a365
mov edx, dword [esi + 8]
test bl, 8
jne 0x45a2f6
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45a359
test bl, 4
jne 0x45a325
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45a359
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x45a38a
je 0x4597d4
cmp ebx, 0xa
jb 0x45871d
cmp ebx, 0xd
jbe 0x4597d4
jmp 0x45871d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x45871d
inc dword [esi + 0xc]
jmp 0x457f5a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x45a49d
cmp ebx, 0xc0
jb 0x45a49d
test bl, 0x20
jne 0x45a3e9
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x45a49a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45a411
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x45a49d
mov edx, dword [esi + 8]
test bl, 8
jne 0x45a437
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 0x45a49a
test bl, 4
jne 0x45a466
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 0x45a49a
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x45a4c0
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
movzx edx, word [ecx*2 + 0x50ba80]
cmp eax, 0xa
ja case.default.0x45a4da
jmp dword [eax*4 + 0x465e9c]
cmp dword [esi + 0x9c], 0xf
jne 0x457f56
jmp 0x458d5b
mov al, byte [edx*8 + 0x508201]
cmp al, 9
je 0x45a50a
cmp al, 5
je 0x45a50a
cmp al, 8
je 0x45a50a
xor ecx, ecx
jmp 0x45a50f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x457f56
jmp 0x458d5b
movzx ecx, byte [edx*8 + 0x508201]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x508010]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x457f56
jmp 0x458d5b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x508201]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x457f56
jmp 0x458d5b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x508200]
jmp 0x45a56b
movzx eax, byte [edx*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x45a50a
cmp eax, 3
je 0x45a50a
xor ecx, ecx
jmp 0x45a50f
cmp ebx, 0x180e
ja 0x45a603
je case.0x45a4da.0
cmp ebx, 0x85
ja 0x45a5ef
je case.0x45a4da.0
cmp ebx, 9
jb case.0x45a623.8203
cmp ebx, 0xd
jbe case.0x45a4da.0
cmp ebx, 0x20
jmp 0x45a63c
cmp ebx, 0xa0
je case.0x45a4da.0
cmp ebx, 0x1680
jmp 0x45a63c
cmp ebx, 0x202f
ja 0x45a62a
je case.0x45a4da.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x45a623.8203
movzx eax, byte [ebx + 0x465ed0]
jmp dword [eax*4 + 0x465ec8]
cmp ebx, 0x205f
je case.0x45a4da.0
cmp ebx, 0x3000
je case.0x45a4da.0
movzx eax, byte [edx*8 + 0x508201]
xor ecx, ecx
cmp dword [eax*4 + 0x508010], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x45a577
movzx eax, byte [edx*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x45a50a
cmp eax, 3
je 0x45a50a
cmp ebx, 0x5f
je 0x45a50a
xor ecx, ecx
jmp 0x45a50f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x5080c0]
lea eax, [eax*4 + 0x5080c0]
cmp ebx, ecx
jb 0x45a6bd
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x45a6cf
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x45a6b0
cmp dword [esi + 0x9c], 0x10
jne 0x457f56
jmp 0x458d5b
cmp dword [esi + 0x9c], 0x10
je 0x457f56
jmp 0x458d5b
cmp ebx, 0x24
je 0x45a50a
cmp ebx, 0x40
je 0x45a50a
cmp ebx, 0x60
je 0x45a50a
cmp ebx, 0xa0
jb 0x45a710
cmp ebx, 0xd7ff
jbe 0x45a50a
cmp ebx, 0xe000
jae 0x45a50a
xor ecx, ecx
jmp 0x45a50f
mov esi, dword [esi]
test esi, esi
je case.default.0x4617d4
mov edi, 0xfffffff2
jmp 0x4617b9
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x45a842
cmp ebx, 0xc0
jb 0x45a842
test bl, 0x20
jne 0x45a780
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x45a83f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45a7af
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, dword [esp + 0x8c]
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x45a842
mov edx, dword [esi + 8]
test bl, 8
jne 0x45a7d5
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 0x45a838
test bl, 4
jne 0x45a804
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 0x45a838
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45a864
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508202]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45a9f6
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x45a98e
cmp ebx, 0xc0
jb 0x45a98e
test bl, 0x20
jne 0x45a8c5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x45a986
test bl, 0x10
jne 0x45a8ea
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x45a986
test bl, 8
jne 0x45a918
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x45a986
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x45a952
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x45a986
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45a9b0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx ecx, byte [eax*8 + 0x508202]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x508088], eax
je 0x45a9f6
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x45a890
cmp dword [ebp + 0x88], 0
je 0x4597d4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4597d4
cmp eax, dword [ebp + 0x84]
jbe 0x4597d4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4597d4
jmp 0x458ec6
mov ecx, dword [esi + 0xc]
xor eax, eax
cmp edx, 0x74
sete al
movzx ebx, byte [ecx + 3]
movzx edx, byte [ecx + 2]
mov dword [esp + 0x7c], eax
movzx eax, byte [ecx + 4]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 1]
shl eax, 8
or edx, eax
lea eax, [ecx + 5]
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov dword [esi + 0x98], 0
test ebx, ebx
jle 0x45ab24
lea esp, [esp]
movzx ecx, byte [edx]
dec ebx
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
lea edi, [ecx + ecx]
mov dword [esi + 0x98], edi
cmp edi, dword [esi + 0x14]
jge 0x45aab4
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x45aabd
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x45aa90
jmp 0x45ab24
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x45ab24
xor eax, eax
cmp edx, 0x72
sete al
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
add dword [esi + 0xc], 3
mov edx, dword [esi + 0x98]
cmp edx, dword [esi + 0x14]
jge 0x45ab14
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x45ab14
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x45ab1e
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov edx, dword [esi + 0xc]
mov bl, byte [edx]
movzx ecx, bl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x45ab3f
movzx eax, byte [eax + 0x465f04]
jmp dword [eax*4 + 0x465efc]
add ecx, 0xffffff9e
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x80], ebx
movsx eax, byte [ecx + 0x507550]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x50755c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x45abcd
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x45abcd
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x45abc9
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x457f61
jns 0x45abf1
cmp dword [esi + 0x90], 0
je 0x457f61
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x45ac2f
mov edi, edi
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.00466400
add esp, 0x14
test eax, eax
js 0x45ac61
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45ac00
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x457f61
cmp dword [esp + 0x80], 0
je 0x45ac8a
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x462072
cmp eax, 0xfffffffe
jne 0x45ac6c
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x45eee6.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x45eee6.14
jmp 0x459505
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x45aca0
cmp edi, dword [esi + 0x8c]
jge 0x4620c1
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.00466400
add esp, 0x14
test eax, eax
js 0x45acd5
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x45aca0
cmp eax, 0xfffffffe
jne 0x4620c1
cmp dword [ebp + 0x88], 0
je 0x4620c1
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x4620c1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4620c1
jmp 0x458ec6
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.00466400
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x45ad99
cmp eax, 0xfffffffe
jne 0x45ad45
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x46269d.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x46269d.14
cmp eax, dword [ebp + 0x84]
jbe case.0x46269d.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x46269d.14
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x4617c4
add dword [esi + 8], eax
jmp 0x457f5a
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x28], eax
add dword [esi + 0xc], 0x21
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x45adc7
movzx eax, byte [eax + 0x465f14]
jmp dword [eax*4 + 0x465f0c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x45adea
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x45adf5
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x507550]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x50755c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x45ae8c
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x45ae8c
xor ebx, ebx
cmp cl, 0x69
sete bl
xor eax, eax
cmp cl, 0x6d
mov dword [esp + 0x84], ebx
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x45ae72
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x45ae8c
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x45afec
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x45b041
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x45af9c
test bl, 0x20
jne 0x45aeea
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45af99
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45af11
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x45af97
test bl, 8
jne 0x45af34
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45af97
test bl, 4
jne 0x45af63
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45af97
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x45afad
cmp dword [esi + 0x9c], 0x6e
jmp 0x45afc2
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45aeb0
jmp 0x45b033
cmp dword [ebp + 0x88], 0
je case.0x45eee6.14
mov eax, dword [esi + 8]
jmp 0x459505
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x45b03a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45afd7
movzx edi, byte [eax]
mov edx, 1
inc eax
mov ecx, edi
mov dword [esi + 8], eax
and ecx, 7
mov eax, dword [esi + 0x28]
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45b000
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x457f5a
test ebx, ebx
je 0x45b06a
test edx, edx
jne 0x4652d7
mov dword [esi + 0x84], eax
jmp 0x46215b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x45b222
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x45b20f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x45b1e7
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x45b196
test bl, 0x20
jne 0x45b0db
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x45b196
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45b103
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x45b18c
and eax, 0x3f
test bl, 8
jne 0x45b129
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x45b18c
test bl, 4
jne 0x45b158
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x45b18c
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0xff
jbe 0x45b1a7
cmp dword [esi + 0x9c], 0x6e
jmp 0x45b1bc
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x45b20f
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x45b091
jmp 0x45b20f
cmp dword [ebp + 0x88], 0
je 0x45b20f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45b20f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x46311c
jmp 0x457f5a
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x45b29a
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x45b272
movzx edi, byte [ebx]
mov edx, 1
mov eax, dword [esi + 0x28]
mov ecx, edi
and ecx, 7
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x45b29a
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x45b231
jmp 0x45b29a
cmp dword [ebp + 0x88], 0
je 0x45b29a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45b29a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x46219b
jmp 0x457f5a
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x45b2e5
movzx eax, byte [eax + 0x465f28]
jmp dword [eax*4 + 0x465f20]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x45b308
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x45b313
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x507550]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x50755c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x45b3aa
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x45b3aa
xor eax, eax
cmp cl, 0x69
sete al
mov dword [esp + 0x84], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x45b390
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x45b3aa
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x45b4e5
jmp 0x45b3c0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x45b4ba
cmp edx, 0xc0
jb 0x45b4ba
test dl, 0x20
jne 0x45b408
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45b4b7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45b42f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45b4b5
test dl, 8
jne 0x45b452
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45b4b5
test dl, 4
jne 0x45b481
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45b4b5
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.00467680
add esp, 0xc
test eax, eax
je case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45b3c0
jmp 0x45b4ec
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x457f61
cmp dword [esp + 0x84], 0
jne 0x4652e8
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x45b67d
jmp 0x45b530
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x45b653
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x45b61b
cmp edx, 0xc0
jb 0x45b61b
test dl, 0x20
jne 0x45b57c
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x45b61b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x45b59b
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x45b611
and eax, 0x3f
test dl, 8
jne 0x45b5bb
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x45b611
test dl, 4
jne 0x45b5e4
and edx, 3
mov ebx, 5
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x45b611
and edx, ebx
mov ebx, 6
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, ecx
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.00467680
add esp, 0xc
test eax, eax
je 0x45b67d
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x45b530
jmp 0x45b67d
cmp dword [ebp + 0x88], 0
je 0x45b676
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45b676
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x458ec6
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x457f61
jmp 0x462f31
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x45b869
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x45b7f0
test al, 0x20
jne 0x45b6f0
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x45b7f0
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x45b72a
mov eax, dword [esi + 0x80]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x45b7f0
test al, 8
jne 0x45b766
mov eax, dword [esi + 0x80]
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x45b7f0
test al, 4
mov eax, dword [esi + 0x80]
jne 0x45b7ab
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x45b7f0
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 8]
sub eax, edx
mov ecx, dword [esi + 0x88]
cmp ecx, eax
jle 0x45b829
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
cmp edx, edi
jb case.0x45eee6.14
cmp edx, dword [ebp + 0x84]
jbe case.0x45eee6.14
jmp 0x458eb2
test ecx, ecx
jle 0x45b85e
lea ecx, [ecx]
lea eax, [ecx - 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov bl, byte [eax]
mov dl, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc dword [esi + 0xc]
cmp bl, dl
jne case.0x45eee6.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x45b830
dec dword [esi + 0x88]
jmp 0x457f5a
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x45b8b6
cmp dword [ebp + 0x88], ebx
je 0x45871d
cmp edi, dword [ebp + 0x84]
jbe 0x45871d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x45871d
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617c0
mov eax, dword [esi + 0xc]
mov cl, byte [edi]
mov dl, byte [eax + 1]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dl, cl
je 0x45bbcb
jmp 0x458d5b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x459570
cmp dword [esp + 0x8c], ebx
je 0x45bbac
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x45ba3b
test al, 0x20
jne 0x45b93b
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x45ba3b
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x45b975
mov eax, dword [esi + 0x80]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x45ba3b
test al, 8
jne 0x45b9b1
mov eax, dword [esi + 0x80]
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x45ba3b
test al, 4
mov eax, dword [esi + 0x80]
jne 0x45b9f6
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x45ba3b
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [esi + 0x80]
mov eax, dword [esi + 8]
cmp edi, 0x80
jae 0x45ba69
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x458d5b
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x457f5a
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x45bb4b
test bl, 0x20
jne 0x45ba99
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45bb48
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45bac0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x45bb46
test bl, 8
jne 0x45bae3
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45bb46
test bl, 4
jne 0x45bb12
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45bb46
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
mov edi, dword [esi + 0x80]
cmp edi, ebx
je 0x457f5a
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x45bb85
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
mov eax, dword [eax*8 + 0x508204]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x457f61
jmp 0x458d5b
mov eax, dword [esi + 0xc]
mov edx, dword [ebp + 0x38]
movzx ecx, byte [edi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne 0x458d5b
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x457f5a
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x45bcfd
mov dword [esp + 0x80], 1
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x28
je 0x45bc34
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x45bc3f
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x45bcfd
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45bd04
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x45bd04
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x45bd04
mov ecx, dword [esi + 0xc]
cmp edx, 0x2e
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x2e
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov eax, edx
and eax, 1
mov dword [esp + 0x84], eax
movsx eax, byte [edx + 0x507550]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x50755c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x45bcfd
mov dword [esi + 0x8c], 0x7fffffff
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x45c178
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x45be4b
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x45bd61
movzx eax, byte [eax + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x45be4b
test bl, 0x10
jne 0x45bd96
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 0xc]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x45be4b
mov ecx, dword [esi + 0xc]
movzx edx, byte [eax + 1]
and edx, 0x3f
movzx eax, byte [ecx + 2]
and eax, 0x3f
test bl, 8
jne 0x45bdd4
and ebx, 7
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x45be4b
test bl, 4
jne 0x45be0d
and ebx, 3
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x45be4b
and ebx, 1
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
cmp dword [esi + 0x88], 1
jle 0x45c187
cmp dword [esi + 0x9c], 0x2e
jb 0x45bebc
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x45be93
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
mov ecx, dword [eax*8 + 0x508204]
add ecx, edi
cmp ecx, edi
je 0x45bebc
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.00467620
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x45bec3
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x45bff6
jmp 0x45bee0
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x90], ecx
cmp edi, eax
ja 0x45bf64
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x45bf18
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x45bf21
add ecx, 4
add edx, 4
sub edi, 4
jae 0x45bf07
cmp edi, 0xfffffffc
je 0x45bfd8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x45bf5a
cmp edi, 0xfffffffd
je 0x45bfd8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x45bf5a
cmp edi, 0xfffffffe
je 0x45bfd8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x45bf5a
cmp edi, 0xffffffff
je 0x45bfd8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x45bfd8
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x45ac6c
sub ecx, ebx
cmp edi, ecx
ja 0x45ac6c
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x45bf96
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x45bf9b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x45bf85
cmp edi, 0xfffffffc
je 0x45bfd8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x45ac6c
cmp edi, 0xfffffffd
je 0x45bfd8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x45ac6c
cmp edi, 0xfffffffe
je 0x45bfd8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x45ac6c
cmp edi, 0xffffffff
je 0x45bfd8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x45ac6c
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x45bee0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x457f61
cmp dword [esp + 0x84], 0
jne 0x4652f9
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x45c165
lea esp, [esp]
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x84], ecx
cmp edi, eax
ja 0x45c0bc
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x45c078
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x45c081
add ecx, 4
add edx, 4
sub edi, 4
jae 0x45c067
cmp edi, 0xfffffffc
je 0x45c118
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x45c0b2
cmp edi, 0xfffffffd
je 0x45c118
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x45c0b2
cmp edi, 0xfffffffe
je 0x45c118
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x45c0b2
cmp edi, 0xffffffff
je 0x45c118
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x45c118
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x45c138
sub ecx, ebx
cmp edi, ecx
ja 0x45c138
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x45c0e6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x45c0eb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x45c0d5
cmp edi, 0xfffffffc
je 0x45c118
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x45c138
cmp edi, 0xfffffffd
je 0x45c118
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x45c138
cmp edi, 0xfffffffe
je 0x45c118
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x45c138
cmp edi, 0xffffffff
je 0x45c118
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x45c138
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x45c040
jmp 0x45c165
cmp dword [ebp + 0x88], 0
je 0x45c165
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x45c165
cmp eax, dword [ebp + 0x84]
jbe 0x45c165
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x4632dc
jmp 0x457f5a
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x45c27f
mov ecx, dword [ebp + 0x3c]
mov edx, 1
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
cmp dword [esi + 0x90], edx
jl 0x45c1e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45afd7
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x45c1d7
cmp dword [esi + 0x94], ecx
jne case.0x45eee6.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x45c1b4
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x457f5a
cmp dword [esp + 0x84], 0
je 0x45c20b
mov dword [esi + 0x84], eax
jmp 0x46223b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x45c272
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45c24a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x45c23b
cmp dword [esi + 0x94], ecx
jne 0x45c272
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x45c220
jmp 0x45c272
cmp dword [ebp + 0x88], 0
je 0x45c272
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45c272
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
test edi, edi
je 0x46227b
jmp 0x457f5a
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x45c2ba
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45c290
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x457f61
cmp dword [esp + 0x84], 0
je 0x45c2e8
mov dword [esi + 0x84], eax
jmp 0x462308
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x45c34c
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45c324
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x45c34c
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x45c300
jmp 0x45c34c
cmp dword [ebp + 0x88], 0
je 0x45c34c
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45c34c
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x462348
jmp 0x457f61
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x45c384
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x45eee6.14
jmp 0x458eb2
test edi, edi
je 0x45c5fc
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 0xc], edx
cmp ebx, 0xc0
jb 0x45c485
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x45c3c2
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45c482
test bl, 0x10
jne 0x45c3e3
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x45c482
test bl, 8
jne 0x45c40e
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [edx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add dword [esi + 0xc], 3
jmp 0x45c485
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x45c447
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x45c482
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esp + 0x80], edx
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45c578
test dl, 0x20
jne 0x45c4bf
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45c56e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45c4e6
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45c56c
test dl, 8
jne 0x45c509
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45c56c
test dl, 4
jne 0x45c538
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45c56c
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esp + 0x80], edx
mov dword [esi + 8], eax
cmp dword [esi + 0x9c], 0x1f
jne 0x45c595
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x457f61
jmp 0x458d5b
cmp ebx, 0x7f
jbe 0x45c5d2
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x45c5bd
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
mov ecx, dword [eax*8 + 0x508204]
add ecx, ebx
jmp 0x45c5d9
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x458d5b
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x457f61
jmp 0x458d5b
mov eax, dword [esi + 0xc]
movzx edi, byte [ecx]
movzx edx, byte [eax + 1]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp edx, edi
je case.0x45eee6.14
cmp dword [esi + 0x9c], 0x20
jne 0x45bbcb
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x45eee6.14
add dword [esi + 0xc], 2
jmp 0x457f5a
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x45c796
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x42
je 0x45c69b
cmp al, 0x4f
je 0x45c69b
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x45c796
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x45c796
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45c796
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45c796
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45c796
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x45c796
mov ecx, dword [esi + 0xc]
cmp edx, 0x48
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x48
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x84], ebx
movsx eax, byte [edx + 0x507550]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x50755c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x45c796
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x8c]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
mov edi, dword [esi + 0xc]
test edx, edx
je 0x45c8f1
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x45c8f1
test al, 0x20
jne 0x45c7e8
movzx ecx, byte [edi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0xc]
jmp 0x45c8f1
test al, 0x10
jne 0x45c81b
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 2
jmp 0x45c8f1
test al, 8
jne 0x45c85d
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 7
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [esi + 0xc]
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 3
jmp 0x45c8f1
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x45c8a8
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 4
jmp 0x45c8ea
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 5
mov edx, dword [esp + 0x8c]
cmp dword [esi + 0x9c], 0x48
jb 0x45cd15
test edx, edx
je 0x45c94c
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x45c94c
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x45c930
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
mov eax, dword [eax*8 + 0x508204]
add eax, edi
jmp 0x45c959
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x45caa0
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x45caeb
jmp 0x45c980
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x45ca79
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x45c9ba
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x45ca76
test cl, 0x10
jne 0x45c9db
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 0x45ca76
test cl, 8
jne 0x45ca05
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 0x45ca76
test cl, 4
jne 0x45ca3b
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 0x45ca76
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
je case.0x45eee6.14
cmp dword [esi + 0x94], ecx
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45c980
jmp 0x45cae4
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x45cae4
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45afd7
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x45eee6.14
cmp dword [esi + 0x94], ecx
je case.0x45eee6.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x45cab0
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x457f5a
test ebx, ebx
je 0x45cb14
test edx, edx
jne 0x46530a
mov dword [esi + 0x84], eax
jmp 0x4623df
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x45cc9d
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x45cc8a
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x45cc62
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x45cc3e
test dl, 0x20
jne 0x45cb72
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x45cc3e
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x45cb9c
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x45cc3c
test dl, 8
jne 0x45cbc8
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x45cc3c
test dl, 4
jne 0x45cc00
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x45cc3c
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x45cc8a
cmp dword [esi + 0x94], edx
je 0x45cc8a
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x45cb34
jmp 0x45cc8a
cmp dword [ebp + 0x88], 0
je 0x45cc8a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45cc8a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x4634bc
jmp 0x457f5a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x45cd02
jmp 0x45ccb0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45ccda
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x45cd02
cmp dword [esi + 0x94], ecx
je 0x45cd02
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x45ccb0
jmp 0x45cd02
cmp dword [ebp + 0x88], 0
je 0x45cd02
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45cd02
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x46241f
jmp 0x457f5a
test edx, edx
je 0x45ce37
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x45ce75
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45ce1c
test dl, 0x20
jne 0x45cd6a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45ce19
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45cd91
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45ce17
test dl, 8
jne 0x45cdb4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45ce17
test dl, 4
jne 0x45cde3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45ce17
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45cd30
jmp 0x45ce6e
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x45ce75
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45ce44
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x457f5a
cmp dword [esp + 0x84], 0
je 0x45cea4
test edx, edx
jne 0x46531f
mov dword [esi + 0x84], eax
jmp 0x4624ac
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x45d028
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x45d015
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x45cfed
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x45cfd1
test dl, 0x20
jne 0x45cf02
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x45cfd1
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x45cf2c
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x45cfcf
test dl, 8
jne 0x45cf5b
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x45cfcf
test dl, 4
jne 0x45cf93
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x45cfcf
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x45d015
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x45cec4
jmp 0x45d015
cmp dword [ebp + 0x88], 0
je 0x45d015
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45d015
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x463680
jmp 0x457f5a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x45d082
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45d05a
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x45d082
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x45d036
jmp 0x45d082
cmp dword [ebp + 0x88], 0
je 0x45d082
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x45d082
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x4624ec
jmp 0x457f5a
mov eax, dword [esi + 0xc]
mov dword [esp + 0x84], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x45d1d4
mov dword [esi + 0x90], ebx
xor edx, edx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x5c
sete dl
add eax, 3
mov dword [esp + 0x84], edx
mov dword [esi + 0xc], eax
jmp 0x45d1d4
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45d1d4
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45d1d4
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x45d1d4
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x45d1d4
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x5074fb]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x507507]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x45d1d4
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x7c], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x7c]
cmp ecx, 0x10
je 0x45d1f6
cmp ecx, 0xf
je 0x45d1f6
mov dword [esi + 0x60], 0xffffffff
jmp 0x45d219
xor eax, eax
cmp ecx, 0xf
sete al
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x60], eax
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x64], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x90]
test ecx, ecx
jle 0x45f1bb
mov eax, dword [esi + 0x60]
test eax, eax
js 0x45dfc8
cmp eax, 0xa
ja case.default.0x45a4da
jmp dword [eax*4 + 0x465f34]
cmp dword [esi + 0x68], ebx
jne 0x458d5b
mov edx, 1
cmp ecx, edx
jl 0x45f1bb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x45d29f
cmp ecx, 0xc0
jb 0x45d29f
test cl, 0x20
jne 0x45d27b
inc eax
jmp 0x45d29c
test cl, 0x10
jne 0x45d285
add eax, 2
jmp 0x45d29c
test cl, 8
jne 0x45d28f
add eax, 3
jmp 0x45d29c
test cl, 4
jne 0x45d299
add eax, 4
jmp 0x45d29c
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x45d258
jmp 0x45f1bb
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
mov eax, dword [esi + 8]
jmp 0x459505
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45d3ca
cmp ebx, 0xc0
jb 0x45d3ca
test bl, 0x20
jne 0x45d318
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45d3c7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45d33f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x45d3c5
test bl, 8
jne 0x45d362
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45d3c5
test bl, 4
jne 0x45d391
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45d3c5
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45d3ec
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp eax, 9
je 0x45d411
cmp eax, 5
je 0x45d411
cmp eax, 8
je 0x45d411
xor eax, eax
jmp 0x45d416
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45d2d0
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45d538
cmp ebx, 0xc0
jb 0x45d538
test bl, 0x20
jne 0x45d488
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45d535
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45d4af
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x45d535
test bl, 8
jne 0x45d4d2
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 0x45d535
test bl, 4
jne 0x45d501
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 0x45d535
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45d55a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45d440
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45d69b
cmp ebx, 0xc0
jb 0x45d69b
test bl, 0x20
jne 0x45d5eb
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45d698
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45d612
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x45d698
test bl, 8
jne 0x45d635
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 0x45d698
test bl, 4
jne 0x45d664
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 0x45d698
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45d6bd
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45d5a3
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45d7f8
cmp ebx, 0xc0
jb 0x45d7f8
test bl, 0x20
jne 0x45d748
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45d7f5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45d76f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x45d7f5
test bl, 8
jne 0x45d792
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 0x45d7f5
test bl, 4
jne 0x45d7c1
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 0x45d7f5
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45d81a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508200]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45d700
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45d95a
cmp ebx, 0xc0
jb 0x45d95a
test bl, 0x20
jne 0x45d8a8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45d957
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45d8cf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x45d955
test bl, 8
jne 0x45d8f2
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45d955
test bl, 4
jne 0x45d921
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45d955
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45d97c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x45d9a3
cmp eax, 3
je 0x45d9a3
xor eax, eax
jmp 0x45d9a8
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45d860
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45daca
cmp ebx, 0xc0
jb 0x45daca
test bl, 0x20
jne 0x45da18
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45dac7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45da3f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x45dac5
test bl, 8
jne 0x45da62
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x45dac5
test bl, 4
jne 0x45da91
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x45dac5
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x45db0d
je case.0x45db29.8192
cmp ebx, 0x85
ja 0x45daf9
je case.0x45db29.8192
cmp ebx, 9
jb case.0x45db29.8203
cmp ebx, 0xd
jbe case.0x45db29.8192
cmp ebx, 0x20
jmp 0x45db3e
cmp ebx, 0xa0
je case.0x45db29.8192
cmp ebx, 0x1680
jmp 0x45db3e
cmp ebx, 0x202f
ja 0x45db30
je case.0x45db29.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x45db29.8203
movzx eax, byte [eax + 0x465f68]
jmp dword [eax*4 + 0x465f60]
cmp ebx, 0x205f
je case.0x45db29.8192
cmp ebx, 0x3000
je case.0x45db29.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45db62
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp dword [eax*4 + 0x508010], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x45eee6.14
jmp 0x45db96
cmp dword [esi + 0x68], 0
jne case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45d9d0
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1bb
jmp 0x45dbc0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x45dcb8
cmp ebx, 0xc0
jb 0x45dcb8
test bl, 0x20
jne 0x45dc08
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45dcb5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45dc2f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x45dcb5
test bl, 8
jne 0x45dc52
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 0x45dcb5
test bl, 4
jne 0x45dc81
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 0x45dcb5
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x45dcdb
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x45dd07
cmp eax, 3
je 0x45dd07
cmp ebx, 0x5f
je 0x45dd07
xor eax, eax
jmp 0x45dd0c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x45eee6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45dbc0
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1bb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x45de2c
cmp edx, 0xc0
jb 0x45de2c
test dl, 0x20
jne 0x45dd7c
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45de29
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45dda3
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x45de29
test dl, 8
jne 0x45ddc6
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 0x45de29
test dl, 4
jne 0x45ddf5
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 0x45de29
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x5080c0]
lea eax, [eax*4 + 0x5080c0]
cmp edx, ecx
jb 0x45de4e
lea eax, [eax + 4]
cmp edx, ecx
je 0x45de6a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x45de41
cmp dword [esi + 0x68], 0
je case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45dd34
jmp 0x45f1bb
cmp dword [esi + 0x68], 0
jne case.0x45eee6.14
jmp 0x45de58
mov ebx, 1
cmp ecx, ebx
jl 0x45f1bb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x45df7d
cmp edx, 0xc0
jb 0x45df7d
test dl, 0x20
jne 0x45decb
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45df7a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45def2
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45df78
test dl, 8
jne 0x45df15
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45df78
test dl, 4
jne 0x45df44
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45df78
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x24
je 0x45dfa8
cmp edx, 0x40
je 0x45dfa8
cmp edx, 0x60
je 0x45dfa8
cmp edx, 0xa0
jb 0x45df9c
cmp edx, 0xd7ff
jbe 0x45dfa8
cmp edx, 0xe000
jae 0x45dfa8
xor eax, eax
jmp 0x45dfad
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45de83
jmp 0x45f1bb
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x45e2f3
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x45f1bb
jmp 0x45dff0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45afd7
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x45e0f0
cmp ebx, 0xc0
jb 0x45e0f0
test bl, 0x20
jne 0x45e039
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x45e0ed
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x45e060
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x45e0e6
test bl, 8
jne 0x45e083
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 0x45e0e6
test bl, 4
jne 0x45e0b2
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 0x45e0e6
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45e112
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508202]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45e2ad
jmp 0x45e140
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x45e23e
cmp ebx, 0xc0
jb 0x45e23e
test bl, 0x20
jne 0x45e175
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x45e236
test bl, 0x10
jne 0x45e19a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x45e236
test bl, 8
jne 0x45e1c8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x45e236
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x45e202
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x45e236
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45e260
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx ecx, byte [eax*8 + 0x508202]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x508088], eax
je 0x45e2a6
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x45e140
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x45e2da
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x45e2da
cmp eax, dword [ebp + 0x84]
jbe 0x45e2da
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x45dff0
jmp 0x45f1bb
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x45edbf
cmp eax, 0xf
ja case.0x461307.9
jmp dword [eax*4 + 0x465f94]
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x45afd7
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x45e357
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne case.0x45eee6.14
jmp 0x45e37b
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x45e37b
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x45e37b
cmp edx, 1
je case.0x45eee6.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x45eee6.14
cmp dword [ebp + 0x88], 0
je 0x45e3b6
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x45e3b6
cmp dword [ebp + 0x18], 0
jne 0x45e3b6
cmp dword [edi], 2
jne 0x45e3b6
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x45e3b6
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45e3d2
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x45e3d2
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x45e3c1
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45e322
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x45d2ad
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x45e428
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x45e428
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x45e410
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45e3f4
jmp 0x45f1bb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x458d5b
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45e54c
test dl, 0x20
jne 0x45e49a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45e549
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45e4c1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45e547
test dl, 8
jne 0x45e4e4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45e547
test dl, 4
jne 0x45e513
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45e547
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0xd
ja 0x45e570
je 0x45e55d
cmp edx, 0xa
je 0x45e591
lea eax, [edx - 0xb]
jmp 0x45e57e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45e591
cmp byte [eax], 0xa
jne 0x45e591
inc eax
mov dword [esi + 8], eax
jmp 0x45e591
cmp edx, 0x85
je 0x45e587
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x45eee6.14
cmp dword [ebp + 0x68], 0
jne case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45e460
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45e69c
test dl, 0x20
jne 0x45e5ea
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45e699
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45e611
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45e697
test dl, 8
jne 0x45e634
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45e697
test dl, 4
jne 0x45e663
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45e697
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x45e6ce
je case.0x45eee6.14
cmp edx, 0xa0
ja 0x45e6c6
je case.0x45eee6.14
cmp edx, 9
je case.0x45eee6.14
cmp edx, 0x20
jmp 0x45e6fe
cmp edx, 0x1680
jmp 0x45e6fe
cmp edx, 0x205f
ja 0x45e6f8
je case.0x45eee6.14
cmp edx, 0x2000
jb 0x45e704
cmp edx, 0x200a
jbe case.0x45eee6.14
cmp edx, 0x202f
jmp 0x45e6fe
cmp edx, 0x3000
je case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45e5b0
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45e80f
test dl, 0x20
jne 0x45e75d
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45e80c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45e784
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45e80a
test dl, 8
jne 0x45e7a7
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45e80a
test dl, 4
jne 0x45e7d6
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45e80a
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x45e835
je 0x45e867
cmp edx, 0xa0
ja 0x45e82d
je 0x45e867
cmp edx, 9
je 0x45e867
cmp edx, 0x20
jmp 0x45e861
cmp edx, 0x1680
jmp 0x45e861
cmp edx, 0x205f
ja 0x45e85b
je 0x45e867
cmp edx, 0x2000
jb case.0x45eee6.14
cmp edx, 0x200a
jbe 0x45e867
cmp edx, 0x202f
jmp 0x45e861
cmp edx, 0x3000
jne case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45e723
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
jmp 0x45e890
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45e97c
test dl, 0x20
jne 0x45e8ca
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45e979
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45e8f1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45e977
test dl, 8
jne 0x45e914
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45e977
test dl, 4
jne 0x45e943
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45e977
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x45e994
je case.0x45eee6.14
cmp edx, 0xa
jb 0x45e9a8
cmp edx, 0xd
jmp 0x45e9a2
cmp edx, 0x2028
jb 0x45e9a8
cmp edx, 0x2029
jbe case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45e890
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
jmp 0x45e9d0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45eabc
test dl, 0x20
jne 0x45ea0a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45eab9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45ea31
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45eab7
test dl, 8
jne 0x45ea54
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45eab7
test dl, 4
jne 0x45ea83
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45eab7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x45eace
je 0x45eadd
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x45ead7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45e9d0
jmp 0x45f1bb
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x45afd7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x45ebec
test dl, 0x20
jne 0x45eb3a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x45ebe9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x45eb61
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x45ebe7
test dl, 8
jne 0x45eb84
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x45ebe7
test dl, 4
jne 0x45ebb3
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x45ebe7
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x80
jae 0x45ec01
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x45eee6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45eb00
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45d2ad
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x45eee6.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x45eee6.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45ec20
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x45d2ad
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x45ec93
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x45eee6.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x45ecb8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x45ecb8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x45eca0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45ec70
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45d2ad
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x45eee6.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x45eee6.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45ecd3
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x45d2ad
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x45ed43
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x45eee6.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x45ed68
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x45ed68
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x45ed50
inc edi
cmp edi, dword [esi + 0x90]
jle 0x45ed20
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45d2ad
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x45eee6.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x45eee6.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45ed83
jmp 0x45f1bb
cmp eax, 0xf
ja case.0x461307.9
jmp dword [eax*4 + 0x465fd4]
mov ebx, 1
cmp ecx, ebx
jl 0x45f1c2
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x45afd7
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x45ee10
push 0
push edi
push eax
push edx
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne case.0x45eee6.14
jmp 0x45ee34
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x45ee34
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x45ee34
cmp edx, 1
je case.0x45eee6.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x45eee6.14
cmp dword [ebp + 0x88], 0
je 0x45ee6f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x45ee6f
cmp dword [ebp + 0x18], 0
jne 0x45ee6f
cmp dword [edi], 2
jne 0x45ee6f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x45ee6f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x45ede0
jmp 0x45f1bb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x45e446
cmp dword [ebp + 0x88], ebx
je case.0x45eee6.14
cmp edx, dword [ebp + 0x84]
jbe case.0x45eee6.14
jmp 0x458eb2
mov edx, 1
cmp ecx, edx
jl 0x45f1bb
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x45d2ad
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x45eee6.14
movzx eax, byte [eax + 0x466024]
jmp dword [eax*4 + 0x466014]
cmp ecx, dword [ebp + 0x78]
jae case.0x45eee6.10
cmp byte [ecx], 0xa
jne case.0x45eee6.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x45eee6.10
cmp dword [ebp + 0x68], ebx
jne case.0x45eee6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x45eec0
jmp 0x45f1bb
mov edx, 1
cmp ecx, edx
jl 0x45f1bb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x45eee6.14
cmp ecx, 0x20
je case.0x45eee6.14
cmp ecx, 0xa0
je case.0x45eee6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x45ef23
jmp 0x45f1bb
mov edx, 1
cmp ecx, edx
jl 0x45f1bb
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x45ef99
cmp ecx, 0x20
je 0x45ef99
cmp ecx, 0xa0
jne case.0x45eee6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x45ef70
jmp 0x45f1bb
mov edx, 1
cmp ecx, edx
jl 0x45f1bb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x45efe1
cmp ecx, 0xd
jle case.0x45eee6.14
cmp ecx, 0x85
je case.0x45eee6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x45efb4
jmp 0x45f1bb
mov edx, 1
cmp ecx, edx
jl 0x45f1bb
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x45eee6.14
cmp ecx, 0xd
jle 0x45f02d
cmp ecx, 0x85
jne case.0x45eee6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x45f000
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
jmp 0x45f050
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x45eee6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45f050
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x45eee6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45f090
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x45eee6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45f0d0
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x45eee6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45f110
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
jmp 0x45f150
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x45eee6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45f150
jmp 0x45f1bb
mov edi, 1
cmp ecx, edi
jl 0x45f1c2
jmp 0x45f190
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x45d2ad
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x45eee6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x45f190
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x457f5a
cmp dword [esp + 0x84], 0
je 0x45f222
mov eax, dword [esi + 0x60]
test eax, eax
js 0x45f205
cmp eax, 0xa
ja case.0x461307.9
jmp dword [eax*4 + 0x4660a0]
mov esi, dword [esi]
test esi, esi
je case.default.0x4617d4
mov edi, 0xfffffff2
jmp 0x4617c0
cmp dword [esi + 0x7c], 0x16
je 0x4653f3
test edx, edx
jne 0x4653de
mov dword [esi + 0x84], ecx
jmp 0x462655
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x46025b
cmp eax, 0xa
ja case.0x461307.9
jmp dword [eax*4 + 0x4660cc]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x460248
mov ebx, dword [esp + 0x8c]
jmp 0x45f260
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x45f2cb
movzx ecx, byte [edx]
test ebx, ebx
je 0x45f2ae
cmp ecx, 0xc0
jb 0x45f2ae
test cl, 0x20
jne 0x45f288
mov eax, 2
jmp 0x45f2ae
test cl, 0x10
jne 0x45f294
mov eax, 3
jmp 0x45f2ae
test cl, 8
jne 0x45f2a0
mov eax, 4
jmp 0x45f2ae
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x460248
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x45f260
jmp 0x460248
cmp dword [ebp + 0x88], 0
je 0x460248
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x460248
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x460248
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x4617c0
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x45f48e
movzx ebx, byte [edi]
test edx, edx
je 0x45f40c
cmp ebx, 0xc0
jb 0x45f40c
test bl, 0x20
jne 0x45f36e
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x45f404
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45f38d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x45f404
and eax, 0x3f
test bl, 8
jne 0x45f3ad
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x45f404
test bl, 4
jne 0x45f3d6
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x45f404
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45f42e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp eax, 9
je 0x45f453
cmp eax, 5
je 0x45f453
cmp eax, 8
je 0x45f453
xor eax, eax
jmp 0x45f458
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x460248
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x45f330
jmp 0x460248
cmp dword [ebp + 0x88], 0
je 0x460248
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x460248
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x460248
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617c0
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
jmp 0x45f4f0
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x45f672
movzx ebx, byte [edi]
test edx, edx
je 0x45f5f3
cmp ebx, 0xc0
jb 0x45f5f3
test bl, 0x20
jne 0x45f53a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x45f5eb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45f562
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x45f5eb
and eax, 0x3f
test bl, 8
jne 0x45f588
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x45f5eb
test bl, 4
jne 0x45f5b7
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x45f5eb
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45f615
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x460248
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x45f4f0
jmp 0x460248
cmp dword [ebp + 0x88], 0
je 0x460248
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x460248
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x45f4b3
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x45f672
movzx ebx, byte [edi]
test edx, edx
je 0x45f7bf
cmp ebx, 0xc0
jb 0x45f7bf
test bl, 0x20
jne 0x45f706
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x45f7b7
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45f72e
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x45f7b7
and eax, 0x3f
test bl, 8
jne 0x45f754
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x45f7b7
test bl, 4
jne 0x45f783
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x45f7b7
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45f7e1
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x460248
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x45f6c0
jmp 0x460248
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x45f672
movzx ebx, byte [edi]
test edx, edx
je 0x45f953
cmp ebx, 0xc0
jb 0x45f953
test bl, 0x20
jne 0x45f89a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x45f94b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45f8c2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x45f94b
and eax, 0x3f
test bl, 8
jne 0x45f8e8
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x45f94b
test bl, 4
jne 0x45f917
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x45f94b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45f975
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508200]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x460248
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x45f850
jmp 0x460248
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x45f48e
movzx ebx, byte [edi]
test edx, edx
je 0x45fac3
cmp ebx, 0xc0
jb 0x45fac3
test bl, 0x20
jne 0x45fa22
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x45fabb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45fa44
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x45fabb
and eax, 0x3f
test bl, 8
jne 0x45fa64
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x45fabb
test bl, 4
jne 0x45fa8d
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x45fabb
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45fae5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x45fb0c
cmp eax, 3
je 0x45fb0c
xor eax, eax
jmp 0x45fb11
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x460248
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x45f9e4
jmp 0x460248
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x45f672
movzx ebx, byte [edi]
test edx, edx
je 0x45fc6d
cmp ebx, 0xc0
jb 0x45fc6d
test bl, 0x20
jne 0x45fbb2
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x45fc6d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45fbda
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x45fc63
and eax, 0x3f
test bl, 8
jne 0x45fc00
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x45fc63
test bl, 4
jne 0x45fc2f
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x45fc63
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0x180e
ja 0x45fcb0
je case.0x45fcd0.8192
cmp ebx, 0x85
ja 0x45fc9c
je case.0x45fcd0.8192
cmp ebx, 9
jb case.0x45fcd0.8203
cmp ebx, 0xd
jbe case.0x45fcd0.8192
cmp ebx, 0x20
jmp 0x45fce5
cmp ebx, 0xa0
je case.0x45fcd0.8192
cmp ebx, 0x1680
jmp 0x45fce5
cmp ebx, 0x202f
ja 0x45fcd7
je case.0x45fcd0.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x45fcd0.8203
movzx eax, byte [eax + 0x466100]
jmp dword [eax*4 + 0x4660f8]
cmp ebx, 0x205f
je case.0x45fcd0.8192
cmp ebx, 0x3000
je case.0x45fcd0.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x45fd09
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp dword [eax*4 + 0x508010], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x460248
mov edx, dword [esp + 0x8c]
jmp 0x45fd44
cmp dword [esi + 0x68], 0
jne 0x460248
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x45fb60
jmp 0x460248
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x45f672
movzx ebx, byte [edi]
test edx, edx
je 0x45fe93
cmp ebx, 0xc0
jb 0x45fe93
test bl, 0x20
jne 0x45fdda
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x45fe8b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x45fe02
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x45fe8b
and eax, 0x3f
test bl, 8
jne 0x45fe28
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x45fe8b
test bl, 4
jne 0x45fe57
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x45fe8b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x45feb6
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x45fee2
cmp eax, 3
je 0x45fee2
cmp ebx, 0x5f
je 0x45fee2
xor eax, eax
jmp 0x45fee7
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x460248
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x45fd90
jmp 0x460248
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x460248
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x46007f
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x460021
cmp edx, 0xc0
jb 0x460021
test dl, 0x20
jne 0x45ff84
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x460019
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x45ffa3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x460019
and eax, 0x3f
test dl, 8
jne 0x45ffc3
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x460019
test dl, 4
jne 0x45ffec
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 0x460019
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x5080c0]
lea eax, [eax*4 + 0x5080c0]
cmp edx, ecx
jb 0x460043
lea eax, [eax + 4]
cmp edx, ecx
je 0x460073
mov ecx, dword [eax]
cmp edx, ecx
jae 0x460036
cmp dword [esi + 0x68], 0
je 0x460248
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x45ff40
jmp 0x460248
cmp dword [esi + 0x68], 0
jne 0x460248
jmp 0x46004d
cmp dword [ebp + 0x88], 0
je 0x460248
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x460248
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x460248
jmp 0x458ec6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x460248
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x460220
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x4601d7
cmp edx, 0xc0
jb 0x4601d7
test dl, 0x20
jne 0x46010d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4601d7
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x460137
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 0x4601d7
test dl, 8
jne 0x460163
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 0x4601d7
test dl, 4
jne 0x46019b
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 0x4601d7
and edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
cmp edx, 0x24
je 0x460202
cmp edx, 0x40
je 0x460202
cmp edx, 0x60
je 0x460202
cmp edx, 0xa0
jb 0x4601f6
cmp edx, 0xd7ff
jbe 0x460202
cmp edx, 0xe000
jae 0x460202
xor ecx, ecx
jmp 0x460207
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x460248
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4600c1
jmp 0x460248
cmp dword [ebp + 0x88], 0
je 0x460248
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x460248
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
je 0x4646fc
jmp 0x457f5a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x4605f7
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x4605a8
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x460580
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x460380
cmp ebx, 0xc0
jb 0x460380
test bl, 0x20
jne 0x4602c9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x46037d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4602f0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x460376
test bl, 8
jne 0x460313
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 0x460376
test bl, 4
jne 0x460342
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 0x460376
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x4603a2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508202]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x46053d
jmp 0x4603d0
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4604ce
cmp ebx, 0xc0
jb 0x4604ce
test bl, 0x20
jne 0x460405
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4604c6
test bl, 0x10
jne 0x46042a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x4604c6
test bl, 8
jne 0x460458
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x4604c6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x460492
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x4604c6
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x4604f0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx ecx, byte [eax*8 + 0x508202]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x508088], eax
je 0x460536
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x4603d0
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x46056a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x46056a
cmp eax, dword [ebp + 0x84]
jbe 0x46056a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x460280
jmp 0x4605a8
cmp dword [ebp + 0x88], 0
je 0x4605a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4605a8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
cmp dword [esp + 0x80], 0
jne 0x457f5a
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465b25
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b1b
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
add eax, 0xfffffffa
test edx, edx
je 0x4612fe
cmp eax, 0xf
ja case.0x461307.9
jmp dword [eax*4 + 0x46612c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x4606e6
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x460659
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x4612eb
jmp 0x46067d
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x46067d
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x46067d
cmp edx, 1
je 0x4612eb
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4612eb
cmp dword [ebp + 0x88], 0
je 0x4606b8
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4606b8
cmp dword [ebp + 0x18], 0
jne 0x4606b8
cmp dword [edi], 2
jne 0x4606b8
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4606b8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4606d4
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4606d4
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x4606c3
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x460624
jmp 0x4612eb
cmp dword [ebp + 0x88], 0
je 0x4612eb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4612eb
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4612eb
jmp 0x458ec6
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x460778
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x4612eb
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x4606e6
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x46076a
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x46076a
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x460752
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x460740
jmp 0x4612eb
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x4612eb
cmp eax, dword [ebp + 0x84]
jbe 0x4612eb
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4612eb
jmp 0x45f4b9
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x4607ff
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x4612eb
cmp edx, dword [ebp + 0x84]
jbe 0x4612eb
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4612eb
jmp 0x458ec6
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x4606e6
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x46092a
test dl, 0x20
jne 0x46085e
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x46092a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x460888
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x460928
test dl, 8
jne 0x4608b4
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x460928
test dl, 4
jne 0x4608ec
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 5
jmp 0x460928
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp edx, 0xd
jne 0x460946
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x4612eb
cmp byte [eax], 0xa
jne 0x460980
inc eax
jmp 0x46097d
cmp edx, 0xa
je 0x46097b
cmp dword [ebp + 0x68], 0
jne 0x4612eb
cmp edx, 0xb
je 0x46097b
cmp edx, 0xc
je 0x46097b
cmp edx, 0x85
je 0x46097b
cmp edx, 0x2028
je 0x46097b
cmp edx, 0x2029
jne 0x4612eb
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x460820
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x460a78
test dl, 0x20
jne 0x4609da
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x460a70
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4609f9
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x460a70
and eax, 0x3f
test dl, 8
jne 0x460a19
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x460a70
test dl, 4
jne 0x460a42
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 0x460a70
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 0x460a9e
je 0x460acc
cmp edx, 0xa0
ja 0x460a96
je 0x460acc
cmp edx, 9
je 0x460acc
cmp edx, 0x20
jmp 0x460ac6
cmp edx, 0x1680
jmp 0x460ac6
cmp edx, 0x205f
ja 0x460ac0
je 0x460acc
cmp edx, 0x2000
jb 0x460ac8
cmp edx, 0x200a
jbe 0x460acc
cmp edx, 0x202f
jmp 0x460ac6
cmp edx, 0x3000
je 0x460acc
xor edx, edx
jmp 0x460ad1
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4609a4
jmp 0x4612eb
cmp dword [ebp + 0x88], 0
je 0x4612eb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4612eb
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4612eb
jmp 0x458ec6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x460c10
test dl, 0x20
jne 0x460b72
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x460c08
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x460b91
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x460c08
and eax, 0x3f
test dl, 8
jne 0x460bb1
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x460c08
test dl, 4
jne 0x460bda
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 0x460c08
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 0x460c4f
je 0x460c5a
cmp edx, 0xa
jb 0x460c24
cmp edx, 0xd
jbe 0x460c5a
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x460b40
jmp 0x4612eb
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x460c24
mov edx, 1
jmp 0x460c26
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x460d47
test dl, 0x20
jne 0x460ca9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x460d3f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x460cc8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x460d3f
and eax, 0x3f
test dl, 8
jne 0x460ce8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x460d3f
test dl, 4
jne 0x460d11
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 0x460d3f
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 0x460d5c
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x460c73
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
jmp 0x460d90
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x460e64
test dl, 0x20
jne 0x460dc6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x460e5c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x460de5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x460e5c
and eax, 0x3f
test dl, 8
jne 0x460e05
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x460e5c
test dl, 4
jne 0x460e2e
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 0x460e5c
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 0x4612eb
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x460d90
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
jmp 0x460eb0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x460f84
test dl, 0x20
jne 0x460ee6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x460f7c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x460f05
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x460f7c
and eax, 0x3f
test dl, 8
jne 0x460f25
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x460f7c
test dl, 4
jne 0x460f4e
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 0x460f7c
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 0x460f99
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x460eb0
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x461097
test dl, 0x20
jne 0x460ff9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x46108f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x461018
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x46108f
and eax, 0x3f
test dl, 8
jne 0x461038
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x46108f
test dl, 4
jne 0x461061
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 0x46108f
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 0x4612eb
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x460fc3
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4611b4
test dl, 0x20
jne 0x461116
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4611ac
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x461135
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4611ac
and eax, 0x3f
test dl, 8
jne 0x461155
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4611ac
test dl, 4
jne 0x46117e
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 0x4611ac
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 0x4611c9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4610e0
jmp 0x4612eb
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4612eb
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x460afa
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4612c7
test dl, 0x20
jne 0x461229
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4612bf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x461248
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4612bf
and eax, 0x3f
test dl, 8
jne 0x461268
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4612bf
test dl, 4
jne 0x461291
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 0x4612bf
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 0x4612eb
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x4612eb
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4611f3
cmp dword [esp + 0x80], 0
je 0x463bb8
jmp 0x457f5a
cmp eax, 0xf
ja case.0x461307.9
jmp dword [eax*4 + 0x46616c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x461797
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x4613c4
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x461350
push 0
push edi
push eax
push edx
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x461797
jmp 0x461374
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x461374
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x461374
cmp edx, 1
je 0x461797
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x461797
cmp dword [ebp + 0x88], 0
je 0x4613af
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4613af
cmp dword [ebp + 0x18], 0
jne 0x4613af
cmp dword [edi], 2
jne 0x4613af
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4613af
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x461320
jmp 0x461797
cmp dword [ebp + 0x88], 0
je 0x461797
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x461797
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x461797
jmp 0x458ec6
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x461448
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x461797
cmp edx, dword [ebp + 0x84]
jbe 0x461797
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x461797
jmp 0x458ec6
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x461797
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x461797
jmp 0x461470
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4613c4
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x46149b
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x461797
cmp byte [eax], 0xa
jne 0x4614c5
inc eax
jmp 0x4614c2
cmp eax, 0xa
je 0x4614bf
cmp dword [ebp + 0x68], 0
jne 0x461797
cmp eax, 0xb
je 0x4614bf
cmp eax, 0xc
je 0x4614bf
cmp eax, 0x85
jne 0x461797
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x461470
jmp 0x461797
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x461797
jmp 0x4614f0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4613c4
mov al, byte [ecx]
cmp al, 9
je 0x461797
cmp al, 0x20
je 0x461797
cmp al, 0xa0
je 0x461797
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4614f0
jmp 0x461797
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x461797
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4613c4
mov al, byte [ecx]
cmp al, 9
je 0x46155e
cmp al, 0x20
je 0x46155e
cmp al, 0xa0
jne 0x461797
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x461540
jmp 0x461797
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x461797
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4613c4
mov al, byte [ecx]
cmp al, 0xa
jb 0x4615a6
cmp al, 0xd
jbe 0x461797
cmp al, 0x85
je 0x461797
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x461584
jmp 0x461797
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x461797
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4613c4
mov al, byte [ecx]
cmp al, 0xa
jb 0x461797
cmp al, 0xd
jbe 0x4615f2
cmp al, 0x85
jne 0x461797
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4615d0
jmp 0x461797
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x461797
jmp 0x461620
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4613c4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x461797
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x461620
jmp 0x461797
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x461797
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4613c4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x461797
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x461662
jmp 0x461797
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x461797
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4613c4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x461797
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4616a4
jmp 0x461797
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x461797
jmp 0x4616f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4613c4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x461797
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4616f0
jmp 0x461797
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x461797
jmp 0x461730
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4613c4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x461797
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x461730
jmp 0x461797
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x461797
jmp 0x461770
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4613c4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x461797
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x461770
cmp dword [esp + 0x80], 0
je 0x4627fa
jmp 0x457f5a
mov esi, dword [esi]
test esi, esi
je 0x465c71
mov edi, 0xfffffffb
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov eax, dword [esi + 0x130]
dec eax
cmp eax, 0x42
ja case.default.0x4617d4
jmp dword [eax*4 + 0x4661ac]
cmp edi, 0xfffffc1b
je 0x4618a6
cmp edi, 0xfffffc20
jne 0x461823
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x4617d4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x46181f
cmp byte [ecx], 0x77
jne case.0x4617d4.49
xor edi, edi
jmp 0x46182b
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x4618a6
cmp dword [esi + 0x9c], 0x88
jb 0x461871
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4655fa
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4655f0
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
mov esi, dword [esi]
test esi, esi
je 0x461c9c
mov edx, dword [esp + 0x8c]
jmp 0x4617c4
cmp edi, 0xfffffc20
jne 0x461963
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x4619b1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x46192e
cmp byte [ecx], 0x77
jne 0x4619b1
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4619c7
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c4
test edi, edi
je 0x46192e
cmp edi, 0xfffffc1b
jne 0x4619b1
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x4619a3
cmp al, 0x77
jne 0x461994
lea esp, [esp]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x461980
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp + 0xb4]
sub eax, edx
neg eax
sbb eax, eax
and edi, eax
mov esi, dword [esi]
test esi, esi
je 0x461c9c
mov edx, dword [esp + 0x8c]
jmp 0x4617c4
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x461a19
cmp eax, 0x81
je 0x461a19
cmp dword [ebp + 0x6c], 0
jne 0x461a23
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x461a23
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x507ef8]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x457ee0
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov edx, dword [esi + 4]
test edx, edx
jne 0x46561c
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x465612
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
cmp edi, 1
jne 0x461ae3
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x461a80
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x461a93
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x461ac9
mov edx, eax
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], edx
cmp byte [eax], 0x77
je 0x461ab0
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x507ef8]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x45838e.145
test edi, edi
je 0x461af3
cmp edi, 0xfffffc20
jne case.0x4617d4.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x461b09
movzx eax, byte [edx + 0x507ef8]
jmp 0x461b0c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x461b29
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x457f61
cmp dword [esi + 0x9c], 0x8c
jne 0x457ee0
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46563e
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465634
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
cmp edi, 1
je 0x461c22
cmp edi, 0xfffffc19
je 0x461c22
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x461bca
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x4617d4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x461bd2
cmp byte [ecx], 0x77
jmp 0x461bcc
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x461c28
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465657
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46564d
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x461c41
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c4
cmp dword [esi + 0x58], 0
je 0x46527e
mov esi, dword [esi]
test esi, esi
je 0x465c16
mov edi, 1
jmp 0x4617c4
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x461d0d
je 0x461ca6
cmp edi, 0xfffffc19
je 0x462543
cmp edi, 0xfffffc1b
jle case.0x4617d4.49
cmp edi, 0xfffffc1f
jle 0x461cce
mov esi, dword [esi]
test esi, esi
jne 0x4617c4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x461cce
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x461d20
cmp byte [ecx], 0x77
je 0x461d20
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x461cd1
cmp dword [esi + 0x58], 0
je 0x461f57
mov esi, dword [esi]
test esi, esi
je 0x465c16
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x4617c4
mov eax, edi
sub eax, 0
je 0x461d20
dec eax
je 0x462543
jmp case.0x4617d4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
jne 0x461ce8
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46566d
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465663
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call fcn.0044d823
mov eax, dword [esi + 0x4c]
lea ebx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x4652ac
cmp edi, 0xfffffc19
je 0x4652ac
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x461dd9
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x458d5b
push ecx
call dword [0x1144458]
add esp, 4
jmp 0x458d5b
test edi, edi
je 0x461e03
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x461df4
push ecx
call dword [0x1144458]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x461c9c
jmp 0x4617b9
mov dword [ebp + 0xa4], ebx
mov edx, dword [esi + 0x20]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
lea eax, [ecx + edx]
mov dword [esi + 0x20], eax
cmp byte [eax], 0x77
jne 0x461e69
cmp dword [esi + 0x58], 0
je 0x461e34
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4656b3
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4656a9
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x461db9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x461ec3
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465701
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4656f7
mov esi, dword [esi]
test esi, esi
je 0x465bcb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x4617c4
cmp al, 0x88
jb 0x465404
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465723
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465719
mov esi, dword [esi]
test esi, esi
je 0x465bcb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x465c23
mov edi, 0xfffffc1b
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
mov edx, dword [esi + 0x2c]
jmp 0x461f40
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x461f40
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x457f5a
test edi, edi
je 0x4597d4
jmp case.0x4617d4.49
test edi, edi
je 0x461f0f
jmp case.0x4617d4.49
cmp edi, 0xfffffc1b
jne 0x461f8b
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x461f8d
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x462d7b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465745
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46573b
mov esi, dword [esi]
test esi, esi
je 0x465bcb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462000
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.00466400
add esp, 0x14
test eax, eax
jns 0x462067
cmp eax, 0xfffffffe
jne 0x462029
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x463b41
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x463b41
cmp eax, dword [ebp + 0x84]
jbe 0x463b41
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x45ad7e
jmp 0x463b41
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46576a
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465760
mov esi, dword [esi]
test esi, esi
je 0x465bcb
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x45eee6.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465783
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465779
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462127
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x463c26
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
mov edi, ecx
mov edx, dword [esi + 0x28]
and ecx, 7
shr edi, 3
mov eax, 1
shl eax, cl
test byte [edi + edx], al
je 0x463b41
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46579c
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465792
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x458d5b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4657b5
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4657ab
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462201
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x463c26
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x462231
cmp dword [esi + 0x94], ecx
je 0x462231
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c4
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4657ce
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4657c4
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
dec dword [esi + 8]
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4657e7
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4657dd
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4622e1
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x463c26
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x463b41
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465800
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4657f6
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
dec dword [esi + 8]
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465819
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46580f
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4623ae
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x463c26
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x462543
cmp dword [esi + 0x94], ecx
je 0x462543
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465832
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465828
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46584b
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465841
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462485
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x463c26
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x463b41
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465861
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465857
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465877
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46586d
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462554
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c4
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x46259b
cmp dword [ebp + 0x88], 0
je 0x462583
cmp ecx, dword [ebp + 0x84]
jbe 0x462583
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x45ad7e
mov esi, dword [esi]
test esi, esi
je 0x465bd8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x4617c4
cmp dword [esi + 0x7c], 0xc
jne 0x4625c2
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4625e4
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x462601
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x4625dd.15
jmp dword [eax*4 + 0x4662b8]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4625c2
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4625c2
cmp edi, 1
je 0x462601
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x4625c2
mov esi, dword [esi]
test esi, esi
je 0x465bd8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x4617c4
cmp dword [ebp + 0x88], 0
je case.0x4625dd.13
cmp edx, dword [ebp + 0x78]
jb case.0x4625dd.13
cmp dword [ebp + 0x18], 0
jne case.0x4625dd.13
cmp dword [ebp + 0x1c], 2
jne case.0x4625dd.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x4625dd.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x45ad7e
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x46588d
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465883
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x46269d.14
movzx eax, byte [ecx + 0x466308]
jmp dword [eax*4 + 0x4662f8]
cmp edx, dword [ebp + 0x78]
jae case.0x4625dd.13
cmp byte [edx], 0xa
jne case.0x4625dd.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x4625dd.13
cmp dword [ebp + 0x68], 0
je case.0x4625dd.13
jmp case.0x46269d.14
cmp ecx, 9
je case.0x46269d.14
cmp ecx, 0x20
je case.0x46269d.14
cmp ecx, 0xa0
jmp 0x46279a
cmp ecx, 9
je case.0x4625dd.13
cmp ecx, 0x20
je case.0x4625dd.13
cmp ecx, 0xa0
je case.0x4625dd.13
jmp case.0x46269d.14
cmp ecx, 0xa
jb case.0x4625dd.13
cmp ecx, 0xd
jbe case.0x46269d.14
cmp ecx, 0x85
jmp 0x46279a
cmp ecx, 0xa
jb case.0x46269d.14
cmp ecx, 0xd
jbe case.0x4625dd.13
cmp ecx, 0x85
je case.0x4625dd.13
jmp case.0x46269d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x4625dd.13
jmp case.0x46269d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x46279a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x4625dd.13
jmp case.0x46269d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x46279a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x4625dd.13
mov esi, dword [esi]
test esi, esi
je 0x465bd8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x4617c4
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x4625dd.13
mov esi, dword [esi]
test esi, esi
je 0x465bd8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x4617c4
mov esi, dword [esi]
test esi, esi
je case.default.0x4617d4
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x4627fa
cmp eax, dword [esi + 0x30]
jbe 0x4627fa
cmp byte [eax], 0xa
jne 0x4627fa
cmp byte [eax - 1], 0xd
jne 0x4627fa
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4658a3
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465899
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
cmp edi, 0xfffffc1a
jne 0x462891
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x462889
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x462870
jmp 0x4628e8
mov dword [esi + 8], eax
jmp 0x46290d
cmp edi, 0xfffffc20
jne 0x4628c5
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x4617d4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4628cd
cmp byte [ecx], 0x77
jmp 0x4628c7
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
je 0x462901
cmp dword [esi + 0x5c], 0
jne 0x461f57
cmp dword [esi + 0x54], 0
jne 0x461f57
jmp 0x463b41
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x462923
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4658e5
push 0x134
call dword [0x114445c]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4658db
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
mov esi, dword [esi]
test edi, edi
jne 0x461c94
test esi, esi
je 0x465c3d
mov edi, 0xfffffc1c
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x465c57
mov edi, 0xfffffc1e
jmp 0x4617c4
cmp edi, 1
je 0x4629a3
cmp edi, 0xfffffc19
jne 0x4629bd
cmp dword [ebp + 0xac], 0
jne 0x4629bd
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x4619b1
cmp edi, 0xfffffc1f
jne 0x4619b1
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4629f2
test dl, dl
je 0x4629ee
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4629f2
add eax, 2
add ecx, 2
test dl, dl
jne 0x4629d2
xor eax, eax
jmp 0x4629f7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4619b1
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x465c57
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x4617c4
cmp edi, 1
je 0x462a2d
cmp edi, 0xfffffc19
jne case.0x4617d4.51
cmp dword [ebp + 0xac], 0
jne case.0x4617d4.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x461c94
test esi, esi
je 0x465c30
mov edi, 0xfffffc1d
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x465c64
mov edi, 0xfffffc1f
jmp 0x4617c4
cmp edi, 1
je 0x462a90
cmp edi, 0xfffffc19
jne case.0x4617d4.54
cmp dword [ebp + 0xac], 0
jne case.0x4617d4.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x465c4a
mov edi, 0xfffffc20
jmp 0x4617c4
cmp edi, 0xfffffc1a
jne 0x462b31
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x462b29
mov edx, dword [esi + 0xc]
jmp 0x462b10
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x462b10
jmp 0x462b98
mov dword [esi + 8], eax
jmp 0x458a92
cmp edi, 0xfffffc20
jne 0x462b65
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x4617d4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x462b6d
cmp byte [ecx], 0x77
jmp 0x462b67
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x458a92
cmp dword [esi + 0x5c], 0
jne 0x462bd8
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
cmp dword [esi + 0x54], 0
jne 0x457f56
cmp dword [esi + 0x5c], 0
jne 0x457f56
jmp 0x463b41
cmp edi, 1
jne 0x462c94
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x462c11
cmp al, 0x77
jne 0x463b41
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x462c11
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 8], ecx
mov eax, dword [esi + 0xc]
mov al, byte [eax]
cmp al, 0x78
je 0x457f56
cmp ecx, dword [esi + 0x38]
je 0x457f56
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x462d2d
test ecx, ecx
jne 0x46594e
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465944
mov esi, dword [esi]
test esi, esi
je 0x465bcb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x4617c4
cmp edi, 0xfffffc20
jne 0x462cc8
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x4617d4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x462cd0
cmp byte [ecx], 0x77
jmp 0x462cca
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x462c00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465929
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46591f
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test ecx, ecx
jne 0x465973
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465969
mov esi, dword [esi]
test esi, esi
je 0x465bcb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x4617c4
test edi, edi
je 0x465404
jmp case.0x4617d4.49
test edi, edi
jne case.0x4617d4.49
add dword [esi + 0xc], 3
jmp 0x457ee0
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462da9
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x462eaa
cmp ebx, 0xc0
jb 0x462eaa
test bl, 0x20
jne 0x462deb
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x462ea7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x462e15
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x462eaa
mov edx, dword [esi + 8]
test bl, 8
jne 0x462e3b
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x462e9e
test bl, 4
jne 0x462e6a
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x462e9e
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
push edx
push dword [esi + 0x28]
push ebx
call fcn.00467680
add esp, 0xc
test eax, eax
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465995
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x46598b
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x463b41
cmp dword [esp + 0x8c], edi
je 0x462f31
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x462f31
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x462f25
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4659ae
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4659a4
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x462f8b
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x463080
test bl, 0x20
jne 0x462fc5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x46307d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x462fef
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x463080
mov edx, dword [esi + 8]
test bl, 8
jne 0x463018
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x46307b
test bl, 4
jne 0x463047
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x46307b
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x463096
cmp dword [esi + 0x9c], 0x6e
jne 0x4630b3
jmp 0x458d5b
mov edx, dword [esi + 0x28]
mov edi, ebx
and ebx, 7
shr edi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [edi + edx], al
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4659c7
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4659bd
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x458d5b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x46311c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x463110
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4659e0
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4659d6
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x463176
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x88]
sub eax, edi
mov ebx, dword [esi + 8]
cmp ebx, eax
ja 0x4631e5
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x4631a5
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4631aa
add ecx, 4
add edx, 4
sub edi, 4
jae 0x463194
cmp edi, 0xfffffffc
je 0x4631d7
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4631e2
cmp edi, 0xfffffffd
je 0x4631d7
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4631e2
cmp edi, 0xfffffffe
je 0x4631d7
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4631e2
cmp edi, 0xffffffff
je 0x4631d7
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4631e2
mov eax, dword [esi + 0x88]
jmp 0x463250
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x463290
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x463290
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x463217
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x46321c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x463206
cmp edi, 0xfffffffc
je 0x46324d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x463290
cmp edi, 0xfffffffd
je 0x46324d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x463290
cmp edi, 0xfffffffe
je 0x46324d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x463290
cmp edi, 0xffffffff
je 0x46324d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x463290
mov eax, dword [esi + 0x6c]
add eax, ebx
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4659f9
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4659ef
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
cmp dword [ebp + 0x88], 0
je case.0x45eee6.14
cmp ebx, dword [ebp + 0x78]
jb case.0x45eee6.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x45eee6.14
jmp 0x458eb2
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4632dc
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4632d0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465a12
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a08
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x463342
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x463442
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x46337c
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x46343f
test dl, 0x10
jne 0x46339e
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add dword [esi + 8], 2
jmp 0x463442
mov ecx, dword [esi + 8]
test dl, 8
jne 0x4633ce
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 0x46343f
test dl, 4
jne 0x463404
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 0x46343f
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je 0x462601
cmp dword [esi + 0x94], edx
je 0x462601
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x463489
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x462095
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x4658ad
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4634bc
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4634b0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465a2b
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a21
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x463522
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x463617
test bl, 0x20
jne 0x46355c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x463614
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x463586
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x463617
mov edx, dword [esi + 8]
test bl, 8
jne 0x4635af
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x463612
test bl, 4
jne 0x4635de
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x463612
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ebx
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465a44
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a3a
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x463680
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x463674
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465a5d
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a53
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4636e6
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x463722
cmp dword [ebp + 0x88], 0
je 0x463b41
cmp ecx, dword [ebp + 0x84]
jbe 0x463b41
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x45ad7e
jmp 0x463b41
cmp dword [esi + 0x7c], 0xc
jne 0x463774
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x46374f
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00467cf0
add esp, 0x14
test eax, eax
jne 0x463b41
jmp 0x463774
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x463774
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x463774
cmp edi, 1
je 0x463b41
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x463b41
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x46385c
test dl, 0x20
jne 0x4637a7
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x463859
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4637ce
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x463857
test dl, 8
jne 0x4637f4
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
jmp 0x463857
test dl, 4
jne 0x463823
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
jmp 0x463857
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x46386b.15
jmp dword [eax*4 + 0x466384]
cmp dword [ebp + 0x88], 0
je case.0x46386b.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x46386b.13
cmp dword [ebp + 0x18], 0
jne case.0x46386b.13
cmp dword [ebp + 0x1c], 2
jne case.0x46386b.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x46386b.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x46386b.13
jmp 0x45ad7e
cmp edx, 0xd
ja 0x4638ee
je 0x4638db
cmp edx, 0xa
je case.0x46386b.13
jbe 0x463b41
cmp edx, 0xc
jmp 0x463908
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x46386b.13
cmp byte [eax], 0xa
jne case.0x46386b.13
inc eax
mov dword [esi + 8], eax
jmp case.0x46386b.13
cmp edx, 0x85
je 0x46390e
cmp edx, 0x2027
jbe 0x463b41
cmp edx, 0x2029
ja 0x463b41
cmp dword [ebp + 0x68], 0
je case.0x46386b.13
jmp 0x463b41
cmp edx, 0x180e
ja 0x46398d
je 0x463b41
cmp edx, 0xa0
ja 0x463985
je 0x463b41
cmp edx, 9
je 0x463b41
cmp edx, 0x20
je 0x463b41
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x463976
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x462095
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x4658ad
cmp edx, 0x1680
jmp 0x463941
cmp edx, 0x205f
ja 0x4639b7
je 0x463b41
cmp edx, 0x2000
jb case.0x46386b.13
cmp edx, 0x200a
jbe 0x463b41
cmp edx, 0x202f
jmp 0x463941
cmp edx, 0x3000
jmp 0x463b3b
cmp edx, 0x180e
ja 0x4639f4
je case.0x46386b.13
cmp edx, 0xa0
ja 0x4639ec
je case.0x46386b.13
cmp edx, 9
je case.0x46386b.13
cmp edx, 0x20
jmp 0x463a28
cmp edx, 0x1680
jmp 0x463a28
cmp edx, 0x205f
ja 0x463a22
je case.0x46386b.13
cmp edx, 0x2000
jb 0x463b41
cmp edx, 0x200a
jbe case.0x46386b.13
cmp edx, 0x202f
jmp 0x463a28
cmp edx, 0x3000
je case.0x46386b.13
jmp 0x463b41
cmp edx, 0x85
ja 0x463a58
je 0x463b41
cmp edx, 0xa
jb case.0x46386b.13
cmp edx, 0xd
jbe 0x463b41
jmp case.0x46386b.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x46386b.13
jmp 0x463b41
cmp edx, 0x85
ja 0x463a88
je case.0x46386b.13
cmp edx, 0xa
jb 0x463b41
cmp edx, 0xd
jmp 0x463a91
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x46386b.13
jmp 0x463b41
cmp edx, 0x100
jae case.0x46386b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x46386b.13
jmp 0x463b41
cmp edx, 0x100
jae 0x463b41
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x463b3b
cmp edx, 0x100
jae case.0x46386b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x46386b.13
jmp 0x463b41
cmp edx, 0x100
jae 0x463b41
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x463b3b
cmp edx, 0x100
jae case.0x46386b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x46386b.13
mov esi, dword [esi]
test esi, esi
je 0x465bd8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x4617c4
cmp edx, 0x100
jae 0x463b41
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x46386b.13
mov esi, dword [esi]
test esi, esi
je 0x465bd8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x4617c4
mov esi, dword [esi]
test esi, esi
je case.default.0x4617d4
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x4617c4
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x463b9c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x463b90
cmp dword [esi + 0x7c], 0x11
jne 0x463bb8
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x463bb8
cmp byte [eax], 0xa
jne 0x463bb8
dec eax
cmp byte [eax], 0xd
jne 0x463bb8
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465a76
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a6c
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x463c1e
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x463c3e
cmp dword [ebp + 0x88], 0
je 0x462543
cmp eax, dword [ebp + 0x84]
jmp 0x464399
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x463c7d
cmp ecx, 0xc0
jb 0x463c7d
test cl, 0x20
jne 0x463c59
inc eax
jmp 0x463c7a
test cl, 0x10
jne 0x463c63
add eax, 2
jmp 0x463c7a
test cl, 8
jne 0x463c6d
add eax, 3
jmp 0x463c7a
test cl, 4
jne 0x463c77
add eax, 4
jmp 0x463c7a
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x463c94
mov esi, dword [esi]
test esi, esi
je 0x465bd8
xor edi, edi
jmp 0x4617c4
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x463cc3
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x462095
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x4658ad
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x463cf7
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x463df1
cmp ebx, 0xc0
jb 0x463df1
test bl, 0x20
jne 0x463d39
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x463dee
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x463d63
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x463df1
mov edx, dword [esi + 8]
test bl, 8
jne 0x463d89
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x463dec
test bl, 4
jne 0x463db8
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x463dec
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x463e13
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp eax, 9
je 0x463e38
cmp eax, 5
je 0x463e38
cmp eax, 8
je 0x463e38
xor eax, eax
jmp 0x463e3d
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465a8f
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a85
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x463ea6
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x463f9c
cmp ebx, 0xc0
jb 0x463f9c
test bl, 0x20
jne 0x463ee8
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x463f99
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x463f10
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x463f9c
mov edx, dword [esi + 8]
test bl, 8
jne 0x463f36
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 0x463f99
test bl, 4
jne 0x463f65
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 0x463f99
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x463fbe
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465aa8
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465a9e
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x464048
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x46413e
cmp ebx, 0xc0
jb 0x46413e
test bl, 0x20
jne 0x46408a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x46413b
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4640b2
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x46413e
mov edx, dword [esi + 8]
test bl, 8
jne 0x4640d8
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 0x46413b
test bl, 4
jne 0x464107
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 0x46413b
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x464160
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465ac1
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465ab7
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4641e3
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4642d9
cmp ebx, 0xc0
jb 0x4642d9
test bl, 0x20
jne 0x464225
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4642d6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x46424d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4642d9
mov edx, dword [esi + 8]
test bl, 8
jne 0x464273
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 0x4642d6
test bl, 4
jne 0x4642a2
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 0x4642d6
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x4642fb
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508200]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465ada
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465ad0
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x46437e
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4643c7
cmp dword [ebp + 0x88], 0
je 0x462543
cmp edi, dword [ebp + 0x84]
jbe 0x462543
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x462543
mov esi, dword [esi]
test esi, esi
je 0x465bfc
mov edi, 0xfffffff4
jmp 0x4617c4
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4644b5
cmp ebx, 0xc0
jb 0x4644b5
test bl, 0x20
jne 0x4643fd
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4644b2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x464427
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4644b5
mov edx, dword [esi + 8]
test bl, 8
jne 0x46444d
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4644b0
test bl, 4
jne 0x46447c
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4644b0
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x4644d7
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508202]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x464668
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x464607
cmp ebx, 0xc0
jb 0x464607
test bl, 0x20
jne 0x46453b
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4645ff
test bl, 0x10
jne 0x464560
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x4645ff
test bl, 8
jne 0x464591
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x4645ff
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4645cb
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x4645ff
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x464629
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx ecx, byte [eax*8 + 0x508202]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x508088], eax
je 0x464668
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x464500
cmp dword [ebp + 0x88], 0
je 0x464695
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x464695
cmp eax, dword [ebp + 0x84]
jbe 0x464695
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x458ec6
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465af3
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465ae9
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x4646fc
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4646fc
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4646f0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x457ee0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465b0c
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b02
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x464757
movzx ebx, byte [ecx]
jmp 0x464845
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x46476c
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x464760
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x464845
test bl, 0x20
jne 0x46478f
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x46483d
test bl, 0x10
jne 0x4647af
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x46483d
test bl, 8
jne 0x4647d8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x46483d
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x46480d
and ebx, 3
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x46483d
and ebx, 1
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x464867
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508202]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x457ee0
dec edi
cmp dword [esp + 0x8c], 0
jne 0x46489f
movzx ebx, byte [edi]
jmp 0x46495e
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x4648b1
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x4648a7
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x46495e
test bl, 0x20
jne 0x4648d1
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x464956
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4648ee
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x464956
and eax, 0x3f
test bl, 8
jne 0x464909
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x464956
test bl, 4
jne 0x46492d
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x464956
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x464980
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx edx, byte [eax*8 + 0x508202]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x508088], eax
je 0x4605b6
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x464880
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4649e1
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x464adb
cmp ebx, 0xc0
jb 0x464adb
test bl, 0x20
jne 0x464a23
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x464ad8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x464a4d
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x464adb
mov edx, dword [esi + 8]
test bl, 8
jne 0x464a73
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x464ad6
test bl, 4
jne 0x464aa2
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x464ad6
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x464afd
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x464b24
cmp eax, 3
je 0x464b24
xor eax, eax
jmp 0x464b29
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465b3e
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b34
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x464b92
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x464c93
cmp ebx, 0xc0
jb 0x464c93
test bl, 0x20
jne 0x464bd4
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x464c90
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x464bfe
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x464c93
mov edx, dword [esi + 8]
test bl, 8
jne 0x464c24
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x464c87
test bl, 4
jne 0x464c53
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x464c87
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x24
je 0x464cbe
cmp ebx, 0x40
je 0x464cbe
cmp ebx, 0x60
je 0x464cbe
cmp ebx, 0xa0
jb 0x464cb2
cmp ebx, 0xd7ff
jbe 0x464cbe
cmp ebx, 0xe000
jae 0x464cbe
xor eax, eax
jmp 0x464cc3
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4596a2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465b57
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b4d
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x464d2c
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x464e2d
cmp ebx, 0xc0
jb 0x464e2d
test bl, 0x20
jne 0x464d6e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x464e2a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x464d98
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x464e2d
mov edx, dword [esi + 8]
test bl, 8
jne 0x464dbe
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x464e21
test bl, 4
jne 0x464ded
and ebx, 3
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x464e21
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x464e70
je case.0x464e90.8192
cmp ebx, 0x85
ja 0x464e5c
je case.0x464e90.8192
cmp ebx, 9
jb case.0x464e90.8203
cmp ebx, 0xd
jbe case.0x464e90.8192
cmp ebx, 0x20
jmp 0x464ea5
cmp ebx, 0xa0
je case.0x464e90.8192
cmp ebx, 0x1680
jmp 0x464ea5
cmp ebx, 0x202f
ja 0x464e97
je case.0x464e90.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x464e90.8203
movzx eax, byte [eax + 0x4663cc]
jmp dword [eax*4 + 0x4663c4]
cmp ebx, 0x205f
je case.0x464e90.8192
cmp ebx, 0x3000
je case.0x464e90.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x509880]
shl eax, 7
and ebx, 0x8000007f
jns 0x464ec9
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
cmp dword [eax*4 + 0x508010], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x464efc
jmp 0x458d5b
cmp dword [esi + 0x68], 0
jne 0x4596a2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465b70
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b66
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x464f5c
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x465052
cmp ebx, 0xc0
jb 0x465052
test bl, 0x20
jne 0x464f9e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x46504f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x464fc6
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x465052
mov edx, dword [esi + 8]
test bl, 8
jne 0x464fec
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 0x46504f
test bl, 4
jne 0x46501b
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 0x46504f
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x509880]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x465075
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x50ba80]
movzx eax, byte [eax*8 + 0x508201]
mov eax, dword [eax*4 + 0x508010]
cmp eax, 1
je 0x4650a1
cmp eax, 3
je 0x4650a1
cmp ebx, 0x5f
je 0x4650a1
xor eax, eax
jmp 0x4650a6
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x458d5b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465b89
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b7f
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
test edi, edi
jne case.0x4617d4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x46510f
mov esi, dword [esi]
test esi, esi
je 0x465bd8
jmp 0x4617c4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x464386
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x46520c
cmp ebx, 0xc0
jb 0x46520c
test bl, 0x20
jne 0x465151
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x465209
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x465179
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x46520c
mov edx, dword [esi + 8]
test bl, 8
jne 0x46519f
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 0x465202
test bl, 4
jne 0x4651ce
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 0x465202
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x5080c0]
lea eax, [eax*4 + 0x5080c0]
cmp ebx, ecx
jb 0x46522e
lea eax, [eax + 4]
cmp ebx, ecx
je 0x465273
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x465221
cmp dword [esi + 0x68], 0
je 0x4596a2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x465ba2
push 0x134
call dword [0x114445c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x465b98
mov esi, dword [esi]
test esi, esi
je 0x465bcb
lea edi, [eax - 6]
jmp 0x4617b9
cmp dword [esi + 0x68], 0
je 0x465238
jmp 0x4596a2
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x465281
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x457f5a
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x4652c3
push ecx
call dword [0x1144458]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x457f5a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4630b9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x462ec5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x46325b
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x463460
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x463629
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x463c9a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x463e4c
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x463fee
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x464189
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x464324
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x464b38
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x464f02
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4650b5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x46523e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x464cd2
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x46394d
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x46469b
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x457ee0
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x37
mov eax, dword [esi + 8]
mov dword [edi + 8], eax
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x507ef8]
movzx eax, byte [ecx + 1]
add edx, eax
add edx, ecx
mov dword [edi + 0xc], edx
mov eax, dword [esi + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edi + 0x1c], eax
mov dword [edi], esi
mov esi, edi
jmp 0x457ed0
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x34
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x33
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x46541f
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x35
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x46541f
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x36
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x46541f
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 3
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], ebx
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x457ed0
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xa
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
jmp 0x4658b6
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xb
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
add eax, 3
jmp 0x4658b6
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 7
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x4658b6
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xd
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x4658b6
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xc
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x4658b6
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 1
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 2
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x465677
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 5
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], 0
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x457ed0
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 6
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0x20]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x507ef8]
add eax, ecx
mov dword [edx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edx + 0x1c], eax
mov dword [edx], esi
mov esi, edx
jmp 0x457ed0
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 8
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x4658b6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x32
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x4658b6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 9
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x4658b6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2f
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x457ed0
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x30
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x3f
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x4656c6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x40
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x4658b6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x41
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x4658b6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x42
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x4658b6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x4658ad
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x4658ad
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x68
ret