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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x8c
push ebx
push ebp
mov ebp, dword [esp + 0xa8]
push esi
push edi
mov esi, dword [ebp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0xa4]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0xa8]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0xac]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0xb4]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0xb8]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
nop
mov edx, dword [ebp]
mov ebx, dword [ebp + 0x4c]
mov dword [esp + 0x28], ebx
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, dword [ebp + 4]
jb 0x48441b
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491ef2
mov edi, 0xfffffff8
jmp 0x48dfe4
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x484439
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f02
mov edi, 0xffffffeb
jmp 0x48dfe4
cmp dword [ebp + 0x98], 2
jne 0x484463
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
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], ebx
mov cl, byte [eax]
movzx eax, cl
mov dword [esi + 0x9c], eax
cmp cl, 0xa1
ja case.0x48448f.98
movzx eax, byte [eax + 0x49213c]
jmp dword [eax*4 + 0x491ff0]
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 0x4844cd
push 0x134
call dword [0x14c1c0c]
mov edi, eax
add esp, 4
test edi, edi
je 0x491c98
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 edx, dword [esi + 0xc]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
movzx eax, byte [eax + 0x5b39d0]
add eax, edx
add ecx, eax
mov dword [edi + 0xc], ecx
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 0x4843e0
mov edx, dword [esi + 4]
test edx, edx
jne 0x48453c
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
mov edx, dword [esi + 4]
test edx, edx
jne 0x484579
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
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 0x4845c8
push 0x134
call dword [0x14c1c0c]
mov edi, eax
add esp, 4
test edi, edi
je 0x491c98
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x4844d7
mov edx, dword [esi + 4]
test edx, edx
jne 0x4845fc
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp + 0x28], eax
cmp eax, dword [ebp + 0x2c]
ja 0x48463d
mov edx, dword [esi + 0xc]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
movzx eax, byte [eax + 0x5b39d0]
add eax, edx
add ecx, eax
mov dword [esi + 0xc], ecx
jmp 0x484463
mov edi, dword [esi + 4]
test edi, edi
jne 0x484662
push 0x134
call dword [0x14c1c0c]
mov edi, eax
add esp, 4
test edi, edi
je 0x491c98
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x4844d7
mov edx, dword [esi + 4]
test edx, edx
jne 0x484696
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
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 0x4846e5
push 0x134
call dword [0x14c1c0c]
mov edi, eax
add esp, 4
test edi, edi
je 0x491c98
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x4844d7
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 0x48f649
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.0x48448f.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 0x48e083
mov dword [esi + 0x54], ebx
jmp 0x484f6f
mov dword [esi + 0x54], ebx
jmp 0x484f93
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
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0xc], eax
cmp byte [eax], 0x76
jne 0x4848b1
mov edi, dword [0x14c7b04]
test edi, edi
je 0x48489d
mov dword [esp + 0x34], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x40], ecx
mov eax, dword [ebp + 0x78]
sub eax, ecx
mov dword [esp + 0x44], eax
mov eax, dword [esi + 0x10]
sub eax, ecx
mov dword [esp + 0x48], eax
mov eax, dword [esi + 8]
sub eax, ecx
mov dword [esp + 0x4c], 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 + 0x5c], 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 + 0x60], ecx
mov ecx, 0xffffffff
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [esp + 0x54], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x64], eax
lea eax, [esp + 0x34]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.default.0x49033a
jns 0x48489d
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x48e124
jmp 0x48dfe0
movzx eax, byte [0x5b3a46]
add dword [esi + 0xc], eax
movzx eax, byte [0x5b3a46]
sub dword [esi + 0x78], eax
mov dword [esi + 0x58], ebx
mov ebx, dword [esi + 0xc]
movzx ecx, byte [ebx]
mov dword [esp + 0x2c], ecx
lea eax, [ecx - 0x8d]
cmp eax, 0x10
ja case.0x4848d4.146
movzx eax, byte [eax + 0x4921f8]
jmp dword [eax*4 + 0x4921e0]
mov edx, dword [ebp + 0xa4]
test edx, edx
je case.0x4848d4.145
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x4849b2
cmp ecx, dword [edx + 4]
je 0x4849b2
xor eax, eax
mov dword [esi + 0x58], eax
mov ecx, dword [esp + 0x2c]
cmp dword [esi + 0x58], 0
je 0x48e35d
movzx ecx, byte [ecx + 0x5b39d0]
jmp 0x48e360
cmp dword [ebp + 0xa4], 0
je case.0x4848d4.145
movzx edi, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx ecx, byte [ebx + 1]
shl edi, 8
or edi, eax
shl ecx, 8
movzx eax, byte [ebx + 2]
or ecx, eax
mov eax, dword [ebp + 0x30]
imul ecx, dword [ebp + 0x24]
add eax, ecx
test edi, edi
je 0x48490c
mov ebx, eax
movzx edx, byte [eax + 1]
dec edi
movzx eax, byte [eax]
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
mov ecx, dword [eax + 4]
xor eax, eax
cmp edx, ecx
sete al
mov dword [esi + 0x58], eax
je 0x48490c
mov eax, dword [ebp + 0x24]
add eax, ebx
mov ebx, eax
test edi, edi
jg 0x484958
jmp 0x48490c
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x484907
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x484907
mov eax, 1
jmp 0x484909
movzx edi, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 1]
shl edi, 8
shl edx, 8
or edi, eax
movzx eax, byte [ebx + 2]
or edx, eax
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
test edi, edi
je case.0x4848d4.145
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 0x484a0f
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x484a0f
mov eax, 1
jmp 0x484a11
xor eax, eax
mov dword [esi + 0x58], eax
test eax, eax
jne 0x48490c
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x4849e5
jmp 0x48490c
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x484a5b
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
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]
jmp 0x48e5d1
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 0x484ac8
or eax, 0x10000
mov dword [ebp + 0x90], eax
add dword [esi + 0xc], 3
jmp 0x484463
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 edx, dword [esi + 0x98]
mov ecx, dword [esi + 0x14]
cmp edx, ecx
jl 0x484abf
mov eax, dword [ebp + 0xc]
lea ecx, [eax + ecx*4]
lea edx, [eax + edx*4]
cmp ecx, edx
jae 0x484b1f
mov eax, ecx
nop dword [eax]
mov dword [ecx], 0xffffffff
lea ecx, [eax + 4]
mov eax, ecx
cmp ecx, edx
jb 0x484b10
mov eax, dword [esi + 0x98]
add eax, 2
mov dword [esi + 0x14], eax
add dword [esi + 0xc], 3
jmp 0x484463
mov edi, dword [esi + 8]
mov edx, dword [esi + 0x10]
cmp edi, edx
jne 0x484b6a
cmp cl, 0x9f
je 0x484b6a
cmp dword [ebp + 0xa4], ebx
jne 0x484b6a
cmp dword [ebp + 0x5c], ebx
jne case.default.0x49033a
cmp dword [ebp + 0x60], ebx
je 0x484b6a
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp edx, eax
je case.default.0x49033a
mov dword [ebp + 0x80], edi
mov edi, 0xfffffc19
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov eax, 1
cmp dword [esi + 0x9c], ebx
cmove edi, eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x48e124
jmp 0x48dfe0
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x484bc7
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x48e448
mov dword [esi + 0x58], ebx
jmp 0x48e448
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x484bf3
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x48e592
mov dword [esi + 0x58], ebx
jmp 0x48e592
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0xc]
test ebx, ebx
je 0x484c42
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jbe 0x484c60
mov ecx, dword [esi + 8]
dec edx
dec ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x74]
jb case.0x48ef3a.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x484c3c
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x484c30
test edx, edx
jg 0x484c15
jmp 0x484c60
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 8]
sub eax, ecx
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x74]
jb case.0x48ef3a.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x484abf
mov dword [ebp + 0x84], eax
add dword [esi + 0xc], 3
jmp 0x484463
mov edi, dword [0x14c7b04]
test edi, edi
je 0x484d63
mov dword [esp + 0x68], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x70], eax
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x74], ecx
mov eax, dword [ebp + 0x78]
sub eax, ecx
mov dword [esp + 0x78], eax
mov eax, dword [esi + 0x10]
sub eax, ecx
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 8]
sub eax, ecx
mov dword [esp + 0x80], 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 + 0x90], 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 + 0x94], ecx
mov ecx, 0xffffffff
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x98], eax
lea eax, [esp + 0x68]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.default.0x49033a
jns 0x484d63
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x48e124
jmp 0x48dfe0
add dword [esi + 0xc], 6
jmp 0x484463
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 0x484d8d
xor edx, edx
jmp 0x484d9a
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 0x484db9
cmp edx, dword [ecx + 4]
jne 0x484db1
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x484df6
mov eax, dword [ecx]
mov ecx, eax
test eax, eax
jne 0x484da4
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 0x484e0c
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
jmp 0x484e24
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f12
mov edi, 0xffffffe6
jmp 0x48dfe0
shl eax, 2
push eax
call dword [0x14c1c04]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
je 0x491c98
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call fcn.004702b0
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x48e6b8
mov edx, dword [esi + 0xc]
nop dword [eax]
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 0x484e50
jmp 0x484463
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x484e98
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0x2c], eax
cmp byte [edx], 0x77
je 0x484ec0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x484efe
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
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 eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0x2c], eax
cmp byte [edx], 0x77
je 0x484f20
add eax, 3
mov dword [esi + 0xc], eax
jmp 0x484463
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx eax, byte [eax]
mov dword [esi + 0x9c], eax
mov dword [esi + 0x54], 1
mov eax, dword [esi + 0x9c]
cmp eax, 0x86
je 0x484f6f
cmp eax, 0x8b
jne 0x484f93
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 0x484fb0
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 0x48f206
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 0x48502d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x485056
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 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 0x485092
cmp al, 0x81
je 0x485092
mov dword [esi + 0x38], ebx
jmp 0x4850a3
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 0x4850b0
cmp al, 0x80
jbe 0x4850b4
cmp al, 0x82
jne 0x4850d1
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
jmp 0x48e562
cmp al, 0x85
je 0x4850e5
cmp al, 0x8a
je 0x4850e5
cmp al, 0x86
je 0x4850e5
cmp al, 0x8b
jne 0x4851bb
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 0x48512a
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x48512a
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
jmp 0x48e562
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 0x485159
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x4851bb
mov ecx, dword [esi + 0x14]
cmp edx, ecx
jle 0x48517f
mov eax, dword [ebp + 0xc]
lea ecx, [eax + ecx*4]
lea edx, [eax + edx*4]
cmp ecx, edx
jae 0x48517f
mov eax, ecx
nop
mov dword [ecx], 0xffffffff
lea ecx, [eax + 4]
mov eax, ecx
cmp ecx, edx
jb 0x485170
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 0x4851bb
add eax, 2
mov dword [esi + 0x14], eax
mov edi, dword [esi + 0xc]
mov cl, byte [edi]
cmp cl, 0x7b
jne 0x4851f3
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 eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f22
mov edi, 0xfffffc1a
jmp 0x48dfe0
cmp cl, 0x78
je 0x485283
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x485283
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x485249
test ecx, ecx
jne 0x48522e
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
test ecx, ecx
jne 0x48526b
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x486bc2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4852b4
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
cmp dword [ebp + 0x44], ebx
je case.0x48448f.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je case.default.0x49033a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je case.0x486386.10
jmp case.default.0x49033a
cmp dword [ebp + 0x44], ebx
je 0x485302
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je case.default.0x49033a
mov ecx, dword [esi + 8]
mov edi, dword [ebp + 0x74]
cmp ecx, edi
je case.0x486386.10
cmp ecx, dword [ebp + 0x78]
je case.default.0x49033a
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x48534d
cmp ecx, edi
jbe 0x485342
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edi
push edx
push ecx
call fcn.00494b70
add esp, 0x14
test eax, eax
je 0x485342
mov eax, 1
jmp 0x485344
xor eax, eax
test eax, eax
jne case.0x486386.10
jmp case.default.0x49033a
mov edx, dword [ebp + 0x1c]
lea eax, [edx + edi]
cmp ecx, eax
jb case.default.0x49033a
mov eax, ecx
sub eax, edx
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.default.0x49033a
cmp edx, 1
je case.0x486386.10
sub ecx, edx
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x486386.10
jmp case.default.0x49033a
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
je case.0x486386.10
jmp case.default.0x49033a
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x484463
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x485444
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4853d2
mov ebx, dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push ebx
push eax
push edx
push edi
push ecx
call fcn.004949e0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
jne case.0x486386.10
jmp 0x4853f3
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4853ef
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4853ef
cmp edi, 1
je case.0x486386.10
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x486386.10
mov ebx, dword [esp + 0x28]
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48ef3a.14
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb case.0x48ef3a.14
cmp dword [ebp + 0x18], 0
jne case.0x48ef3a.14
cmp dword [ebp + 0x1c], 2
jne case.0x48ef3a.14
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne case.0x48ef3a.14
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x491cfa
jmp case.0x48ef3a.14
cmp dword [ebp + 0x48], ebx
jne case.default.0x49033a
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x486386.10
cmp ecx, dword [ebp + 0x84]
jbe case.0x486386.10
cmp eax, 1
mov dword [ebp + 0x64], 1
jle case.0x486386.10
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fb2
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x48dfe4
cmp dword [ebp + 0x48], ebx
jne case.default.0x49033a
cmp dword [ebp + 0x58], ebx
je case.0x48448f.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x486392
jmp case.default.0x49033a
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x48544d
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4854de
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004949e0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x48550c
jmp 0x4854fb
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x48550c
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x48550c
cmp edi, 1
je 0x4854fb
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x48550c
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x1c]
mov ecx, dword [esi + 8]
cmp ecx, eax
je 0x48544d
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.default.0x49033a
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb case.default.0x49033a
cmp dword [ebp + 0x18], ebx
jne case.default.0x49033a
cmp dword [ebp + 0x1c], 2
jne case.default.0x49033a
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne case.default.0x49033a
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle case.default.0x49033a
jmp 0x485477
cmp dword [esp + 0x28], ebx
je 0x485814
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x485576
mov dword [esi + 0x5c], ebx
jmp 0x4856a1
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
jne 0x48558e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
je 0x485582
cmp ecx, dword [ebp + 0x84]
jae 0x48559c
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
mov eax, ebx
mov ecx, ebx
mov edi, ebx
cmp ebx, 0xc0
jb 0x485653
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x4855ca
and eax, 0x1f
mov ebx, ecx
shl eax, 6
jmp 0x48564b
movzx eax, byte [edx + 2]
test bl, 0x10
jne 0x4855dd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x485645
and eax, 0x3f
test bl, 8
jne 0x4855f8
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x485645
test bl, 4
jne 0x48561c
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 0x485645
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]
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov eax, ebx
mov ecx, ebx
mov edi, ebx
cmp dword [ebp + 0x54], 0
mov edx, ebx
je 0x4856d7
cmp edx, 0x5f
jne 0x485669
mov dword [esi + 0x5c], 1
jmp 0x4856a1
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x4856e8
cmp eax, 3
je 0x4856e8
xor eax, eax
mov dword [esi + 0x5c], eax
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4856ef
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4856cb
cmp edi, dword [ebp + 0x84]
jbe 0x4856cb
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
mov dword [esi + 0x54], 0
jmp 0x48592f
cmp edi, 0x100
jae 0x48569c
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x48569c
mov eax, 1
jmp 0x48569e
movzx edx, byte [edi]
mov eax, edx
mov ecx, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x4857a6
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48571d
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48579e
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x485730
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x485798
and eax, 0x3f
test dl, 8
jne 0x48574b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x485798
test dl, 4
jne 0x48576f
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x485798
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
mov ebx, edx
cmp dword [ebp + 0x54], 0
mov edi, edx
je 0x4857f9
cmp edi, 0x5f
jne 0x4857bf
mov dword [esi + 0x54], 1
jmp 0x48592f
shr eax, 7
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
and ecx, 0x7f
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x48580a
cmp eax, 3
je 0x48580a
xor eax, eax
jmp 0x48592c
cmp ebx, 0x100
jae 0x4857f2
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x4857f2
mov eax, 1
jmp 0x48592c
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x485824
mov dword [esi + 0x5c], ebx
jmp 0x4858ae
cmp eax, dword [ebp + 0x84]
ja 0x485833
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax - 1]
cmp dword [ebp + 0x54], ebx
je 0x48589e
cmp ecx, 0x5f
jne 0x48584d
mov dword [esi + 0x5c], 1
jmp 0x4858ae
mov eax, ecx
test eax, eax
jns 0x485856
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
and ecx, 0x8000007f
jns 0x485870
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x485897
cmp eax, 3
je 0x485897
xor eax, eax
jmp 0x4858ab
mov eax, 1
jmp 0x4858ab
mov eax, dword [ebp + 0x40]
movzx eax, byte [ecx + eax]
shr eax, 4
and eax, 1
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4858dd
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x4858d8
cmp eax, dword [ebp + 0x84]
jbe 0x4858d8
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x485477
mov dword [esi + 0x54], ebx
jmp 0x48592f
movzx ecx, byte [eax]
cmp dword [ebp + 0x54], ebx
je 0x48591f
cmp ecx, 0x5f
jne 0x4858f3
mov dword [esi + 0x54], 1
jmp 0x48592f
mov eax, ecx
test eax, eax
jns 0x4858fc
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
and ecx, 0x8000007f
jns 0x4857cf
dec ecx
or ecx, 0xffffff80
inc ecx
jmp 0x4857cf
mov eax, 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 0x48594a
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x485952
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
test ecx, ecx
je 0x484463
jmp case.default.0x49033a
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x485999
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x48598e
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.004949e0
add esp, 0x14
test eax, eax
je 0x48598e
mov eax, 1
jmp 0x485990
xor eax, eax
test eax, eax
je 0x4859c4
jmp case.default.0x49033a
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x4859c4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4859c4
cmp edx, 1
je case.default.0x49033a
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x49033a
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48448f.13
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
dec eax
cmp edx, eax
jne case.0x48448f.13
cmp dword [ebp + 0x18], ebx
jne case.0x48448f.13
cmp dword [ebp + 0x1c], 2
jne case.0x48448f.13
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne case.0x48448f.13
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x485477
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x485a32
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp ecx, dword [ebp + 0x84]
jbe case.default.0x49033a
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.default.0x49033a
jmp 0x485477
inc ecx
mov dword [esi + 8], ecx
cmp dword [esp + 0x28], ebx
je case.0x486386.10
cmp ecx, dword [ebp + 0x78]
jae case.0x486386.10
nop dword [eax]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne case.0x486386.10
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x485a50
inc dword [esi + 0xc]
jmp 0x484463
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x485a94
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.default.0x49033a
cmp eax, dword [ebp + 0x84]
jbe case.default.0x49033a
jmp 0x485547
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x484463
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x485ac1
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov eax, edx
mov dword [esi + 8], edi
test ebx, ebx
je 0x485bab
cmp edx, 0xc0
jb 0x485bab
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x485aff
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x485ba6
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x485b20
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x485ba6
test dl, 8
jne 0x485b43
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 0x485ba6
test dl, 4
jne 0x485b72
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 0x485ba6
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, edx
cmp eax, 0x100
jae case.0x486386.10
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x486386.10
jmp case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x485be9
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edx, dword [ebp + 0x84]
jmp 0x485a17
movzx ecx, byte [edx]
inc edx
mov ebx, dword [esp + 0x28]
mov eax, ecx
mov dword [esi + 8], edx
test ebx, ebx
je 0x485ce6
cmp ecx, 0xc0
jb 0x485ce6
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x485c25
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x485ce1
test cl, 0x10
jne 0x485c46
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 0x485ce1
test cl, 8
jne 0x485c70
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 0x485ce1
test cl, 4
jne 0x485ca6
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 0x485ce1
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
mov eax, ecx
cmp eax, 0xff
ja case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x486386.10
jmp case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x485d24
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov eax, edx
mov dword [esi + 8], edi
test ebx, ebx
je 0x485e2c
cmp edx, 0xc0
jb 0x485e2c
test dl, 0x20
jne 0x485d60
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x485e27
test dl, 0x10
jne 0x485d87
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x485e27
test dl, 8
jne 0x485db7
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
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 0x485e27
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x485df3
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 0x485e27
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, edx
cmp eax, 0x100
jae case.0x486386.10
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x486386.10
jmp case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x485e6a
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edx, dword [ebp + 0x84]
jmp 0x485a17
movzx ecx, byte [edx]
inc edx
mov ebx, dword [esp + 0x28]
mov eax, ecx
mov dword [esi + 8], edx
test ebx, ebx
je 0x485f67
cmp ecx, 0xc0
jb 0x485f67
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x485ea6
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x485f62
test cl, 0x10
jne 0x485ec7
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 0x485f62
test cl, 8
jne 0x485ef1
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 0x485f62
test cl, 4
jne 0x485f27
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 0x485f62
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
mov eax, ecx
cmp eax, 0xff
ja case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x486386.10
jmp case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x485fa5
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov eax, edx
mov dword [esi + 8], edi
test ebx, ebx
je 0x4860ad
cmp edx, 0xc0
jb 0x4860ad
test dl, 0x20
jne 0x485fe1
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4860a8
test dl, 0x10
jne 0x486008
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4860a8
test dl, 8
jne 0x486038
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
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 0x4860a8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x486074
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 0x4860a8
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, edx
cmp eax, 0x100
jae case.0x486386.10
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x486386.10
jmp case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x4860eb
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edx, dword [ebp + 0x84]
jmp 0x485a17
movzx ecx, byte [edx]
inc edx
mov ebx, dword [esp + 0x28]
mov eax, ecx
mov dword [esi + 8], edx
test ebx, ebx
je 0x4861e8
cmp ecx, 0xc0
jb 0x4861e8
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x486127
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4861e3
test cl, 0x10
jne 0x486148
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 0x4861e3
test cl, 8
jne 0x486172
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 0x4861e3
test cl, 4
jne 0x4861a8
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 0x4861e3
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
mov eax, ecx
cmp eax, 0xff
ja case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x486386.10
jmp case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x486226
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov eax, edi
mov dword [esi + 8], edi
mov ebx, edx
mov ecx, edx
mov dword [esp + 0x20], edi
je 0x486366
mov dword [esp + 0x20], edi
cmp edx, 0xc0
jb 0x486366
test dl, 0x20
jne 0x486276
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x48636a
test dl, 0x10
jne 0x4862a6
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x48636a
test dl, 8
jne 0x4862e2
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x48636a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x486327
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]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x48636a
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 ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x48636a
mov edi, dword [esp + 0x20]
cmp ebx, 0x85
ja 0x4863c9
cmp ecx, 0x85
je case.0x486386.11
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x49033a
jmp dword [edx*4 + 0x49220c]
cmp edi, dword [ebp + 0x78]
jb 0x4863b4
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x486386.10
cmp eax, dword [ebp + 0x84]
jbe case.0x486386.10
cmp ecx, 1
jmp 0x48546a
cmp byte [eax], 0xa
jne case.0x486386.10
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x484463
sub edx, 0x2028
je case.0x486386.11
sub edx, 1
jne case.default.0x49033a
cmp dword [ebp + 0x68], 0
je case.0x486386.10
jmp case.default.0x49033a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x48640a
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov ebx, edx
mov dword [esi + 8], edi
mov eax, edx
mov dword [esp + 0x20], edx
mov ecx, edx
je 0x486525
mov dword [esp + 0x20], edx
cmp edx, 0xc0
jb 0x486525
test dl, 0x20
jne 0x486451
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x486518
test dl, 0x10
jne 0x486478
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x486518
test dl, 8
jne 0x4864a8
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
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 0x486518
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x4864e4
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 0x486518
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 ebx, edx
mov dword [esp + 0x20], edx
mov eax, edx
mov ecx, edx
cmp dword [esp + 0x20], 0x2000
mov edi, edx
ja 0x48658b
cmp ebx, 0x2000
je case.default.0x49033a
cmp edx, 0xa0
ja 0x48656b
cmp edi, 0xa0
je case.default.0x49033a
cmp edx, 9
je case.default.0x49033a
cmp edx, 0x20
je case.default.0x49033a
inc dword [esi + 0xc]
jmp 0x484463
cmp edx, 0x1680
je case.default.0x49033a
cmp edx, 0x180e
je case.default.0x49033a
inc dword [esi + 0xc]
jmp 0x484463
cmp eax, 0x3000
ja case.0x486386.10
cmp ecx, 0x3000
je case.default.0x49033a
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x486386.10
movzx eax, byte [edx + 0x492224]
jmp dword [eax*4 + 0x49221c]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x4865e0
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edx, dword [ebp + 0x84]
jmp 0x485a17
movzx ecx, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ebx, ecx
mov dword [esi + 8], edx
mov eax, ecx
mov dword [esp + 0x20], ecx
mov edi, ecx
je 0x4866f0
mov dword [esp + 0x20], ecx
cmp ecx, 0xc0
jb 0x4866f0
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x486627
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4866e3
test cl, 0x10
jne 0x486648
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 0x4866e3
test cl, 8
jne 0x486672
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 0x4866e3
test cl, 4
jne 0x4866a8
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 0x4866e3
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
mov ebx, ecx
mov dword [esp + 0x20], ecx
mov eax, ecx
mov edi, ecx
cmp dword [esp + 0x20], 0x2000
mov edx, ecx
ja 0x486750
cmp ebx, 0x2000
je case.0x486386.10
cmp ecx, 0xa0
ja 0x486733
cmp edx, 0xa0
je case.0x486386.10
cmp ecx, 9
je case.0x486386.10
cmp ecx, 0x20
je case.0x486386.10
jmp case.default.0x49033a
cmp ecx, 0x1680
je case.0x486386.10
cmp ecx, 0x180e
je case.0x486386.10
jmp case.default.0x49033a
cmp eax, 0x3000
ja case.default.0x49033a
cmp edi, 0x3000
je case.0x486386.10
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x49033a
movzx eax, byte [ecx + 0x49228c]
jmp dword [eax*4 + 0x492284]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4867a5
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov ecx, edx
mov dword [esi + 8], edi
mov eax, edx
test ebx, ebx
je 0x4868bd
cmp edx, 0xc0
jb 0x4868bd
test dl, 0x20
jne 0x4867e5
movzx ecx, byte [edi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
lea eax, [edi + 1]
jmp 0x4868b6
test dl, 0x10
jne 0x48680c
movzx ecx, byte [edi]
and edx, 0xf
movzx eax, byte [edi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4868b6
test dl, 8
jne 0x48683f
movzx ecx, byte [edi]
and edx, 7
movzx eax, byte [edi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
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 0x4868b6
movzx eax, byte [edi]
and eax, 0x3f
test dl, 4
jne 0x48687b
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 [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 0x4868b6
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 [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 ecx, edx
mov eax, edx
cmp ecx, 0x85
ja 0x4868e3
cmp eax, 0x85
je case.0x48ef3a.14
add edx, 0xfffffff6
cmp edx, 3
ja case.0x486386.10
jmp dword [edx*4 + 0x4922ec]
sub edx, 0x2028
je case.0x48ef3a.14
sub edx, 1
jne case.0x486386.10
jmp case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x48691e
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov ecx, edx
mov dword [esi + 8], edi
mov eax, edx
test ebx, ebx
je 0x486a10
cmp edx, 0xc0
jb 0x486a10
test dl, 0x20
jne 0x48695c
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x486a09
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x486983
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x486a09
test dl, 8
jne 0x4869a6
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 0x486a09
test dl, 4
jne 0x4869d5
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 0x486a09
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 ecx, edx
mov eax, edx
cmp ecx, 0x85
ja 0x486a36
cmp eax, 0x85
je case.0x486386.10
add edx, 0xfffffff6
cmp edx, 3
ja case.0x48ef3a.14
jmp dword [edx*4 + 0x4922fc]
sub edx, 0x2028
je case.0x486386.10
sub edx, 1
je case.0x486386.10
jmp case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x486a71
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov ecx, edx
mov dword [esi + 8], edi
mov ebx, edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], edx
je 0x486b84
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], edx
cmp edx, 0xc0
jb 0x486b84
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x486aca
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x486b71
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x486aeb
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x486b71
test dl, 8
jne 0x486b0e
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 0x486b71
test dl, 4
jne 0x486b3d
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 0x486b71
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 ecx, edx
mov dword [esi + 8], eax
mov ebx, ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x1c], ecx
mov edi, dword [esi + 0xc]
and ebx, 0x7f
shr ecx, 7
movzx eax, byte [ecx + 0x5b5358]
movzx ecx, byte [edi + 1]
shl eax, 7
add eax, ebx
movzx ebx, word [eax*2 + 0x5b7558]
cmp ecx, 0xa
ja case.0x4902b8.15
jmp dword [ecx*4 + 0x49230c]
cmp dword [esi + 0x9c], 0xf
je case.default.0x49033a
lea eax, [edi + 3]
mov dword [esi + 0xc], eax
jmp 0x484463
mov al, byte [ebx*8 + 0x5b3cd9]
cmp al, 9
je 0x486be4
cmp al, 5
je 0x486be4
cmp al, 8
je 0x486be4
xor ecx, ecx
jmp 0x486be9
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x486bc2
jmp case.default.0x49033a
movzx ecx, byte [ebx*8 + 0x5b3cd9]
xor edx, edx
movzx eax, byte [edi + 2]
cmp eax, dword [ecx*4 + 0x5b3ae8]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x486bc2
jmp case.default.0x49033a
mov al, byte [edi + 2]
xor ecx, ecx
cmp al, byte [ebx*8 + 0x5b3cd9]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x486bc2
jmp case.default.0x49033a
mov al, byte [edi + 2]
xor ecx, ecx
cmp al, byte [ebx*8 + 0x5b3cd8]
jmp 0x486c37
movzx eax, byte [ebx*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x486be4
cmp eax, 3
je 0x486be4
xor ecx, ecx
jmp 0x486be9
cmp edx, 0x20
ja 0x486ca3
je case.0x486bae.0
add edx, 0xfffffff7
cmp edx, 4
ja case.0x486d1f.8203
jmp dword [edx*4 + 0x492338]
cmp edx, 0x2000
ja 0x486cff
je case.0x486bae.0
cmp edx, 0x1680
ja 0x486cf7
je case.0x486bae.0
sub edx, 0x85
je case.0x486bae.0
sub edx, 0x1b
je case.0x486bae.0
movzx eax, byte [ebx*8 + 0x5b3cd9]
xor ecx, ecx
cmp dword [eax*4 + 0x5b3ae8], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x486c43
cmp edx, 0x180e
jmp 0x486cce
cmp edx, 0x3000
ja case.0x486d1f.8203
je case.0x486bae.0
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x486d1f.8203
movzx eax, byte [edx + 0x492354]
jmp dword [eax*4 + 0x49234c]
movzx eax, byte [ebx*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x486be4
cmp eax, 3
je 0x486be4
cmp edx, 0x5f
je 0x486be4
xor ecx, ecx
jmp 0x486be9
movzx eax, byte [edi + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax*4 + 0x5b3b98]
cmp ecx, dword [eax]
jb 0x486d7d
mov ecx, dword [eax]
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x486d8f
mov ecx, dword [eax]
cmp edx, ecx
jae 0x486d70
cmp dword [esi + 0x9c], 0x10
jne 0x486bc2
jmp case.default.0x49033a
cmp dword [esi + 0x9c], 0x10
je 0x486bc2
jmp case.default.0x49033a
cmp dword [esp + 0x24], 0x24
je 0x486be4
cmp dword [esp + 0x1c], 0x40
je 0x486be4
cmp edx, 0x60
je 0x486be4
cmp edx, 0xa0
jb 0x486dd4
cmp edx, 0xd7ff
jbe 0x486be4
cmp edx, 0xe000
jae 0x486be4
xor ecx, ecx
jmp 0x486be9
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x486e08
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edx, dword [ebp + 0x84]
jmp 0x485a17
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ecx, eax
mov dword [esi + 8], edx
mov ebx, eax
mov edi, edx
mov dword [esp + 0x10], edx
je 0x486ef5
mov dword [esp + 0x10], edx
cmp eax, 0xc0
jb 0x486ef5
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x20
jne 0x486e4b
and eax, 0x1f
lea edi, [edx + 1]
shl eax, 6
jmp 0x486eea
test al, 0x10
jne 0x486e63
and eax, 0xf
lea edi, [edx + 2]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
jmp 0x486ee4
test al, 8
jne 0x486e84
and eax, 7
lea edi, [edx + 3]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x486ee4
test al, 4
jne 0x486eb1
and eax, 3
lea edi, [edx + 4]
shl eax, 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]
jmp 0x486ee4
and eax, 1
lea edi, [edx + 5]
shl eax, 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]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 8], edi
mov ebx, ecx
mov dword [esp + 0x10], edi
mov edx, dword [ebp + 0x78]
and ebx, 0x7f
shr ecx, 7
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cda]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x10], edx
jae 0x487065
mov dword [esp + 0x10], edx
nop dword [eax]
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x48700c
cmp edx, 0xc0
jb 0x48700c
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x486f71
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x487008
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x486f8c
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x487002
and eax, 0x3f
test dl, 8
jne 0x486fac
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x487002
test dl, 4
jne 0x486fd5
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 0x487002
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x1c]
and ecx, 0x7f
shr edx, 7
movzx eax, byte [edx + 0x5b5358]
mov edx, dword [esp + 0x10]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx ecx, byte [eax*8 + 0x5b3cda]
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x5b3b60], eax
mov ebp, dword [esp + 0xb0]
je 0x487065
add edi, ebx
mov dword [esp + 0x1c], ecx
mov dword [esi + 8], edi
mov edx, dword [ebp + 0x78]
mov dword [esp + 0x10], edx
cmp edi, edx
jb 0x486f30
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x486386.10
mov eax, dword [esi + 8]
cmp eax, edx
jb case.0x486386.10
jmp 0x4863a0
mov edx, dword [esi + 0xc]
xor eax, eax
cmp cl, 0x74
sete al
movzx ebx, byte [edx + 3]
movzx edi, byte [edx + 1]
mov dword [esp + 0x30], eax
movzx eax, byte [edx + 4]
shl ebx, 8
or ebx, eax
shl edi, 8
movzx eax, byte [edx + 2]
or edi, eax
lea eax, [edx + 5]
imul edi, dword [ebp + 0x24]
add edi, 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
je 0x487178
mov edx, edi
mov dword [esp + 0x10], edi
movzx ecx, byte [edi]
dec ebx
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
cmp eax, dword [esi + 0x14]
jge 0x48710a
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x10]
mov edi, dword [eax + ecx*8]
test edi, edi
jns 0x48711b
mov edi, dword [ebp + 0x24]
add edi, edx
mov dword [esp + 0x10], edi
mov edx, edi
test ebx, ebx
jg 0x4870e1
jmp 0x487178
mov eax, dword [eax + ecx*8 + 4]
sub eax, edi
jmp 0x487172
xor eax, eax
cmp cl, 0x72
sete al
mov dword [esp + 0x30], 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 eax, dword [esi + 0x98]
cmp eax, dword [esi + 0x14]
jge 0x487168
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
test edx, edx
js 0x487168
mov eax, dword [ecx + eax*4 + 4]
sub eax, edx
jmp 0x487172
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
add ecx, 0xffffff9e
cmp ecx, 7
ja case.default.0x487193
movzx eax, byte [ecx + 0x4923bc]
jmp dword [eax*4 + 0x4923b4]
lea eax, [edx + 1]
mov ebx, ecx
mov dword [esi + 0xc], eax
and ebx, 1
movsx eax, byte [ecx + 0x5b3028]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x5b3034]
mov dword [esp + 0x10], ebx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x487218
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x487218
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x10], 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 0x487214
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
test eax, eax
je 0x484463
jns 0x487235
cmp dword [esi + 0x90], 0
je 0x484463
mov eax, dword [esi + 0x90]
mov ecx, eax
cmp eax, 1
jl 0x48727a
mov ebx, 1
push dword [esp + 0x30]
mov edi, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.00492f30
add esp, 0x14
test eax, eax
js 0x487298
add eax, edi
inc ebx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
cmp ebx, eax
jle 0x487247
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x10], 0
je 0x4872c3
mov dword [esi + 0x84], eax
jmp 0x48e933
mov ecx, edi
cmp eax, 0xfffffffe
jne 0x4872a7
mov edi, dword [ebp + 0x78]
mov ecx, edi
mov dword [esi + 8], edi
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x78]
jb case.default.0x49033a
jmp 0x485a11
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
mov eax, edi
cmp eax, dword [esi + 0x8c]
jge 0x48e97f
push dword [esp + 0x30]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.00492f30
add esp, 0x14
test eax, eax
js 0x487306
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x4872cf
cmp eax, 0xfffffffe
jne 0x48e97f
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x48e97f
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x48e97f
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle 0x48e97f
jmp 0x485477
push dword [esp + 0x30]
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.00492f30
mov ecx, eax
add esp, 0x14
mov dword [esi + 0x88], ecx
test ecx, ecx
jns 0x48739f
cmp ecx, 0xfffffffe
jne 0x487374
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.default.0x49033a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.default.0x49033a
cmp eax, dword [ebp + 0x84]
jbe case.default.0x49033a
jmp 0x485547
add dword [esi + 8], ecx
jmp 0x484463
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
lea eax, [edx + 0x21]
mov dword [esi + 0xc], eax
mov bl, byte [eax]
movzx ecx, bl
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x4873cf
movzx eax, byte [ecx + 0x4923cc]
jmp dword [eax*4 + 0x4923c4]
lea eax, [edx + 0x22]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x4873ec
mov eax, ecx
and eax, 1
mov dword [esp + 0x20], eax
jmp 0x4873f4
mov dword [esp + 0x24], 1
movsx eax, byte [ecx + 0x5b3028]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x5b3034]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x487489
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x487489
movzx ecx, byte [edx + 0x22]
xor eax, eax
cmp bl, 0x69
sete al
mov dword [esp + 0x20], eax
xor eax, eax
cmp bl, 0x6d
sete al
shl ecx, 8
mov dword [esp + 0x24], eax
movzx eax, byte [edx + 0x23]
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 0x48746f
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x487489
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ecx, dword [esp + 0x28]
mov ebx, 1
mov dword [esp + 0x10], ebx
test ecx, ecx
je 0x487603
cmp dword [esi + 0x90], ebx
jl 0x48764b
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov ecx, ebx
mov eax, ebx
cmp ebx, 0xc0
jb 0x4875c3
test bl, 0x20
jne 0x4874f7
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x4875c3
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x487525
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x4875c3
test bl, 8
jne 0x487552
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]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x4875c3
test bl, 4
jne 0x487588
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]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x4875c3
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 dword [esi + 8], eax
mov ebx, ecx
mov eax, ecx
cmp eax, 0xff
jbe 0x4875d3
cmp dword [esi + 0x9c], 0x6e
jmp 0x4875e6
mov eax, dword [esi + 0x28]
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.default.0x49033a
mov ebx, dword [esp + 0x10]
inc ebx
mov dword [esp + 0x10], ebx
cmp ebx, dword [esi + 0x90]
jle 0x4874b0
jmp 0x487647
cmp dword [esi + 0x90], ebx
jl 0x48764b
nop dword [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
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.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x487610
mov ecx, dword [esp + 0x28]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x487677
mov dword [esi + 0x84], eax
test ecx, ecx
jne 0x48fa47
jmp 0x48ea2c
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
test ecx, ecx
je 0x48785c
cmp eax, dword [esi + 0x8c]
jge 0x48784c
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48782a
movzx ebx, byte [edi]
mov dword [esp + 0x1c], 1
mov ecx, ebx
mov edx, ebx
cmp ebx, 0xc0
jb 0x4877d5
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x4876f5
mov eax, ebx
mov dword [esp + 0x1c], 2
and eax, 0x1f
mov ebx, ecx
shl eax, 6
or ebx, eax
mov eax, 2
mov ecx, ebx
mov edx, ebx
jmp 0x4877da
movzx eax, byte [edi + 2]
and eax, 0x3f
test bl, 0x10
jne 0x487724
and ebx, 0xf
mov dword [esp + 0x1c], 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
mov eax, 3
mov ecx, ebx
mov edx, ebx
jmp 0x4877da
test bl, 8
jne 0x487758
and ebx, 7
mov dword [esp + 0x1c], 4
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
mov eax, 4
mov ecx, ebx
mov edx, ebx
jmp 0x4877da
test bl, 4
jne 0x487795
and ebx, 3
mov dword [esp + 0x1c], 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]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, 5
mov ecx, ebx
mov edx, ebx
jmp 0x4877da
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, 6
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov edx, ebx
jmp 0x4877da
mov eax, 1
cmp edx, 0xff
jbe 0x4877ed
cmp dword [esi + 0x9c], 0x6e
je 0x48784c
jmp 0x48780e
mov eax, dword [esp + 0x1c]
and ecx, 7
mov dword [esp + 0x1c], eax
mov edx, 1
mov eax, dword [esi + 0x28]
shr ebx, 3
shl edx, cl
test byte [ebx + eax], dl
je 0x48784c
mov eax, dword [esp + 0x1c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jl 0x4876a0
jmp 0x48784c
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48784c
cmp edi, dword [ebp + 0x84]
jbe 0x48784c
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48fab1
cmp eax, dword [esi + 0x8c]
jge 0x4878c1
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x48789f
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 0x4878c1
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jl 0x487864
jmp 0x4878c1
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4878c1
cmp ebx, dword [ebp + 0x84]
jbe 0x4878c1
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48ea6f
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0x28], eax
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
mov bl, byte [edx]
movzx ecx, bl
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x487907
movzx eax, byte [ecx + 0x4923e0]
jmp dword [eax*4 + 0x4923d8]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x487924
mov eax, ecx
and eax, 1
mov dword [esp + 0x20], eax
jmp 0x48792c
mov dword [esp + 0x24], 1
movsx eax, byte [ecx + 0x5b3028]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x5b3034]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4879c1
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x4879c1
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
mov dword [esp + 0x20], eax
xor eax, eax
cmp bl, 0x6d
sete al
shl ecx, 8
mov dword [esp + 0x24], 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 0x4879a7
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x4879c1
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov eax, dword [esi + 0x90]
mov ebx, 1
mov ecx, eax
cmp eax, ebx
jl 0x487b00
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
cmp dword [esp + 0x28], 0
lea edi, [eax + 1]
movzx edx, byte [eax]
mov dword [esi + 8], edi
je 0x487ad7
cmp edx, 0xc0
jb 0x487ad7
test dl, 0x20
jne 0x487a27
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x487ad4
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x487a4e
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x487ad4
test dl, 8
jne 0x487a71
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 0x487ad4
test dl, 4
jne 0x487aa0
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 0x487ad4
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
push dword [esp + 0x28]
push dword [esi + 0x28]
push edx
call fcn.004942c0
add esp, 0xc
test eax, eax
je case.default.0x49033a
mov eax, dword [esi + 0x90]
inc ebx
cmp ebx, eax
jle 0x4879e0
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x487b1e
mov dword [esi + 0x84], eax
jmp 0x48f822
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jge 0x487c71
nop word [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487c4f
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
je 0x487c21
cmp edx, 0xc0
jb 0x487c21
test dl, 0x20
jne 0x487b81
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x487c19
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x487ba3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x487c19
and eax, 0x3f
test dl, 8
jne 0x487bc3
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x487c19
test dl, 4
jne 0x487bec
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 0x487c19
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
push dword [esp + 0x28]
push dword [esi + 0x28]
push edx
call fcn.004942c0
add esp, 0xc
test eax, eax
je 0x487c71
mov eax, dword [esp + 0x10]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jl 0x487b40
jmp 0x487c71
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x487c71
cmp edi, dword [ebp + 0x84]
jbe 0x487c71
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48f894
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x487e3d
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x487dc8
test bl, 0x20
jne 0x487cdb
mov eax, dword [esi + 0xc]
and ebx, 0x1f
shl ebx, 6
movzx eax, byte [eax + 1]
and eax, 0x3f
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x487dc8
test bl, 0x10
jne 0x487d10
mov eax, dword [esi + 0xc]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x487dc8
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
and eax, 0x3f
test bl, 8
jne 0x487d51
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 0x487dc8
test bl, 4
jne 0x487d8a
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 0x487dc8
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 edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 8]
sub eax, edx
mov ecx, dword [esi + 0x88]
cmp ecx, eax
jle 0x487dfd
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edx, edi
jb case.default.0x49033a
cmp edx, dword [ebp + 0x84]
jmp 0x485a17
test ecx, ecx
jle 0x487e2f
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.default.0x49033a
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x487e01
lea eax, [ecx - 1]
mov dword [esi + 0x88], eax
jmp 0x484463
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x487e79
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edi, dword [ebp + 0x84]
jbe case.0x48ef3a.14
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x491cfa
jmp case.0x48ef3a.14
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 0x488197
jmp case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x487eb5
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp edi, dword [ebp + 0x84]
jmp 0x485a17
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x488178
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x487ffc
test bl, 0x20
jne 0x487f0f
mov eax, dword [esi + 0xc]
and ebx, 0x1f
shl ebx, 6
movzx eax, byte [eax + 1]
and eax, 0x3f
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x487ffc
test bl, 0x10
jne 0x487f44
mov eax, dword [esi + 0xc]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x487ffc
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
and eax, 0x3f
test bl, 8
jne 0x487f85
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 0x487ffc
test bl, 4
jne 0x487fbe
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 0x487ffc
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 + 8]
mov edi, dword [esi + 0x80]
movzx ecx, byte [eax]
cmp edi, 0x80
jae 0x48802a
mov edx, dword [ebp + 0x38]
mov al, byte [edx + edi]
cmp al, byte [ecx + edx]
jne case.default.0x49033a
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x484463
lea edx, [eax + 1]
mov edi, ecx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x48811d
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x488059
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x488118
test cl, 0x10
jne 0x48807a
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 0x488118
test cl, 8
jne 0x4880a7
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 0x488118
test cl, 4
jne 0x4880dd
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 0x488118
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
mov edi, ecx
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
mov edx, dword [esi + 0x80]
cmp edx, ecx
je 0x484463
mov eax, edx
test eax, eax
jns 0x48813d
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5b5358]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x488158
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5b7558]
mov eax, dword [eax*8 + 0x5b3cdc]
add eax, edx
cmp edi, eax
je 0x484463
jmp case.default.0x49033a
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 case.0x48ef3a.14
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x484463
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 0x4882b5
mov dword [esp + 0x24], 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 0x4881fa
mov dword [esp + 0x20], ebx
cmp al, 0x35
jne 0x488202
mov dword [esp + 0x20], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x4882b5
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x4882b5
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x4882b5
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x4882b5
mov edx, dword [esi + 0xc]
cmp cl, 0x2e
sbb eax, eax
and eax, 0xfffffff3
movzx ebx, byte [edx]
add eax, 0x2e
sub ebx, eax
lea eax, [edx + 1]
mov ecx, ebx
mov dword [esi + 0xc], eax
and ebx, 1
mov dword [esp + 0x20], ebx
movsx eax, byte [ecx + 0x5b3028]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x5b3034]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4882b5
mov dword [esi + 0x8c], 0x7fffffff
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x488709
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 0x4883fe
test bl, 0x20
jne 0x488311
mov eax, dword [esi + 0xc]
and ebx, 0x1f
shl ebx, 6
movzx eax, byte [eax + 1]
and eax, 0x3f
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x4883fe
test bl, 0x10
jne 0x488346
mov eax, dword [esi + 0xc]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x4883fe
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
and eax, 0x3f
test bl, 8
jne 0x488387
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 0x4883fe
test bl, 4
jne 0x4883c0
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 0x4883fe
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 0x48871a
cmp dword [esi + 0x9c], 0x2e
jb 0x488470
mov edx, dword [esi + 0x80]
mov eax, edx
test eax, eax
jns 0x48842c
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5b5358]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x488447
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5b7558]
mov ecx, dword [eax*8 + 0x5b3cdc]
add ecx, edx
cmp ecx, edx
je 0x488470
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.00494260
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x488477
mov dword [esi + 0x6c], 0
mov eax, dword [esi + 0x90]
mov ecx, eax
mov dword [esp + 0x10], 1
cmp eax, 1
jl 0x488584
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 0x4884fe
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x4884c1
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4884c6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4884b0
cmp edi, 0xfffffffc
je 0x4884f3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4884fb
cmp edi, 0xfffffffd
je 0x4884f3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4884fb
cmp edi, 0xfffffffe
je 0x4884f3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4884fb
cmp edi, 0xffffffff
je 0x4884f3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4884fb
mov eax, dword [esi + 0x88]
jmp 0x488566
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x4885a2
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x4885a2
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x488531
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x488536
add ecx, 4
add edx, 4
sub edi, 4
jae 0x488520
cmp edi, 0xfffffffc
je 0x488563
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4885a2
cmp edi, 0xfffffffd
je 0x488563
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4885a2
cmp edi, 0xfffffffe
je 0x488563
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4885a2
cmp edi, 0xffffffff
je 0x488563
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4885a2
mov eax, dword [esi + 0x6c]
mov edx, dword [esp + 0x10]
add eax, ebx
inc edx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], edx
cmp edx, eax
jle 0x488490
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x4885c4
mov dword [esi + 0x84], eax
jmp 0x48fc21
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp ebx, dword [ebp + 0x78]
jb case.default.0x49033a
cmp ebx, dword [ebp + 0x84]
jmp 0x485a17
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jge 0x4886f9
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 0x48864e
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x488611
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x488616
add ecx, 4
add edx, 4
sub edi, 4
jae 0x488600
cmp edi, 0xfffffffc
je 0x488643
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x48864b
cmp edi, 0xfffffffd
je 0x488643
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x48864b
cmp edi, 0xfffffffe
je 0x488643
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x48864b
cmp edi, 0xffffffff
je 0x488643
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x48864b
mov eax, dword [esi + 0x88]
jmp 0x4886b6
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x4886d2
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x4886d2
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x488681
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x488686
add ecx, 4
add edx, 4
sub edi, 4
jae 0x488670
cmp edi, 0xfffffffc
je 0x4886b3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4886d2
cmp edi, 0xfffffffd
je 0x4886b3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4886d2
cmp edi, 0xfffffffe
je 0x4886b3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4886d2
cmp edi, 0xffffffff
je 0x4886b3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4886d2
mov eax, dword [esi + 0x6c]
mov ecx, dword [esp + 0x10]
add eax, ebx
inc ecx
mov dword [esi + 8], eax
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x8c]
jl 0x4885e0
jmp 0x4886f9
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4886f9
cmp ebx, dword [ebp + 0x78]
jb 0x4886f9
cmp ebx, dword [ebp + 0x84]
jbe 0x4886f9
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48fccd
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
jmp 0x48871e
mov ebx, dword [esp + 0x28]
cmp dword [esi + 0x9c], 0x2e
mov edi, 1
jb 0x488818
mov ecx, dword [esi + 0x80]
mov eax, dword [ebp + 0x3c]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x90]
mov ecx, eax
cmp eax, edi
jl 0x488784
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48e9e5
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x488773
cmp dword [esi + 0x94], ecx
jne case.0x48ef3a.14
inc eax
inc edi
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
cmp edi, eax
jle 0x488750
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x4887a2
mov dword [esi + 0x84], eax
jmp 0x48eb19
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
jge 0x488808
mov edi, ecx
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4887e6
movzx edx, byte [eax]
cmp dword [esi + 0x80], edx
je 0x4887d5
mov ecx, edi
cmp dword [esi + 0x94], edx
jne 0x488808
inc eax
inc ecx
mov dword [esi + 8], eax
mov edi, ecx
cmp ecx, dword [esi + 0x8c]
jl 0x4887b8
jmp 0x488808
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x488808
cmp eax, dword [ebp + 0x84]
jbe 0x488808
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x491cfa
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48eb5c
mov eax, dword [esi + 0x90]
mov ecx, eax
cmp eax, 1
jl 0x48884f
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x48886d
movzx edx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
jne case.default.0x49033a
mov eax, dword [esi + 0x90]
inc edi
cmp edi, eax
jle 0x488825
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x488886
mov dword [esi + 0x84], eax
jmp 0x48ebe1
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp ebx, dword [ebp + 0x84]
jmp 0x485a17
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4888e6
nop word [eax + eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4888c4
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x4888e6
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4888a0
jmp 0x4888e6
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4888e6
cmp ecx, dword [ebp + 0x84]
jbe 0x4888e6
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48ec24
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0xc]
test ebx, ebx
je 0x488bbf
inc eax
mov dword [esi + 0xc], eax
movzx ebx, byte [eax]
lea ecx, [eax + 1]
mov dword [esi + 0xc], ecx
cmp ebx, 0xc0
jb 0x488a04
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x488945
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 1]
jmp 0x488a01
test bl, 0x10
jne 0x488966
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 2]
jmp 0x488a01
test bl, 8
jne 0x488990
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x488a01
test bl, 4
jne 0x4889c6
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x488a01
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea ecx, [eax + 1]
mov dword [esi + 8], ecx
mov edi, edx
mov dword [esp + 0x10], edx
mov eax, edx
mov dword [esp + 0x1c], edx
cmp edx, 0xc0
jb 0x488b45
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x488a50
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x488b49
test dl, 0x10
jne 0x488a7e
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x488b49
test dl, 8
jne 0x488ab8
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 3]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x488b49
test dl, 4
jne 0x488afb
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 4]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x488b49
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x488b49
mov ecx, dword [esp + 0x10]
cmp dword [esi + 0x9c], 0x1f
jne 0x488b5f
cmp ebx, eax
jne 0x484463
jmp case.default.0x49033a
cmp ebx, 0x7f
jbe 0x488b9d
mov eax, ebx
test eax, eax
jns 0x488b6d
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5b5358]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x488b88
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5b7558]
mov eax, dword [eax*8 + 0x5b3cdc]
add eax, ebx
jmp 0x488baa
mov eax, dword [ebp + 0x3c]
mov edx, ecx
mov edi, dword [esp + 0x1c]
movzx eax, byte [eax + ebx]
cmp ebx, edx
je case.default.0x49033a
cmp eax, edi
jne 0x484463
jmp case.default.0x49033a
movzx edx, byte [eax + 1]
lea eax, [ecx + 1]
movzx edi, byte [ecx]
mov dword [esi + 8], eax
cmp edx, edi
je case.0x48ef3a.14
cmp dword [esi + 0x9c], 0x20
jne 0x488197
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x48ef3a.14
add dword [esi + 0xc], 2
jmp 0x484463
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 0x488d44
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 0x488c58
cmp al, 0x4f
je 0x488c58
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x488d44
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x488d44
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x488d44
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x488d44
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x488d44
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x24], 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 0x488d44
mov edx, dword [esi + 0xc]
cmp cl, 0x48
sbb eax, eax
and eax, 0xfffffff3
movzx ebx, byte [edx]
add eax, 0x48
sub ebx, eax
lea eax, [edx + 1]
mov ecx, ebx
mov dword [esi + 0xc], eax
and ebx, 1
mov dword [esp + 0x20], ebx
movsx eax, byte [ecx + 0x5b3028]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x5b3034]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x488d44
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
mov edx, dword [esi + 0xc]
mov eax, dword [esp + 0x28]
inc edx
mov dword [esi + 0xc], edx
test eax, eax
je 0x488e75
mov ecx, dword [esi + 0x80]
cmp ecx, 0xc0
jb 0x488e75
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x488d96
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0xc]
jmp 0x488e71
test cl, 0x10
jne 0x488dbe
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 2
jmp 0x488e71
test cl, 8
jne 0x488df2
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 3
jmp 0x488e71
test cl, 4
jne 0x488e2f
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 4
jmp 0x488e71
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 5
mov eax, dword [esp + 0x28]
cmp dword [esi + 0x9c], 0x48
jb 0x489261
test eax, eax
je 0x488ed5
mov edx, dword [esi + 0x80]
cmp edx, 0x7f
jbe 0x488ed5
mov eax, edx
test eax, eax
jns 0x488e9a
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5b5358]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x488eb5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
mov edi, 1
movzx eax, word [ecx*2 + 0x5b7558]
mov eax, dword [eax*8 + 0x5b3cdc]
add eax, edx
mov dword [esi + 0x94], eax
jmp 0x488ef8
cmp dword [esp + 0x28], 0
mov edi, 1
mov ecx, dword [esi + 0x80]
mov eax, dword [ebp + 0x3c]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
je 0x489036
cmp dword [esi + 0x90], 1
jl 0x489074
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, ecx
cmp ecx, 0xc0
jb 0x48900f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x488f4e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x48900a
test cl, 0x10
jne 0x488f6f
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 0x48900a
test cl, 8
jne 0x488f99
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 0x48900a
test cl, 4
jne 0x488fcf
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 0x48900a
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
mov eax, ecx
cmp dword [esi + 0x80], ecx
je case.default.0x49033a
cmp dword [esi + 0x94], eax
je case.default.0x49033a
inc edi
cmp edi, dword [esi + 0x90]
jle 0x488f10
jmp 0x489074
cmp dword [esi + 0x90], edi
jl 0x489074
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.default.0x49033a
cmp dword [esi + 0x94], ecx
je case.default.0x49033a
inc eax
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x489040
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x484463
test ebx, ebx
je 0x4890a0
cmp dword [esp + 0x28], 0
mov dword [esi + 0x84], eax
jne 0x48fe58
jmp 0x48ecce
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test ebx, ebx
je 0x4891f7
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4891e7
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4891c5
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4891a0
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x489104
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x48919c
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48911f
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x489196
and eax, 0x3f
test dl, 8
jne 0x48913f
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x489196
test dl, 4
jne 0x489168
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 0x489196
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp dword [esi + 0x80], edx
je 0x4891e7
cmp dword [esi + 0x94], eax
je 0x4891e7
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4890c4
jmp 0x4891e7
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4891e7
cmp edi, dword [ebp + 0x84]
jbe 0x4891e7
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48febc
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x489251
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48922f
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x489251
cmp dword [esi + 0x94], ecx
je 0x489251
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x489205
jmp 0x489251
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x489251
cmp eax, dword [ebp + 0x84]
jbe 0x489251
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x491cfa
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48ed11
mov ebx, dword [esp + 0x28]
mov edi, 1
mov dword [esp + 0x10], edi
test ebx, ebx
je 0x4893b9
cmp dword [esi + 0x90], edi
jl 0x4893ef
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ebx, byte [eax]
inc eax
mov dword [esp + 0x1c], ebx
mov dword [esi + 8], eax
cmp ebx, 0xc0
jb 0x48939a
mov cl, byte [eax]
test bl, 0x20
jne 0x4892bb
inc eax
and ebx, 0x1f
mov dword [esi + 8], eax
movzx eax, cl
jmp 0x489392
mov dl, byte [eax + 1]
test bl, 0x10
jne 0x4892df
add eax, 2
movzx ecx, cl
and ebx, 0xf
mov dword [esi + 8], eax
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, dl
jmp 0x489392
test bl, 8
jne 0x48931a
mov bl, byte [eax + 2]
add eax, 3
mov dword [esi + 8], eax
mov eax, dword [esp + 0x1c]
movzx ecx, cl
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx ebx, bl
shl ecx, 6
and ebx, 0x3f
movzx eax, dl
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
jmp 0x48939a
mov ch, byte [eax + 3]
movzx edi, cl
and edi, 0x3f
test bl, 4
mov bl, byte [eax + 2]
movzx ebx, bl
jne 0x489358
add eax, 4
and ebx, 0x3f
mov dword [esi + 8], eax
mov eax, dword [esp + 0x1c]
and eax, 3
shl eax, 6
or edi, eax
movzx eax, dl
shl edi, 6
and eax, 0x3f
or edi, eax
movzx eax, ch
shl edi, 6
or ebx, edi
jmp 0x48938e
mov dh, byte [eax + 4]
and ebx, 0x3f
add eax, 5
mov dword [esi + 8], eax
mov eax, dword [esp + 0x1c]
and eax, 1
shl eax, 6
or edi, eax
movzx eax, dl
and eax, 0x3f
shl edi, 6
or edi, eax
movzx eax, ch
shl edi, 6
and eax, 0x3f
or ebx, edi
shl ebx, 6
or ebx, eax
movzx eax, dh
mov edi, dword [esp + 0x10]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [esi + 0x80], ebx
je case.default.0x49033a
inc edi
mov dword [esp + 0x10], edi
cmp edi, dword [esi + 0x90]
jle 0x489282
jmp 0x4893eb
cmp dword [esi + 0x90], edi
jl 0x4893ef
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x48886d
movzx edx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je case.default.0x49033a
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4893c1
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x48941b
mov dword [esi + 0x84], eax
test ebx, ebx
jne 0x49005f
jmp 0x48ed96
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test ebx, ebx
je 0x48956e
mov ecx, dword [esi + 0x90]
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x8c]
jge 0x48955e
nop
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48953c
movzx edx, byte [edi]
mov ebx, 1
cmp edx, 0xc0
jb 0x48951b
test dl, 0x20
jne 0x489476
movzx eax, byte [edi + 1]
mov ebx, 2
and edx, 0x1f
jmp 0x489513
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x489498
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x48950f
and eax, 0x3f
test dl, 8
jne 0x4894b8
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48950f
test dl, 4
jne 0x4894e1
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 0x48950f
and edx, 1
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]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp dword [esi + 0x80], edx
je 0x48955e
lea eax, [ebx + edi]
inc ecx
mov dword [esi + 8], eax
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x8c]
jl 0x489440
jmp 0x48955e
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48955e
cmp edi, dword [ebp + 0x84]
jbe 0x48955e
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x4900be
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4895c6
nop dword [eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4895a4
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x4895c6
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x489580
jmp 0x4895c6
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4895c6
cmp ecx, dword [ebp + 0x84]
jbe 0x4895c6
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x491cfa
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48edd9
mov eax, dword [esi + 0xc]
mov dword [esp + 0x20], 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 0x489707
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 + 0x20], edx
mov dword [esi + 0xc], eax
jmp 0x489707
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x489707
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x489707
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x489707
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x24], 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 0x489707
mov ecx, dword [esi + 0xc]
movzx ebx, byte [ecx]
lea eax, [ecx + 1]
add ebx, 0xffffffab
mov dword [esi + 0xc], eax
mov edx, ebx
and ebx, 1
mov dword [esp + 0x20], ebx
movsx eax, byte [edx + 0x5b3028]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x5b3034]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x489707
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 0x489729
cmp ecx, 0xf
je 0x489729
mov dword [esi + 0x60], 0xffffffff
jmp 0x48974d
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
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx eax, byte [eax]
mov dword [esi + 0x64], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x90]
test ecx, ecx
jle 0x48995a
mov eax, dword [esi + 0x60]
test eax, eax
js 0x48a654
cmp eax, 0xa
ja case.0x4902b8.15
jmp dword [eax*4 + 0x4923ec]
cmp dword [esi + 0x68], 0
jne case.default.0x49033a
mov ebx, dword [esp + 0x28]
mov edi, 1
cmp ecx, edi
jl 0x48995e
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48ee45
movzx edx, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
test ebx, ebx
je 0x4897de
cmp edx, 0xc0
jb 0x4897de
test dl, 0x20
jne 0x4897bc
lea eax, [ecx + 2]
jmp 0x4897db
test dl, 0x10
jne 0x4897c6
lea eax, [ecx + 3]
jmp 0x4897db
test dl, 8
jne 0x4897d0
lea eax, [ecx + 4]
jmp 0x4897db
lea eax, [ecx + 5]
test dl, 4
je 0x4897db
lea eax, [ecx + 6]
mov dword [esi + 8], eax
inc edi
cmp edi, dword [esi + 0x90]
jle 0x489791
jmp 0x48995e
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
nop dword [eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x48990a
cmp eax, 0xc0
jb 0x48990a
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x20
jne 0x489849
and eax, 0x1f
shl eax, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x489905
test al, 0x10
jne 0x489869
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x489905
test al, 8
jne 0x489895
and eax, 7
shl eax, 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 0x489905
test al, 4
jne 0x4898ca
and eax, 3
shl eax, 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 0x489905
and eax, 1
shl eax, 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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp eax, 9
je 0x48993f
cmp eax, 5
je 0x48993f
cmp eax, 8
je 0x48993f
xor eax, eax
jmp 0x489944
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x489800
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x484463
cmp dword [esp + 0x20], 0
je 0x48b9cb
mov ecx, dword [esi + 0x60]
test ecx, ecx
js 0x48b9ae
cmp ecx, 0xa
ja case.0x4902b8.15
jmp dword [ecx*4 + 0x492418]
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
nop
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x489abf
cmp eax, 0xc0
jb 0x489abf
test al, 0x20
jne 0x4899e9
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x489aba
test al, 0x10
jne 0x489a0f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x489aba
test al, 8
jne 0x489a41
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x489aba
test al, 4
movzx eax, byte [edx]
jne 0x489a7c
and ecx, 3
and eax, 0x3f
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 0x489aba
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4899a0
jmp 0x48995a
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
nop dword [eax + eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x489c3f
cmp eax, 0xc0
jb 0x489c3f
test al, 0x20
jne 0x489b69
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x489c3a
test al, 0x10
jne 0x489b8f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x489c3a
test al, 8
jne 0x489bc1
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x489c3a
test al, 4
movzx eax, byte [edx]
jne 0x489bfc
and ecx, 3
and eax, 0x3f
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 0x489c3a
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x489b20
jmp 0x48995a
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x489db0
cmp eax, 0xc0
jb 0x489db0
test al, 0x20
jne 0x489cda
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x489dab
test al, 0x10
jne 0x489d00
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x489dab
test al, 8
jne 0x489d32
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x489dab
test al, 4
movzx eax, byte [edx]
jne 0x489d6d
and ecx, 3
and eax, 0x3f
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 0x489dab
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x489c91
jmp 0x48995a
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x489f21
cmp eax, 0xc0
jb 0x489f21
test al, 0x20
jne 0x489e4b
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x489f1c
test al, 0x10
jne 0x489e71
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x489f1c
test al, 8
jne 0x489ea3
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x489f1c
test al, 4
movzx eax, byte [edx]
jne 0x489ede
and ecx, 3
and eax, 0x3f
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 0x489f1c
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x489f58
cmp eax, 3
je 0x489f58
xor eax, eax
jmp 0x489f5d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x489e02
jmp 0x48995a
mov dword [esp + 0x10], 1
cmp ecx, 1
jl 0x48995a
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
cmp dword [esp + 0x28], 0
lea edx, [eax + 1]
movzx ecx, byte [eax]
mov dword [esi + 8], edx
mov eax, ecx
mov dword [esp + 0x1c], ecx
mov edi, ecx
mov ebx, ecx
mov dword [esp + 0x18], ecx
je 0x48a0ba
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0xc0
jb 0x48a0ba
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x489fed
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x48a0a9
test cl, 0x10
jne 0x48a00e
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 0x48a0a9
test cl, 8
jne 0x48a038
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 0x48a0a9
test cl, 4
jne 0x48a06e
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 0x48a0a9
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
mov edi, ecx
mov dword [esp + 0x1c], ecx
mov eax, ecx
mov ebx, ecx
mov dword [esp + 0x18], ecx
cmp dword [esp + 0x1c], 0x20
mov edx, ecx
ja 0x48a0db
cmp eax, 0x20
je case.0x48a1b0.8193
lea eax, [ecx - 9]
cmp eax, 4
ja case.0x48a1b0.8203
jmp dword [eax*4 + 0x492444]
cmp edx, 0x2000
ja 0x48a188
cmp edi, 0x2000
je case.0x48a1b0.8193
cmp ecx, 0x1680
ja 0x48a180
je case.0x48a1b0.8193
mov eax, ecx
sub eax, 0x85
je case.0x48a1b0.8193
sub eax, 0x1b
je case.0x48a1b0.8193
mov eax, ecx
test eax, eax
jns 0x48a124
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
and ecx, 0x8000007f
jns 0x48a13e
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp dword [eax*4 + 0x5b3ae8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x49033a
mov edx, dword [esp + 0x10]
inc edx
mov dword [esp + 0x10], edx
cmp edx, dword [esi + 0x90]
jle 0x489f90
jmp 0x48995a
cmp ecx, 0x180e
jmp 0x48a115
cmp ebx, 0x3000
ja case.0x48a1b0.8203
cmp dword [esp + 0x18], 0x3000
je case.0x48a1b0.8193
lea eax, [ecx - 0x2001]
cmp eax, 0x5e
ja case.0x48a1b0.8203
movzx eax, byte [eax + 0x492460]
jmp dword [eax*4 + 0x492458]
cmp dword [esi + 0x68], 0
jne case.default.0x49033a
jmp 0x48a166
mov dword [esp + 0x18], 1
cmp ecx, 1
jl 0x48995a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
mov ebx, eax
je 0x48a2df
cmp eax, 0xc0
jb 0x48a2df
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x20
jne 0x48a21f
and eax, 0x1f
shl eax, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x48a2d8
test al, 0x10
jne 0x48a23f
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x48a2d8
test al, 8
jne 0x48a268
and eax, 7
shl eax, 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 0x48a2d8
test al, 4
jne 0x48a29d
and eax, 3
shl eax, 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 0x48a2d8
and eax, 1
shl eax, 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
mov edi, ecx
mov ebx, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x48a31b
cmp eax, 3
je 0x48a31b
cmp ebx, 0x5f
je 0x48a31b
xor eax, eax
jmp 0x48a320
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x49033a
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x90]
jle 0x48a1d4
jmp 0x48995a
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
cmp dword [esp + 0x28], 0
lea edi, [eax + 1]
movzx edx, byte [eax]
mov dword [esi + 8], edi
mov ecx, edx
je 0x48a449
cmp edx, 0xc0
jb 0x48a449
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x48a39d
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x48a444
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x48a3be
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x48a444
test dl, 8
jne 0x48a3e1
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 0x48a444
test dl, 4
jne 0x48a410
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 0x48a444
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 ecx, edx
mov eax, dword [esi + 0x64]
cmp ecx, dword [eax*4 + 0x5b3b98]
lea eax, [eax*4 + 0x5b3b98]
jb 0x48a46d
mov ecx, dword [eax]
nop
lea eax, [eax + 4]
cmp edx, ecx
je 0x48a489
mov ecx, dword [eax]
cmp edx, ecx
jae 0x48a460
cmp dword [esi + 0x68], 0
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x48a350
jmp 0x48995a
cmp dword [esi + 0x68], 0
jne case.default.0x49033a
jmp 0x48a477
mov dword [esp + 0x18], 1
cmp ecx, 1
jl 0x48995a
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
cmp dword [esp + 0x28], 0
lea edi, [eax + 1]
movzx ecx, byte [eax]
mov dword [esi + 8], edi
mov edx, ecx
mov eax, ecx
mov dword [esp + 0x10], ecx
mov ebx, ecx
je 0x48a5fd
mov dword [esp + 0x10], ecx
cmp ecx, 0xc0
jb 0x48a5fd
movzx eax, byte [edi]
and eax, 0x3f
test cl, 0x20
jne 0x48a510
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edi + 1]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x48a601
test cl, 0x10
jne 0x48a53c
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x48a601
test cl, 8
jne 0x48a574
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x48a601
test cl, 4
jne 0x48a5b5
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
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]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x48a601
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
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, edx
mov ebx, edx
mov edi, edx
jmp 0x48a601
mov edi, dword [esp + 0x10]
cmp edx, 0x24
je 0x48a62c
cmp eax, 0x40
je 0x48a62c
cmp ebx, 0x60
je 0x48a62c
cmp edi, 0xa0
jb 0x48a620
cmp ecx, 0xd7ff
jbe 0x48a62c
cmp ecx, 0xe000
jae 0x48a62c
xor eax, eax
jmp 0x48a631
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x49033a
mov edx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x18], edx
cmp edx, dword [esi + 0x90]
jle 0x48a4b0
jmp 0x48995a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x48a94b
mov dword [esp + 0x18], 1
cmp ecx, 1
jl 0x48995a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x485a03
cmp dword [esp + 0x28], 0
lea edi, [ecx + 1]
movzx eax, byte [ecx]
mov edx, edi
mov dword [esi + 8], edi
mov ecx, eax
mov ebx, eax
mov dword [esp + 0x10], edi
je 0x48a77c
mov dword [esp + 0x10], edi
cmp eax, 0xc0
jb 0x48a77c
test al, 0x20
jne 0x48a6bc
movzx eax, byte [edi]
lea edx, [edi + 1]
and ecx, 0x1f
jmp 0x48a76b
test al, 0x10
jne 0x48a6dc
mov ecx, eax
lea edx, [edi + 2]
movzx eax, byte [edi]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
jmp 0x48a76b
test al, 8
jne 0x48a705
mov ecx, eax
lea edx, [edi + 3]
movzx eax, byte [edi]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
jmp 0x48a76b
movzx ecx, byte [edi]
and ecx, 0x3f
test al, 4
jne 0x48a738
and eax, 3
lea edx, [edi + 4]
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
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]
jmp 0x48a76b
and eax, 1
lea edx, [edi + 5]
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
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
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x10], edx
shr ecx, 7
and ebx, 0x7f
movzx eax, byte [ecx + 0x5b5358]
mov ecx, edx
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cda]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x78]
cmp dword [esp + 0x10], eax
jae 0x48a90b
mov edi, edx
mov dword [esp + 0x10], eax
nop word [eax + eax]
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x48a899
cmp edx, 0xc0
jb 0x48a899
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48a801
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48a895
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48a819
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x48a88f
and eax, 0x3f
test dl, 8
jne 0x48a839
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48a88f
test dl, 4
jne 0x48a862
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 0x48a88f
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x1c]
and ecx, 0x7f
shr edx, 7
mov dword [esp + 0x14], edi
movzx eax, byte [edx + 0x5b5358]
mov edx, edi
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx ecx, byte [eax*8 + 0x5b3cda]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x5b3b60], eax
mov ebp, dword [esp + 0xb0]
je 0x48a903
lea edx, [ebx + edi]
mov dword [esp + 0x1c], ecx
mov dword [esi + 8], edx
mov edi, edx
mov eax, dword [ebp + 0x78]
mov ecx, edx
mov dword [esp + 0x10], eax
cmp edx, eax
jb 0x48a7c0
jmp 0x48a90b
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x48a931
cmp edx, eax
jb 0x48a931
cmp ecx, dword [ebp + 0x84]
jbe 0x48a931
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x48fc8c
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x90]
jle 0x48a671
jmp 0x48995a
mov ebx, dword [esp + 0x28]
add eax, 0xfffffffa
test ebx, ebx
je 0x48b510
cmp eax, 0xf
ja case.0x4902b8.15
jmp dword [eax*4 + 0x4924c0]
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x485a03
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x48a9b9
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004949e0
mov ecx, dword [ebp + 0x18]
add esp, 0x14
test eax, eax
je 0x48a9ad
mov eax, 1
jmp 0x48a9af
xor eax, eax
test eax, eax
jne case.default.0x49033a
jmp 0x48a9e0
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x48a9de
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x48a9de
cmp edi, 1
je case.default.0x49033a
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x49033a
xor ecx, ecx
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x48aa16
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb 0x48aa16
test ecx, ecx
jne 0x48aa16
cmp dword [ebp + 0x1c], 2
jne 0x48aa16
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x48aa16
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x48fc8c
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48aa32
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48aa32
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x48aa21
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x48a977
jmp 0x48995a
mov edi, 1
cmp ecx, edi
jl 0x48995e
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x48e9e5
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x48aa88
nop word [eax + eax]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48aa88
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x48aa70
inc edi
cmp edi, dword [esi + 0x90]
jle 0x48aa54
jmp 0x48995e
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja case.0x48ef3a.14
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x48995e
mov dword [esp + 0x14], 1
cmp ecx, 1
jl 0x48995e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov edi, ecx
mov eax, ecx
mov ebx, edx
cmp ecx, 0xc0
jb 0x48abc7
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x48ab02
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc edx
jmp 0x48abbe
test cl, 0x10
jne 0x48ab23
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 2
jmp 0x48abbe
test cl, 8
jne 0x48ab4d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 3
jmp 0x48abbe
test cl, 4
jne 0x48ab83
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 4
jmp 0x48abbe
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 5
mov dword [esi + 8], edx
mov edi, ecx
mov eax, ecx
mov ebx, edx
cmp edi, 0x85
ja 0x48abfb
cmp eax, 0x85
je case.0x48abe2.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x49033a
jmp dword [ecx*4 + 0x492500]
cmp ebx, dword [ebp + 0x78]
jae case.0x48abe2.10
cmp byte [edx], 0xa
jne case.0x48abe2.10
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x48abe2.10
sub ecx, 0x2028
je case.0x48abe2.11
sub ecx, 1
jne case.default.0x49033a
cmp dword [ebp + 0x68], 0
jne case.default.0x49033a
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [esi + 0x90]
jle 0x48aac2
jmp 0x48995a
mov dword [esp + 0x14], 1
cmp ecx, 1
jl 0x48995e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp ecx, 0xc0
jb 0x48ad50
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x48ac87
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x48ad43
test cl, 0x10
jne 0x48aca8
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 0x48ad43
test cl, 8
jne 0x48acd2
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 0x48ad43
test cl, 4
jne 0x48ad08
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 0x48ad43
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
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp dword [esp + 0x18], 0x2000
mov edx, ecx
ja 0x48adbc
cmp ebx, 0x2000
je case.default.0x49033a
cmp ecx, 0xa0
ja 0x48ada2
je case.default.0x49033a
cmp ecx, 9
je case.default.0x49033a
cmp ecx, 0x20
je case.default.0x49033a
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [esi + 0x90]
jle 0x48ac41
jmp 0x48995a
cmp edx, 0x1680
je case.default.0x49033a
cmp ecx, 0x180e
je case.default.0x49033a
jmp case.0x48ade1.8203
cmp eax, 0x3000
ja case.0x48ade1.8203
cmp edi, 0x3000
je case.default.0x49033a
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x48ade1.8203
movzx eax, byte [ecx + 0x492518]
jmp dword [eax*4 + 0x492510]
mov dword [esp + 0x14], 1
cmp ecx, 1
jl 0x48995e
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp ecx, 0xc0
jb 0x48af0f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x48ae46
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x48af02
test cl, 0x10
jne 0x48ae67
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 0x48af02
test cl, 8
jne 0x48ae91
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 0x48af02
test cl, 4
jne 0x48aec7
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 0x48af02
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
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp dword [esp + 0x18], 0x2000
mov edx, ecx
ja 0x48af6b
cmp ebx, 0x2000
je case.0x48af94.8193
cmp ecx, 0xa0
ja 0x48af55
je case.0x48af94.8193
cmp ecx, 9
je case.0x48af94.8193
cmp ecx, 0x20
jne case.default.0x49033a
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [esi + 0x90]
jle 0x48ae00
jmp 0x48995a
cmp edx, 0x1680
je case.0x48af94.8193
cmp ecx, 0x180e
jne case.default.0x49033a
jmp case.0x48af94.8193
cmp eax, 0x3000
ja case.default.0x49033a
cmp edi, 0x3000
je case.0x48af94.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x49033a
movzx eax, byte [ecx + 0x492580]
jmp dword [eax*4 + 0x492578]
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
nop dword [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, ecx
mov edi, ecx
cmp ecx, 0xc0
jb 0x48b0b3
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x48aff0
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x48b0ac
test cl, 0x10
jne 0x48b011
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 0x48b0ac
test cl, 8
jne 0x48b03b
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 0x48b0ac
test cl, 4
jne 0x48b071
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 0x48b0ac
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
mov edi, ecx
mov eax, ecx
cmp eax, 0x85
ja 0x48b0d5
cmp edi, 0x85
je case.default.0x49033a
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x48b0ce
jmp dword [ecx*4 + 0x4925e0]
sub ecx, 0x2028
je case.default.0x49033a
sub ecx, 1
je case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x48afb0
jmp 0x48995a
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x48b200
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x48b152
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x48b1f9
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x48b173
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x48b1f9
test dl, 8
jne 0x48b196
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 0x48b1f9
test dl, 4
jne 0x48b1c5
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 0x48b1f9
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 ecx, edx
mov eax, edx
cmp eax, 0x85
ja 0x48b222
cmp ecx, 0x85
je case.0x48b21b.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x49033a
jmp dword [edx*4 + 0x4925f0]
sub edx, 0x2028
je case.0x48b21b.10
sub edx, 1
jne case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x48b110
jmp 0x48995a
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x485a75
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
mov eax, edx
cmp edx, 0xc0
jb 0x48b33e
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x48b292
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x48b339
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x48b2b3
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x48b339
test dl, 8
jne 0x48b2d6
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 0x48b339
test dl, 4
jne 0x48b305
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 0x48b339
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, edx
cmp eax, 0x80
jae 0x48b352
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.default.0x49033a
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x48b252
jmp 0x48995a
cmp ecx, 1
jl 0x48995e
mov edi, 1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48ee45
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x48ef3a.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b372
jmp 0x48995e
mov edi, 1
cmp ecx, edi
jl 0x48995e
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x48ee45
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x48b3e3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x48ef3a.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x48b408
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48b408
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x48b3f0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x48b3c0
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48ee45
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x48ef3a.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b424
jmp 0x48995e
mov edi, 1
cmp ecx, edi
jl 0x48995e
mov edx, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x48ee45
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x48b493
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x48ef3a.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x48b4b8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48b4b8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x48b4a0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x48b470
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48ee45
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x48ef3a.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b4d4
jmp 0x48995e
cmp eax, 0xf
ja case.0x4902b8.15
jmp dword [eax*4 + 0x492600]
mov ebx, 1
cmp ecx, ebx
jl 0x48995a
nop dword [eax]
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x78]
cmp edx, ecx
jae 0x485bd0
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x48b570
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
push edi
push edx
call fcn.004949e0
mov ecx, dword [ebp + 0x78]
add esp, 0x14
test eax, eax
je 0x48b564
mov eax, 1
jmp 0x48b566
xor eax, eax
test eax, eax
jne case.default.0x49033a
jmp 0x48b597
mov edi, dword [ebp + 0x1c]
mov eax, ecx
sub eax, edi
cmp edx, eax
ja 0x48b597
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x48b597
cmp edi, 1
je case.default.0x49033a
mov al, byte [edx + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x49033a
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x48b5ce
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, ecx
jb 0x48b5ce
cmp dword [ebp + 0x18], 0
jne 0x48b5ce
cmp dword [ebp + 0x1c], 2
jne 0x48b5ce
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x48b5ce
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x48fc8c
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x48b530
jmp 0x48995a
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x48aaa6
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
mov edx, 1
cmp ecx, edx
jl 0x48995e
nop dword [eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48ee45
mov al, byte [ecx]
inc ecx
movzx eax, al
add eax, 0xfffffff6
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x48ef3a.14
movzx eax, byte [eax + 0x492650]
jmp dword [eax*4 + 0x492640]
cmp ecx, dword [ebp + 0x78]
jae case.0x48b648.10
cmp byte [ecx], 0xa
jne case.0x48b648.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x48b648.10
cmp dword [ebp + 0x68], 0
jne case.0x48ef3a.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x48b620
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edx, 1
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48e9e5
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x48ef3a.14
cmp ecx, 0x20
je case.0x48ef3a.14
cmp ecx, 0xa0
je case.0x48ef3a.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x48b690
jmp 0x48995e
mov edx, 1
cmp ecx, edx
jl 0x48995e
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48e9e5
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x48b709
cmp ecx, 0x20
je 0x48b709
cmp ecx, 0xa0
jne case.0x48ef3a.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x48b6e0
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edx, 1
mov edi, edx
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48e9e5
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
movzx eax, cl
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x48b756.11
movzx eax, byte [eax + 0x4926d4]
mov edx, edi
jmp dword [eax*4 + 0x4926cc]
inc edx
mov edi, edx
cmp edx, dword [esi + 0x90]
jle 0x48b730
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edx, 1
nop dword [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48e9e5
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
movzx eax, cl
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x48ef3a.14
movzx eax, byte [eax + 0x492758]
jmp dword [eax*4 + 0x492750]
inc edx
cmp edx, dword [esi + 0x90]
jle 0x48b780
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
nop dword [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48b5f3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x48ef3a.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b7d0
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48b5f3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x48ef3a.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b810
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48b5f3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x48ef3a.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b850
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48b5f3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x48ef3a.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b890
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48b5f3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x48ef3a.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b8d0
jmp 0x48995e
cmp ecx, 1
jl 0x48995e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48b5f3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x48ef3a.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x48b910
jmp 0x48995e
mov dword [esi + 0x84], eax
jmp 0x490726
mov dword [esi + 0x84], eax
jmp 0x4908f4
mov dword [esi + 0x84], eax
jmp 0x490aba
mov dword [esi + 0x84], eax
jmp 0x490c78
mov dword [esi + 0x84], eax
jmp 0x490e36
mov dword [esi + 0x84], eax
jmp 0x49161d
mov dword [esi + 0x84], eax
jmp 0x491a37
mov dword [esi + 0x84], eax
jmp 0x491c75
mov dword [esi + 0x84], eax
jmp 0x491e56
mov dword [esi + 0x84], eax
jmp 0x491800
cmp dword [esi + 0x7c], 0x16
mov dword [esi + 0x84], eax
je 0x49116b
test ebx, ebx
jne 0x4903ab
jmp 0x48f044
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x48c933
cmp eax, 0xa
ja case.0x4902b8.15
jmp dword [eax*4 + 0x4927d4]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x48ba62
nop word [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48ba72
movzx ecx, byte [edx]
mov eax, 1
test ebx, ebx
je 0x48ba4e
cmp ecx, 0xc0
jb 0x48ba4e
test cl, 0x20
jne 0x48ba28
mov eax, 2
jmp 0x48ba4e
test cl, 0x10
jne 0x48ba34
mov eax, 3
jmp 0x48ba4e
test cl, 8
jne 0x48ba40
mov eax, 4
jmp 0x48ba4e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x48ba62
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48ba00
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x4911ce
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48ba62
cmp edx, dword [ebp + 0x84]
jbe 0x48ba62
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x48ba62
jmp 0x491cfa
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop word [eax + eax]
mov edx, dword [esi + 8]
mov ebx, 1
cmp edx, dword [ebp + 0x78]
jae 0x48bc07
cmp dword [esp + 0x28], 0
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x48bba4
cmp eax, 0xc0
jb 0x48bba4
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x48baf9
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x48bba0
test al, 0x10
jne 0x48bb13
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x48bb9a
test al, 8
jne 0x48bb36
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x48bb9a
test al, 4
jne 0x48bb65
and eax, 3
mov ebx, 5
shl eax, 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]
jmp 0x48bb9a
and eax, 1
mov ebx, 6
shl eax, 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
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp eax, 9
je 0x48bbd9
cmp eax, 5
je 0x48bbd9
cmp eax, 8
je 0x48bbd9
xor eax, eax
jmp 0x48bbde
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x48ba62
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48bab0
jmp 0x48ba62
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48ba62
cmp edx, dword [ebp + 0x84]
jbe 0x48ba62
mov dword [ebp + 0x64], ebx
cmp eax, 1
jle 0x48ba62
jmp 0x485477
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop dword [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48bd9e
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x48bd44
cmp eax, 0xc0
jb 0x48bd44
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x48bc99
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x48bd40
test al, 0x10
jne 0x48bcb3
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x48bd3a
test al, 8
jne 0x48bcd6
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x48bd3a
test al, 4
jne 0x48bd05
and eax, 3
mov ebx, 5
shl eax, 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]
jmp 0x48bd3a
and eax, 1
mov ebx, 6
shl eax, 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
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x48ba62
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48bc50
jmp 0x48ba62
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48ba62
cmp edx, dword [ebp + 0x84]
jbe 0x48ba62
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x48ba62
jmp 0x485477
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48bd9e
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x48bed3
cmp eax, 0xc0
jb 0x48bed3
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x48be28
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x48becf
test al, 0x10
jne 0x48be42
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x48bec9
test al, 8
jne 0x48be65
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x48bec9
test al, 4
jne 0x48be94
and eax, 3
mov ebx, 5
shl eax, 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]
jmp 0x48bec9
and eax, 1
mov ebx, 6
shl eax, 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
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x48ba62
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48bde3
jmp 0x48ba62
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop dword [eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48bd9e
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x48c034
cmp eax, 0xc0
jb 0x48c034
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x48bf89
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x48c030
test al, 0x10
jne 0x48bfa3
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x48c02a
test al, 8
jne 0x48bfc6
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x48c02a
test al, 4
jne 0x48bff5
and eax, 3
mov ebx, 5
shl eax, 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]
jmp 0x48c02a
and eax, 1
mov ebx, 6
shl eax, 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
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x48ba62
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48bf40
jmp 0x48ba62
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop dword [eax]
mov edx, dword [esi + 8]
mov ebx, 1
cmp edx, dword [ebp + 0x78]
jae 0x48bc07
cmp dword [esp + 0x28], 0
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x48c194
cmp eax, 0xc0
jb 0x48c194
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x48c0e9
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x48c190
test al, 0x10
jne 0x48c103
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x48c18a
test al, 8
jne 0x48c126
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x48c18a
test al, 4
jne 0x48c155
and eax, 3
mov ebx, 5
shl eax, 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]
jmp 0x48c18a
and eax, 1
mov ebx, 6
shl eax, 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
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x48c1cb
cmp eax, 3
je 0x48c1cb
xor eax, eax
jmp 0x48c1d0
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x48ba62
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48c0a0
jmp 0x48ba62
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x48c439
cmp dword [esp + 0x28], 0
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
mov eax, edx
mov ecx, edx
mov dword [esp + 0x1c], edx
mov ebx, edx
je 0x48c329
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], edx
cmp edx, 0xc0
jb 0x48c329
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48c275
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
jmp 0x48c319
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48c293
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
jmp 0x48c313
and eax, 0x3f
test dl, 8
jne 0x48c2b6
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48c313
test dl, 4
jne 0x48c2e2
and edx, 3
mov dword [esp + 0x18], 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 0x48c313
and edx, 1
mov dword [esp + 0x18], 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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esp + 0x10], edx
mov eax, edx
mov ecx, edx
mov dword [esp + 0x1c], edx
mov ebx, edx
cmp dword [esp + 0x10], 0x20
ja 0x48c348
cmp eax, 0x20
je case.0x48c426.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x48c426.8203
jmp dword [eax*4 + 0x492800]
cmp edx, 0x2000
ja 0x48c3fe
cmp ecx, 0x2000
je case.0x48c426.8193
cmp edx, 0x1680
ja 0x48c3f6
je case.0x48c426.8193
mov eax, edx
sub eax, 0x85
je case.0x48c426.8193
sub eax, 0x1b
je case.0x48c426.8193
mov eax, edx
test eax, eax
jns 0x48c391
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
and edx, 0x8000007f
jns 0x48c3ab
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp dword [eax*4 + 0x5b3ae8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x48ba62
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48c210
jmp 0x48ba62
cmp edx, 0x180e
jmp 0x48c382
cmp ebx, 0x3000
ja case.0x48c426.8203
cmp dword [esp + 0x1c], 0x3000
je case.0x48c426.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x48c426.8203
movzx eax, byte [eax + 0x49281c]
jmp dword [eax*4 + 0x492814]
cmp dword [esi + 0x68], 0
jne 0x48ba62
jmp 0x48c3d3
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48ba62
cmp edi, dword [ebp + 0x84]
jmp 0x48bdb2
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop dword [eax + eax]
mov edx, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edx, dword [ebp + 0x78]
jae 0x48bd9e
cmp dword [esp + 0x28], 0
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
mov ebx, eax
je 0x48c57a
cmp eax, 0xc0
jb 0x48c57a
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x48c4c1
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
jmp 0x48c574
test al, 0x10
jne 0x48c4de
and eax, 0xf
mov dword [esp + 0x18], 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x48c56e
test al, 8
jne 0x48c504
and eax, 7
mov dword [esp + 0x18], 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x48c56e
test al, 4
jne 0x48c536
and eax, 3
mov dword [esp + 0x18], 5
shl eax, 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]
jmp 0x48c56e
and eax, 1
mov dword [esp + 0x18], 6
shl eax, 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
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
mov ebx, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x48c5b6
cmp eax, 3
je 0x48c5b6
cmp ebx, 0x5f
je 0x48c5b6
xor eax, eax
jmp 0x48c5bb
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x48ba62
mov eax, dword [esp + 0x18]
add eax, edx
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48c470
jmp 0x48ba62
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
nop dword [eax]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x48c743
cmp dword [esp + 0x28], 0
movzx edx, byte [edi]
mov ecx, edx
je 0x48c6e8
cmp edx, 0xc0
jb 0x48c6e8
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48c64d
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48c6e4
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48c668
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x48c6de
and eax, 0x3f
test dl, 8
jne 0x48c688
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48c6de
test dl, 4
jne 0x48c6b1
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 0x48c6de
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov eax, dword [esi + 0x64]
cmp ecx, dword [eax*4 + 0x5b3b98]
lea eax, [eax*4 + 0x5b3b98]
jb 0x48c70d
mov ecx, dword [eax]
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x48c737
mov ecx, dword [eax]
cmp edx, ecx
jae 0x48c700
cmp dword [esi + 0x68], 0
je 0x48ba62
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48c600
jmp 0x48ba62
cmp dword [esi + 0x68], 0
jne 0x48ba62
jmp 0x48c717
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48ba62
cmp edi, dword [ebp + 0x84]
jmp 0x48bc1b
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48ba62
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x48c90d
cmp dword [esp + 0x28], 0
movzx edx, byte [edi]
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
je 0x48c8af
mov dword [esp + 0x10], edx
cmp edx, 0xc0
jb 0x48c8af
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48c7db
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
or edx, eax
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
jmp 0x48c8af
movzx eax, byte [edi + 2]
and eax, 0x3f
test dl, 0x10
jne 0x48c80b
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
jmp 0x48c8af
test dl, 8
jne 0x48c840
and edx, 7
mov dword [esp + 0x18], 4
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
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
jmp 0x48c8af
test dl, 4
jne 0x48c86c
and edx, 3
mov dword [esp + 0x18], 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 0x48c89d
and edx, 1
mov dword [esp + 0x18], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov dword [esp + 0x10], eax
mov ebx, eax
mov ecx, eax
cmp eax, 0x24
je 0x48c8dc
cmp ecx, 0x40
je 0x48c8dc
cmp ebx, 0x60
je 0x48c8dc
cmp dword [esp + 0x10], 0xa0
jb 0x48c8d0
cmp edx, 0xd7ff
jbe 0x48c8dc
cmp edx, 0xe000
jae 0x48c8dc
xor eax, eax
jmp 0x48c8e1
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x48ba62
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48c772
jmp 0x48ba62
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48ba62
cmp edi, dword [ebp + 0x84]
jbe 0x48ba62
mov dword [ebp + 0x64], 1
jmp 0x48bc24
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x48cca9
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48cc5a
nop word [eax + eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48cc38
cmp dword [esp + 0x28], 0
lea edi, [ecx + 1]
movzx eax, byte [ecx]
mov edx, edi
mov dword [esi + 8], edi
mov ecx, eax
mov ebx, eax
mov dword [esp + 0x18], edi
je 0x48ca6a
mov dword [esp + 0x18], edi
cmp eax, 0xc0
jb 0x48ca6a
test al, 0x20
jne 0x48c9ab
movzx eax, byte [edi]
lea edx, [edi + 1]
and ecx, 0x1f
jmp 0x48ca59
test al, 0x10
jne 0x48c9c9
movzx eax, byte [edi]
lea edx, [edi + 2]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
jmp 0x48ca59
test al, 8
jne 0x48c9f0
movzx eax, byte [edi]
lea edx, [edi + 3]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
jmp 0x48ca59
test al, 4
movzx eax, byte [edi]
jne 0x48ca23
and ecx, 3
lea edx, [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x48ca59
and ecx, 1
lea edx, [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
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
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x18], edx
shr ecx, 7
and ebx, 0x7f
movzx eax, byte [ecx + 0x5b5358]
mov ecx, edx
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cda]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x78]
cmp dword [esp + 0x18], eax
jae 0x48cbfb
mov edi, edx
mov dword [esp + 0x18], eax
nop word [eax + eax]
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x48cb89
cmp edx, 0xc0
jb 0x48cb89
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48caf1
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48cb85
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48cb09
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x48cb7f
and eax, 0x3f
test dl, 8
jne 0x48cb29
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48cb7f
test dl, 4
jne 0x48cb52
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 0x48cb7f
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x10]
and ecx, 0x7f
shr edx, 7
mov dword [esp + 0x1c], edi
movzx eax, byte [edx + 0x5b5358]
mov edx, edi
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx ecx, byte [eax*8 + 0x5b3cda]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x5b3b60], eax
mov ebp, dword [esp + 0xb0]
je 0x48cbf3
lea edx, [ebx + edi]
mov dword [esp + 0x10], ecx
mov dword [esi + 8], edx
mov edi, edx
mov eax, dword [ebp + 0x78]
mov ecx, edx
mov dword [esp + 0x18], eax
cmp edx, eax
jb 0x48cab0
jmp 0x48cbfb
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x48cc21
cmp edx, eax
jb 0x48cc21
cmp ecx, dword [ebp + 0x84]
jbe 0x48cc21
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x48fc8c
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48c960
jmp 0x48cc5a
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48cc5a
cmp ecx, dword [ebp + 0x84]
jbe 0x48cc5a
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x485477
cmp dword [esp + 0x24], 0
jne 0x484463
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48cc9a
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x48f0f3
add eax, 0xfffffffa
test ebx, ebx
je 0x48dabf
cmp eax, 0xf
ja case.0x4902b8.15
jmp dword [eax*4 + 0x49287c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x48daaf
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x48cda3
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x48cd18
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004949e0
mov ecx, dword [ebp + 0x18]
add esp, 0x14
test eax, eax
je 0x48cd0c
mov eax, 1
jmp 0x48cd0e
xor eax, eax
test eax, eax
jne 0x48daaf
jmp 0x48cd3f
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x48cd3d
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x48cd3d
cmp edi, 1
je 0x48daaf
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x48daaf
xor ecx, ecx
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x48cd75
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb 0x48cd75
test ecx, ecx
jne 0x48cd75
cmp dword [ebp + 0x1c], 2
jne 0x48cd75
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x48cd75
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x48fc8c
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48cd91
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48cd91
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x48cd80
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x48ccd6
jmp 0x48daaf
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48daaf
cmp ecx, dword [ebp + 0x84]
jbe 0x48daaf
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x48daaf
jmp 0x485477
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x48ce28
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x48daaf
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x48ce2e
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x48ce1a
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48ce1a
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x48ce02
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x48cdf0
jmp 0x48daaf
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x48daaf
cmp eax, dword [ebp + 0x84]
jbe 0x48daaf
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle 0x48daaf
jmp 0x491cfa
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 0x48cea9
mov dword [esi + 8], edx
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48daaf
cmp edx, dword [ebp + 0x84]
jbe 0x48daaf
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x48daaf
jmp 0x491cfa
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x48daaf
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48daaf
nop word [eax + eax]
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
mov ecx, edx
mov eax, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x48cfce
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48cf1e
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
jmp 0x48cfc2
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48cf3c
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
jmp 0x48cfbc
and eax, 0x3f
test dl, 8
jne 0x48cf5f
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48cfbc
test dl, 4
jne 0x48cf8b
and edx, 3
mov dword [esp + 0x18], 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 0x48cfbc
and edx, 1
mov dword [esp + 0x18], 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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov dword [esp + 0x10], edx
mov eax, edx
mov ebx, edx
cmp ecx, 0xd
jne 0x48cfea
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x48daaf
cmp byte [eax], 0xa
jne 0x48d02a
inc eax
jmp 0x48d027
cmp eax, 0xa
je 0x48d021
cmp dword [ebp + 0x68], 0
jne 0x48daaf
cmp ebx, 0xb
je 0x48d021
cmp dword [esp + 0x10], 0xc
je 0x48d021
cmp edx, 0x85
je 0x48d021
cmp edx, 0x2028
je 0x48d021
cmp edx, 0x2029
jne 0x48daaf
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48ced0
jmp 0x48daaf
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48daaf
cmp edi, dword [ebp + 0x84]
jmp 0x48cdb7
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48daaf
nop dword [eax]
nop word [eax + eax]
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
mov ebx, edx
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x48d17a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d0ca
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
jmp 0x48d16e
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48d0e8
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
jmp 0x48d168
and eax, 0x3f
test dl, 8
jne 0x48d10b
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d168
test dl, 4
jne 0x48d137
and edx, 3
mov dword [esp + 0x18], 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 0x48d168
and edx, 1
mov dword [esp + 0x18], 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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esp + 0x10], edx
mov ebx, edx
mov eax, edx
mov ecx, edx
cmp dword [esp + 0x10], 0x2000
ja 0x48d1ea
cmp ebx, 0x2000
je case.0x48d20b.8193
cmp edx, 0xa0
ja 0x48d1da
je case.0x48d20b.8193
cmp edx, 9
je case.0x48d20b.8193
cmp edx, 0x20
je case.0x48d20b.8193
xor ecx, ecx
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp ecx, eax
je 0x48daaf
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48d080
jmp 0x48daaf
cmp edx, 0x1680
je case.0x48d20b.8193
cmp edx, 0x180e
jmp 0x48d1a2
cmp eax, 0x3000
ja case.0x48d20b.8203
cmp ecx, 0x3000
je case.0x48d20b.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x48d20b.8203
movzx eax, byte [edx + 0x4928c4]
jmp dword [eax*4 + 0x4928bc]
mov ecx, 1
jmp 0x48d1a6
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48daaf
nop
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x48d371
movzx edx, byte [edi]
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x48d30c
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d272
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ebx, 2
jmp 0x48d306
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48d28a
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x48d300
and eax, 0x3f
test dl, 8
jne 0x48d2aa
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d300
test dl, 4
jne 0x48d2d3
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 0x48d300
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
cmp eax, 0x85
ja 0x48d32a
cmp ecx, 0x85
je case.0x48d323.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x48d323
jmp dword [edx*4 + 0x492924]
sub edx, 0x2028
je case.0x48d323.10
sub edx, 1
je case.0x48d323.10
xor ecx, ecx
jmp 0x48d340
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp ecx, eax
je 0x48daaf
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48d230
jmp 0x48daaf
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x48daaf
cmp edi, dword [ebp + 0x84]
jbe 0x48daaf
mov dword [ebp + 0x64], ebx
jmp 0x48cdc4
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48daaf
nop dword [eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov ebx, 1
mov eax, ebx
mov ecx, edx
cmp edx, 0xc0
jb 0x48d4a3
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d3f4
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48d49d
test dl, 0x10
jne 0x48d40f
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
mov ebx, 3
or edx, ecx
jmp 0x48d497
test dl, 8
jne 0x48d433
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d497
test dl, 4
jne 0x48d463
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 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 0x48d497
and edx, eax
mov ebx, 6
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, ebx
mov ecx, edx
cmp ecx, 0x100
jae 0x48d4ba
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x48daaf
mov eax, ebx
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48d3b0
jmp 0x48daaf
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x48daaf
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x48d5c9
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d530
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x48d5c5
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48d548
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x48d5bf
and eax, 0x3f
test dl, 8
jne 0x48d568
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d5bf
test dl, 4
jne 0x48d591
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 0x48d5bf
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x48daaf
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x48daaf
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x48d4f0
jmp 0x48daaf
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48daaf
nop
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov ebx, 1
mov eax, ebx
mov ecx, edx
cmp edx, 0xc0
jb 0x48d703
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d654
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48d6fd
test dl, 0x10
jne 0x48d66f
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
mov ebx, 3
or edx, ecx
jmp 0x48d6f7
test dl, 8
jne 0x48d693
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d6f7
test dl, 4
jne 0x48d6c3
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 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 0x48d6f7
and edx, eax
mov ebx, 6
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, ebx
mov ecx, edx
cmp ecx, 0x100
jae 0x48d71a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x48daaf
mov eax, ebx
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48d610
jmp 0x48daaf
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x48daaf
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x48d829
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d790
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x48d825
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48d7a8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x48d81f
and eax, 0x3f
test dl, 8
jne 0x48d7c8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d81f
test dl, 4
jne 0x48d7f1
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 0x48d81f
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x48daaf
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x48daaf
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x48d750
jmp 0x48daaf
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x48daaf
nop
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov ebx, 1
mov eax, ebx
mov ecx, edx
cmp edx, 0xc0
jb 0x48d963
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d8b4
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x48d95d
test dl, 0x10
jne 0x48d8cf
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
mov ebx, 3
or edx, ecx
jmp 0x48d957
test dl, 8
jne 0x48d8f3
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48d957
test dl, 4
jne 0x48d923
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 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 0x48d957
and edx, eax
mov ebx, 6
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, ebx
mov ecx, edx
cmp ecx, 0x100
jae 0x48d97a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x48daaf
mov eax, ebx
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x48d870
jmp 0x48daaf
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x48daaf
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x48d044
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x48da8c
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x48d9f0
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x48da88
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x48da0b
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x48da82
and eax, 0x3f
test dl, 8
jne 0x48da2b
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x48da82
test dl, 4
jne 0x48da54
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 0x48da82
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x48daaf
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x48daaf
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x48d9b0
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x490635
cmp eax, 0xf
ja case.0x4902b8.15
jmp dword [eax*4 + 0x492934]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge case.0x48dda0.10
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x78]
cmp edx, ecx
jae 0x48db9b
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x48db28
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
push edi
push edx
call fcn.004949e0
mov ecx, dword [ebp + 0x78]
add esp, 0x14
test eax, eax
je 0x48db1c
mov eax, 1
jmp 0x48db1e
xor eax, eax
test eax, eax
jne case.0x48dda0.10
jmp 0x48db4f
mov edi, dword [ebp + 0x1c]
mov eax, ecx
sub eax, edi
cmp edx, eax
ja 0x48db4f
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x48db4f
cmp edi, 1
je case.0x48dda0.10
mov al, byte [edx + 1]
cmp al, byte [ebp + 0x35]
je case.0x48dda0.10
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x48db86
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, ecx
jb 0x48db86
cmp dword [ebp + 0x18], 0
jne 0x48db86
cmp dword [ebp + 0x1c], 2
jne 0x48db86
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x48db86
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x48fc8c
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x48dae1
jmp case.0x48dda0.10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48dda0.10
cmp edx, dword [ebp + 0x84]
jbe case.0x48dda0.10
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.0x48dda0.10
jmp 0x485477
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 0x48dc16
mov dword [esi + 8], edx
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48dda0.10
cmp edx, dword [ebp + 0x84]
jbe case.0x48dda0.10
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.0x48dda0.10
jmp 0x491cfa
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp case.0x48dda0.10
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x48dda0.10
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48dc92
mov al, byte [ecx]
cmp al, 0xd
jne 0x48dc58
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae case.0x48dda0.10
cmp byte [eax], 0xa
jne 0x48dc84
inc eax
jmp 0x48dc81
cmp al, 0xa
je 0x48dc7e
cmp dword [ebp + 0x68], 0
jne case.0x48dda0.10
cmp al, 0xb
je 0x48dc7e
cmp al, 0xc
je 0x48dc7e
cmp al, 0x85
jne case.0x48dda0.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x48dc33
jmp case.0x48dda0.10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48dda0.10
cmp ecx, dword [ebp + 0x84]
jmp 0x48dbfb
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x48dda0.10
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48dcf7
mov cl, byte [eax]
cmp cl, 9
je case.0x48dda0.10
cmp cl, 0x20
je case.0x48dda0.10
cmp cl, 0xa0
je case.0x48dda0.10
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x48dcc0
jmp case.0x48dda0.10
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48dda0.10
cmp eax, dword [ebp + 0x84]
jbe case.0x48dda0.10
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle case.0x48dda0.10
jmp 0x491cfa
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x48dda0.10
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x48dcf7
mov cl, byte [eax]
cmp cl, 9
je 0x48dd59
cmp cl, 0x20
je 0x48dd59
cmp cl, 0xa0
jne case.0x48dda0.10
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x48dd38
jmp case.0x48dda0.10
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
jge case.0x48dda0.10
mov edi, ecx
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48dbe7
movzx eax, byte [edx]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x48dda0.11
movzx eax, byte [eax + 0x49297c]
mov ecx, edi
jmp dword [eax*4 + 0x492974]
lea eax, [edx + 1]
inc ecx
mov dword [esi + 8], eax
mov edi, ecx
cmp ecx, dword [esi + 0x8c]
jl 0x48dd80
jmp case.0x48dda0.10
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x48dda0.10
nop
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x48dc92
movzx eax, byte [ecx]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x48dda0.10
movzx eax, byte [eax + 0x492a00]
jmp dword [eax*4 + 0x4929f8]
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x48ddd0
jmp case.0x48dda0.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x48dda0.10
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48dbe7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x48dda0.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48de20
jmp case.0x48dda0.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x48dda0.10
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48dbe7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x48dda0.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48de62
jmp case.0x48dda0.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x48dda0.10
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48dbe7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x48dda0.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48dea4
jmp case.0x48dda0.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x48dda0.10
nop word [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48dbe7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x48dda0.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48def0
jmp case.0x48dda0.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x48dda0.10
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48dbe7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x48dda0.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48df32
jmp case.0x48dda0.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x48dda0.10
nop dword [eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x48df95
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x48dda0.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x48df70
jmp case.0x48dda0.10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48dda0.10
cmp edx, dword [ebp + 0x84]
jbe case.0x48dda0.10
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x491cfa
cmp dword [esp + 0x24], 0
jne 0x484463
jmp 0x48f0b4
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fdf
mov edi, 0xfffffffb
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0x130]
dec eax
cmp eax, 0x42
ja case.default.0x48dff4
jmp dword [eax*4 + 0x492a7c]
cmp edi, 0xfffffc1b
je 0x48e0de
cmp edi, 0xfffffc20
jne 0x48e049
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x48e50c
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48e042
cmp byte [ecx], 0x77
jne case.default.0x48e50c
xor edi, edi
jmp 0x48e051
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x48e0de
cmp dword [esi + 0x9c], 0x88
jb 0x48e09d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x48e0c6
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
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 eax, dword [esi]
mov esi, eax
test eax, eax
jne 0x48dfe4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8c
ret
cmp edi, 0xfffffc20
jne 0x48e1fa
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x48e254
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48e170
cmp byte [ecx], 0x77
jne 0x48e254
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne case.0x48ef3a.14
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x48e265
cmp eax, 0x81
je 0x48e265
cmp dword [ebp + 0x6c], 0
jne 0x48e26f
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 0x48e26f
movzx eax, byte [edx]
movzx eax, byte [eax + 0x5b39d0]
add eax, edx
mov dword [esi + 0xc], eax
jmp 0x4843f0
test edi, edi
je 0x48e170
cmp edi, 0xfffffc1b
jne 0x48e254
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x81
je 0x48e249
cmp byte [eax], 0x77
mov ebx, eax
jne 0x48e238
mov edx, eax
nop dword [eax + eax]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov ebx, eax
mov edx, eax
cmp byte [eax], 0x77
je 0x48e220
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, ebx
sub eax, ecx
xor ecx, ecx
cmp dword [ebp + 0xb4], eax
cmove edi, ecx
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x48e124
jmp 0x48dfe0
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 0x48e2ad
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
cmp edi, 1
jne 0x48e344
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x48e2e0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x92
jne 0x48e2f7
inc edx
mov dword [esi + 0xc], edx
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
jne 0x48e329
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 0x48e312
mov eax, dword [esp + 0x2c]
mov ecx, dword [esi + 0xc]
movzx eax, byte [eax + 0x5b39d0]
sub ecx, eax
add ecx, 3
mov dword [esi + 0xc], ecx
jmp 0x48490c
test edi, edi
je 0x48490c
cmp edi, 0xfffffc20
je 0x48490c
jmp case.default.0x48e50c
mov ecx, dword [esi + 0x78]
mov eax, dword [esi + 0xc]
add eax, ecx
mov dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
jne 0x48e37c
cmp byte [eax - 3], 0x77
jne 0x484463
cmp dword [esi + 0x9c], 0x8c
jne 0x4843f0
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e3bf
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x48f0f3
cmp edi, 1
je 0x48e480
cmp edi, 0xfffffc19
je 0x48e480
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x48e426
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x48e50c
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48e42e
cmp byte [ecx], 0x77
jmp 0x48e428
test edi, edi
jne case.default.0x48e50c
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0xc], eax
cmp byte [eax], 0x77
jne 0x48e486
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e471
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x48e5c5
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x78
je case.0x48ef3a.14
cmp dword [esi + 0x58], 0
jne 0x48e562
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], eax
cmp byte [edx], 0x77
je 0x48e4a0
add eax, 3
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x484463
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc1c
jg 0x48e4ef
je case.0x48e50c.995
cmp edi, 0xfffffc19
jmp 0x48e5fc
test edi, edi
jg 0x48e5f7
je 0x48e578
lea eax, [edi + 0x3e3]
cmp eax, 3
ja case.default.0x48e50c
jmp dword [eax*4 + 0x492b88]
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x48e50c.995
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48e578
cmp byte [ecx], 0x77
je 0x48e578
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 0x48e541
cmp dword [esi + 0x58], 0
je 0x48e807
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f32
mov edi, 1
jmp 0x48dfe0
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
jne 0x48e558
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e5bb
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x4843e0
mov eax, edi
sub eax, 1
je case.0x48ef3a.14
jmp case.default.0x48e50c
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call fcn.004702b0
mov eax, dword [esi + 0x4c]
lea ecx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ecx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x491e89
cmp edi, 0xfffffc19
je 0x491e89
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x48e670
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je case.0x48ef3a.14
push ecx
call dword [0x14c1c08]
add esp, 4
jmp case.0x48ef3a.14
test edi, edi
je 0x48e694
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je case.default.0x48e50c
push ecx
call dword [0x14c1c08]
add esp, 4
jmp case.default.0x48e50c
mov dword [ebp + 0xa4], ecx
mov edx, dword [esi + 0x20]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0x20], eax
cmp byte [eax], 0x77
jne 0x48e739
cmp dword [esi + 0x58], 0
je 0x48e6cc
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x48e6f5
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 + 0x5b39d0]
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 0x4843e0
mov eax, dword [esi + 0x3c]
mov dword [ebp + 0xa4], eax
jmp 0x48e650
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 0x34]
mov al, byte [ecx]
cmp al, 0x81
jne 0x48e795
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e77d
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], edi
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 0x48f0fc
cmp al, 0x88
jb 0x491eb8
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e7c6
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
test edi, edi
jne case.default.0x48e50c
mov edx, dword [esi + 0x2c]
nop dword [eax]
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 0x48e7f0
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x484463
test edi, edi
je case.0x486386.10
jmp case.default.0x48e50c
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f42
mov edi, 0xfffffc1b
jmp 0x48dfe4
cmp edi, 0xfffffc1b
jne 0x48e860
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x48e862
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x48f6e6
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e89d
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
push dword [esp + 0x30]
mov edi, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.00492f30
add esp, 0x14
test eax, eax
jns 0x48e928
mov ecx, edi
cmp eax, 0xfffffffe
jne 0x48e906
mov edi, dword [ebp + 0x78]
mov ecx, edi
mov dword [esi + 8], edi
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edi, dword [ebp + 0x78]
jb case.0x48ef3a.14
cmp ecx, dword [ebp + 0x84]
jmp 0x487e5e
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e95c
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 8]
sub eax, dword [esi + 0x88]
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.default.0x49033a
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48e9b4
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x48ea04
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48ef3a.14
cmp eax, dword [ebp + 0x84]
jbe case.0x48ef3a.14
jmp 0x48542f
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 case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48ea55
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.default.0x49033a
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48eaa4
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x48eaf4
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48ef3a.14
cmp eax, dword [ebp + 0x84]
jbe case.0x48ef3a.14
jmp 0x48542f
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x48eb0f
cmp dword [esi + 0x94], ecx
jne case.0x48ef3a.14
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48eb42
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x48f0f3
dec dword [esi + 8]
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48eb91
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487e4a
movzx ecx, byte [edi]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
jne case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48ec0a
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x48f0f3
dec dword [esi + 8]
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48ec59
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x48eca9
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48ef3a.14
cmp eax, dword [ebp + 0x84]
jbe case.0x48ef3a.14
jmp 0x48542f
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x48ef3a.14
cmp dword [esi + 0x94], ecx
je case.0x48ef3a.14
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48ecf7
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48ed46
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487e4a
movzx ecx, byte [edi]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48edbf
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48ee0e
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x48ee5e
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp ecx, dword [ebp + 0x84]
jmp 0x487e5e
cmp dword [esi + 0x7c], 0xc
jne 0x48eeb9
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x48ee8c
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004949e0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x48eeb9
jmp case.0x48ef3a.14
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x48eeb9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x48eeb9
cmp edi, 1
je case.0x48ef3a.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x48ef3a.14
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.0x4902b8.15
jmp dword [eax*4 + 0x492b98]
mov edi, dword [ebp + 0x88]
test edi, edi
je case.0x48eed4.13
cmp edx, dword [ebp + 0x78]
jb case.0x48eed4.13
cmp dword [ebp + 0x18], 0
jne case.0x48eed4.13
cmp dword [ebp + 0x1c], 2
jne case.0x48eed4.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x48eed4.13
mov dword [ebp + 0x64], 1
cmp edi, 1
jle case.0x48eed4.13
jmp 0x491cfa
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x48ef3a.14
movzx eax, byte [ecx + 0x492be8]
jmp dword [eax*4 + 0x492bd8]
cmp edx, dword [ebp + 0x78]
jae case.0x48eed4.13
cmp byte [edx], 0xa
jne case.0x48eed4.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x48eed4.13
cmp dword [ebp + 0x68], 0
je case.0x48eed4.13
jmp case.0x48ef3a.14
cmp ecx, 9
je case.0x48ef3a.14
cmp ecx, 0x20
je case.0x48ef3a.14
cmp ecx, 0xa0
jne case.0x48eed4.13
jmp case.0x48ef3a.14
cmp ecx, 9
je case.0x48eed4.13
cmp ecx, 0x20
je case.0x48eed4.13
cmp ecx, 0xa0
je case.0x48eed4.13
jmp case.0x48ef3a.14
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x48eed4.13
movzx eax, byte [ecx + 0x492c6c]
jmp dword [eax*4 + 0x492c64]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x48ef3a.14
movzx eax, byte [ecx + 0x492cf0]
jmp dword [eax*4 + 0x492ce8]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x48eed4.13
jmp case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x48eed4.13
jmp case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x48eed4.13
jmp case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x48eed4.13
jmp case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x48eed4.13
jmp case.0x48ef3a.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48f06d
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 8]
dec eax
mov dword [esi + 8], eax
cmp dword [esi + 0x7c], 0x11
jne 0x48f0b4
cmp eax, dword [esi + 0x30]
jbe 0x48f0b4
cmp byte [eax], 0xa
jne 0x48f0b4
dec eax
cmp byte [eax], 0xd
jne 0x48f0b4
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48f0e9
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x4843e0
cmp edi, 0xfffffc1a
jne 0x48f181
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 0x48f179
mov edx, dword [esi + 0xc]
nop word [eax + eax]
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 0x48f160
jmp 0x48f1e1
mov dword [esi + 8], eax
jmp 0x48f206
cmp edi, 0xfffffc20
jne 0x48f1bb
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x48e50c
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48f1c3
cmp byte [ecx], 0x77
jmp 0x48f1bd
test edi, edi
jne case.default.0x48e50c
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 0x48f1fa
cmp dword [esi + 0x5c], 0
jne 0x48e807
cmp dword [esi + 0x54], 0
jne 0x48e807
jmp case.0x48ef3a.14
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x48f220
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x48f249
push 0x134
call dword [0x14c1c0c]
mov edx, eax
add esp, 4
test edx, edx
je 0x491c98
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 0x48e708
mov eax, dword [esi]
mov esi, eax
test edi, edi
je 0x48f377
jmp 0x48e11c
mov eax, dword [esi]
mov esi, eax
test edi, edi
jne 0x48e11c
test eax, eax
je 0x491f52
mov edi, 0xfffffc1c
jmp 0x48dfe4
test edi, edi
je 0x48f321
jmp case.default.0x48e50c
cmp edi, 1
je 0x48f2b2
cmp edi, 0xfffffc19
jne 0x48f2d0
cmp dword [ebp + 0xac], 0
jne 0x48f2d0
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp case.default.0x48e50c
cmp edi, 0xfffffc1f
jne case.default.0x48e50c
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x48f314
test dl, dl
je 0x48f30d
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x48f314
add eax, 2
add ecx, 2
test dl, dl
jne 0x48f2e5
xor eax, eax
jmp 0x48f319
sbb eax, eax
or eax, 1
test eax, eax
jne case.default.0x48e50c
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f62
mov edi, 0xfffffc1e
jmp 0x48dfe4
cmp edi, 1
je 0x48f352
cmp edi, 0xfffffc19
jne 0x48f36b
cmp dword [ebp + 0xac], 0
jne 0x48f36b
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov eax, dword [esi]
mov esi, eax
test edi, edi
jne 0x48e11c
test eax, eax
je 0x491f72
mov edi, 0xfffffc1d
jmp 0x48dfe4
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f82
mov edi, 0xfffffc1f
jmp 0x48dfe4
cmp edi, 1
je 0x48f3c5
cmp edi, 0xfffffc19
jne case.0x48dff4.54
cmp dword [ebp + 0xac], 0
jne case.0x48dff4.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491f92
mov edi, 0xfffffc20
jmp 0x48dfe4
cmp edi, 0xfffffc1a
jne 0x48f467
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 0x48f45f
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 0x48f443
jmp 0x48f4d3
mov dword [esi + 8], eax
jmp 0x485002
cmp edi, 0xfffffc20
jne 0x48f4a1
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x48e50c
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48f4a9
cmp byte [ecx], 0x77
jmp 0x48f4a3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0xc], eax
cmp byte [eax], 0x77
je 0x485002
cmp dword [esi + 0x5c], 0
jne 0x48f513
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 0x484abf
cmp dword [esi + 0x5c], 0
jne 0x484abf
jmp case.0x48ef3a.14
cmp edi, 1
jne 0x48f5dd
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x48f550
cmp al, 0x77
jne case.0x48ef3a.14
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], eax
cmp byte [edx], 0x77
je 0x48f550
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 8], ecx
mov edi, dword [esi + 0xc]
mov al, byte [edi]
cmp al, 0x78
je 0x486bc2
cmp ecx, dword [esi + 0x38]
je 0x486bc2
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x48f68d
test ecx, ecx
jne 0x48f5c2
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
cmp edi, 0xfffffc20
jne 0x48f617
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x48e50c
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x48f61f
cmp byte [ecx], 0x77
jmp 0x48f619
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x48f53b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48f672
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
test ecx, ecx
jne 0x48f6b3
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
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 0x48f0fc
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x4843f0
test edi, edi
jne case.default.0x48e50c
add dword [esi + 0xc], 3
jmp 0x4843f0
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487e4a
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
test ebx, ebx
je 0x48f807
cmp edx, 0xc0
jb 0x48f807
test dl, 0x20
jne 0x48f74f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x48f804
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x48f77a
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x48f804
test dl, 8
jne 0x48f7a1
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 0x48f804
test dl, 4
jne 0x48f7d0
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 0x48f804
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
push ebx
push dword [esi + 0x28]
push edx
call fcn.004942c0
add esp, 0xc
test eax, eax
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48f84b
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe case.0x48ef3a.14
test ebx, ebx
je 0x48f894
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x48f894
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x48f888
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48f8bd
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x48f907
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp ecx, dword [ebp + 0x84]
jmp 0x487e5e
movzx ebx, byte [ecx]
inc ecx
mov dword [esi + 8], ecx
mov edi, ebx
mov eax, ebx
cmp ebx, 0xc0
jb 0x48fa03
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x48f93d
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 1]
jmp 0x48f9fc
test bl, 0x10
jne 0x48f95e
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 2]
jmp 0x48f9fc
test bl, 8
jne 0x48f98b
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x48f9fc
test bl, 4
jne 0x48f9c1
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x48f9fc
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
mov edi, ebx
mov eax, ebx
cmp eax, 0xff
jbe 0x48fa2a
cmp dword [esi + 0x9c], 0x6e
jne 0x48fa41
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fc2
mov ebx, dword [esp + 0x28]
xor edi, edi
jmp 0x48dfe4
mov edx, dword [esi + 0x28]
and edi, 7
shr ebx, 3
mov eax, 1
mov ecx, edi
shl eax, cl
test byte [ebx + edx], al
jmp 0x48fa11
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48fa70
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe case.default.0x49033a
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x48fab1
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x48faa5
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48fada
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
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 0x48fb95
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x48fb45
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x48fb4a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x48fb30
cmp edi, 0xfffffffc
je 0x48fb87
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x48fb92
cmp edi, 0xfffffffd
je 0x48fb87
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x48fb92
cmp edi, 0xfffffffe
je 0x48fb87
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x48fb92
cmp edi, 0xffffffff
je 0x48fb87
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x48fb92
mov eax, dword [esi + 0x88]
jmp 0x48fc16
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x48fc59
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x48fc59
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x48fbd5
nop word [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x48fbda
add ecx, 4
add edx, 4
sub edi, 4
jae 0x48fbc0
cmp edi, 0xfffffffc
je 0x48fc13
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x48fc59
cmp edi, 0xfffffffd
je 0x48fc13
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x48fc59
cmp edi, 0xfffffffe
je 0x48fc13
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x48fc59
cmp edi, 0xffffffff
je 0x48fc13
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x48fc59
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 0x48fc4a
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x48f0f3
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x49033a
cmp ebx, dword [ebp + 0x78]
jb case.default.0x49033a
cmp ebx, dword [ebp + 0x84]
jbe case.default.0x49033a
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.default.0x49033a
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fb2
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x48dfe4
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48fccd
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x48fcc1
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48fd02
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487e4a
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
mov eax, edx
cmp edx, 0xc0
jb 0x48fe3a
test dl, 0x20
jne 0x48fd70
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x48fe3a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x48fda0
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x48fe3a
test dl, 8
jne 0x48fdcb
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]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x48fe3a
test dl, 4
jne 0x48fdff
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]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x48fe3a
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 dword [esi + 8], eax
mov edx, ecx
mov eax, ecx
cmp dword [esi + 0x80], edx
je case.0x48ef3a.14
cmp dword [esi + 0x94], eax
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48fe81
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48febc
nop dword [eax + eax]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x48feb0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x48fef1
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x48ff41
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48ef3a.14
cmp eax, dword [ebp + 0x84]
jbe case.0x48ef3a.14
jmp 0x48542f
movzx ebx, byte [eax]
inc eax
mov dword [esp + 0x14], ebx
mov dword [esi + 8], eax
cmp ebx, 0xc0
jb 0x49004d
mov cl, byte [eax]
test bl, 0x20
jne 0x48ff72
inc eax
and ebx, 0x1f
mov dword [esi + 8], eax
movzx eax, cl
jmp 0x490045
mov dl, byte [eax + 1]
test bl, 0x10
jne 0x48ff96
add eax, 2
movzx ecx, cl
and ebx, 0xf
mov dword [esi + 8], eax
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, dl
jmp 0x490045
test bl, 8
jne 0x48ffd1
mov bl, byte [eax + 2]
add eax, 3
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
movzx ecx, cl
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx ebx, bl
shl ecx, 6
and ebx, 0x3f
movzx eax, dl
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
jmp 0x49004d
mov ch, byte [eax + 3]
movzx edi, cl
and edi, 0x3f
test bl, 4
mov bl, byte [eax + 2]
movzx ebx, bl
jne 0x49000f
add eax, 4
and ebx, 0x3f
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
and eax, 3
shl eax, 6
or edi, eax
movzx eax, dl
shl edi, 6
and eax, 0x3f
or edi, eax
movzx eax, ch
shl edi, 6
or ebx, edi
jmp 0x490045
mov dh, byte [eax + 4]
and ebx, 0x3f
add eax, 5
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
and eax, 1
shl eax, 6
or edi, eax
movzx eax, dl
and eax, 0x3f
shl edi, 6
or edi, eax
movzx eax, ch
shl edi, 6
and eax, 0x3f
or ebx, edi
shl ebx, 6
or ebx, eax
movzx eax, dh
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [esi + 0x80], ebx
je case.default.0x49033a
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x490088
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4900be
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4900b2
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4900f3
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x49013f
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp ecx, dword [ebp + 0x84]
jmp 0x487e5e
cmp dword [esi + 0x7c], 0xc
jne 0x490192
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x490169
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004949e0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x490192
jmp case.0x48ef3a.14
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x490192
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x490192
cmp edi, 1
je case.0x48ef3a.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x48ef3a.14
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
mov ecx, edx
mov dword [esp + 0x14], edi
mov ebx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edx
cmp edx, 0xc0
jb 0x4902a9
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x4901e3
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
inc edi
jmp 0x49028e
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x490208
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add edi, 2
jmp 0x49028e
test dl, 8
jne 0x49022b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add edi, 3
jmp 0x49028e
test dl, 4
jne 0x49025a
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [edi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add edi, 4
jmp 0x49028e
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [edi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [edi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add edi, 5
mov ecx, edx
mov dword [esi + 8], edi
mov dword [esp + 0x14], edi
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x4902b8.15
jmp dword [eax*4 + 0x492d6c]
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x4902b8.13
mov eax, dword [esp + 0x14]
cmp eax, dword [ebp + 0x78]
jb case.0x4902b8.13
cmp dword [ebp + 0x18], 0
jne case.0x4902b8.13
cmp dword [ebp + 0x1c], 2
jne case.0x4902b8.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x4902b8.13
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle case.0x4902b8.13
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fb2
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x48dfe4
cmp edx, 0x85
ja 0x490353
je case.0x49033a.11
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x49033a
jmp dword [edx*4 + 0x492dac]
cmp edi, dword [ebp + 0x78]
jae case.0x4902b8.13
cmp byte [edi], 0xa
jne case.0x4902b8.13
lea eax, [edi + 1]
mov dword [esi + 8], eax
jmp case.0x4902b8.13
sub edx, 0x2028
je case.0x49033a.11
sub edx, 1
jne case.default.0x49033a
cmp dword [ebp + 0x68], 0
je case.0x4902b8.13
jmp case.default.0x49033a
cmp edx, 0x2000
ja 0x4903f7
je case.default.0x49033a
cmp edx, 0xa0
ja 0x4903e3
je case.default.0x49033a
cmp edx, 9
je case.default.0x49033a
cmp edx, 0x20
je case.default.0x49033a
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4903d4
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x48f0f3
cmp edx, 0x1680
je case.default.0x49033a
cmp edx, 0x180e
jmp 0x49039f
cmp edx, 0x3000
ja case.0x4902b8.13
je case.default.0x49033a
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x4902b8.13
movzx eax, byte [edx + 0x492dc4]
jmp dword [eax*4 + 0x492dbc]
cmp edx, 0x2000
ja 0x49046e
je case.0x4902b8.13
cmp edx, 0xa0
ja 0x490451
je case.0x4902b8.13
cmp edx, 9
je case.0x4902b8.13
cmp edx, 0x20
je case.0x4902b8.13
jmp case.default.0x49033a
cmp edx, 0x1680
je case.0x4902b8.13
cmp edx, 0x180e
je case.0x4902b8.13
jmp case.default.0x49033a
cmp edx, 0x3000
ja case.default.0x49033a
je case.0x4902b8.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.default.0x49033a
movzx eax, byte [edx + 0x492e2c]
jmp dword [eax*4 + 0x492e24]
cmp edx, 0x85
ja 0x4904be
je case.default.0x49033a
add edx, 0xfffffff6
cmp edx, 3
ja case.0x4902b8.13
jmp dword [edx*4 + 0x492e8c]
sub edx, 0x2028
je case.default.0x49033a
sub edx, 1
jne case.0x4902b8.13
jmp case.default.0x49033a
cmp edx, 0x85
ja 0x4904f9
je case.0x4902b8.13
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x49033a
jmp dword [edx*4 + 0x492e9c]
sub edx, 0x2028
je case.0x4902b8.13
sub edx, 1
je case.0x4902b8.13
jmp case.default.0x49033a
cmp ecx, 0x100
jae case.0x4902b8.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x4902b8.13
jmp case.default.0x49033a
cmp ebx, 0x100
jae case.default.0x49033a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x4902b8.13
jmp case.default.0x49033a
cmp dword [esp + 0x18], 0x100
jae case.0x4902b8.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x4902b8.13
jmp case.default.0x49033a
cmp dword [esp + 0x10], 0x100
jae case.default.0x49033a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x4902b8.13
jmp case.default.0x49033a
cmp dword [esp + 0x1c], 0x100
jae case.0x4902b8.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x4902b8.13
jmp case.default.0x49033a
cmp dword [esp + 0x20], 0x100
jae case.default.0x49033a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x4902b8.13
jmp case.default.0x49033a
mov eax, dword [esi]
mov esi, eax
test eax, eax
je case.default.0x48dff4
mov edi, 0xfffffff2
jmp 0x48dfe0
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x49060c
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x490600
cmp dword [esi + 0x7c], 0x11
jne 0x490635
cmp ecx, dword [esi + 0x30]
jbe 0x490635
cmp byte [ecx], 0xa
jne 0x490635
dec ecx
cmp byte [ecx], 0xd
jne 0x490635
mov dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x49066a
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4906ba
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x48ef3a.14
cmp eax, dword [ebp + 0x84]
jbe case.0x48ef3a.14
jmp 0x48542f
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
test ebx, ebx
je 0x490716
cmp ecx, 0xc0
jb 0x490716
test cl, 0x20
jne 0x4906dd
lea eax, [edx + 1]
jmp 0x490713
test cl, 0x10
jne 0x4906ee
add eax, 3
jmp 0x490713
test cl, 8
jne 0x4906ff
add eax, 4
jmp 0x490713
test cl, 4
jne 0x490710
add eax, 5
jmp 0x490713
add eax, 6
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
jne case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x49074f
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x490799
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x49089c
cmp eax, 0xc0
jb 0x49089c
test al, 0x20
jne 0x4907d5
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x490897
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x10
jne 0x4907fb
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x490897
test al, 8
jne 0x490827
and eax, 7
shl eax, 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 0x490897
test al, 4
jne 0x49085c
and eax, 3
shl eax, 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 0x490897
and eax, 1
shl eax, 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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp eax, 9
je 0x4908e0
cmp eax, 5
je 0x4908e0
cmp eax, 8
je 0x4908e0
xor eax, eax
jmp 0x4908e5
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x49091d
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x490967
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x490a7a
cmp eax, 0xc0
jb 0x490a7a
test al, 0x20
jne 0x4909a3
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x490a75
test al, 0x10
jne 0x4909cb
mov ecx, eax
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x490a75
test al, 8
jne 0x4909ff
mov ecx, eax
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x490a75
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 4
jne 0x490a3a
and eax, 3
shl eax, 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 0x490a75
and eax, 1
shl eax, 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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x490ae3
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x490b2d
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x490c3f
cmp eax, 0xc0
jb 0x490c3f
test al, 0x20
jne 0x490b69
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x490c3a
test al, 0x10
jne 0x490b8f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x490c3a
test al, 8
jne 0x490bc1
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x490c3a
test al, 4
movzx eax, byte [edx]
jne 0x490bfc
and ecx, 3
and eax, 0x3f
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 0x490c3a
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x490ca1
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x490ceb
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x490dfd
cmp eax, 0xc0
jb 0x490dfd
test al, 0x20
jne 0x490d27
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x490df8
test al, 0x10
jne 0x490d4d
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
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 0x490df8
test al, 8
jne 0x490d7f
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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 0x490df8
test al, 4
movzx eax, byte [edx]
jne 0x490dba
and ecx, 3
and eax, 0x3f
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 0x490df8
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x490e5f
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x490ea9
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ecx, eax
mov dword [esi + 8], edx
mov ebx, eax
mov edi, edx
mov dword [esp + 0x14], edx
je 0x490faa
mov dword [esp + 0x14], edx
cmp eax, 0xc0
jb 0x490faa
test al, 0x20
jne 0x490eea
movzx eax, byte [edx]
lea edi, [edx + 1]
and ecx, 0x1f
jmp 0x490f99
test al, 0x10
jne 0x490f0a
mov ecx, eax
lea edi, [edx + 2]
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
jmp 0x490f99
test al, 8
jne 0x490f33
mov ecx, eax
lea edi, [edx + 3]
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
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]
jmp 0x490f99
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 4
jne 0x490f66
and eax, 3
lea edi, [edx + 4]
shl eax, 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]
jmp 0x490f99
and eax, 1
lea edi, [edx + 5]
shl eax, 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
mov dword [esi + 8], edi
mov ebx, ecx
mov dword [esp + 0x14], edi
mov edx, dword [ebp + 0x78]
and ebx, 0x7f
shr ecx, 7
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cda]
mov dword [esp + 0x18], eax
cmp dword [esp + 0x14], edx
jae 0x491126
mov dword [esp + 0x14], edx
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x4910c9
cmp edx, 0xc0
jb 0x4910c9
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x491026
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x4910c5
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x491045
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4910bf
and eax, 0x3f
test dl, 8
jne 0x491069
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4910bf
test dl, 4
jne 0x491092
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 0x4910bf
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]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x18]
and ecx, 0x7f
shr edx, 7
movzx eax, byte [edx + 0x5b5358]
mov edx, dword [esp + 0x14]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx ecx, byte [eax*8 + 0x5b3cda]
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x5b3b60], eax
mov ebp, dword [esp + 0xb0]
je 0x491126
add edi, ebx
mov dword [esp + 0x18], ecx
mov dword [esi + 8], edi
mov edx, dword [ebp + 0x78]
mov dword [esp + 0x14], edx
cmp edi, edx
jb 0x490fe1
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x491165
mov eax, dword [esi + 8]
cmp eax, edx
jb 0x491165
cmp eax, dword [ebp + 0x84]
jbe 0x491165
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle 0x491165
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fb2
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x48dfe4
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491194
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
test ebx, ebx
je 0x4911ce
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4911ce
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4911c2
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491203
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov edi, dword [esi + 8]
dec edi
mov dword [esi + 8], edi
test ebx, ebx
jne 0x491231
movzx edx, byte [edi]
jmp 0x49130d
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x49124c
nop dword [eax]
dec edi
mov dword [esi + 8], edi
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
je 0x491240
mov edi, dword [esi + 8]
movzx edx, byte [edi]
mov ecx, edx
cmp edx, 0xc0
jb 0x49130f
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x49127f
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x49130b
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x491299
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x491305
and eax, 0x3f
test dl, 8
jne 0x4912b8
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x491305
test dl, 4
jne 0x4912dc
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x491305
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
and ecx, 0x7f
movzx eax, byte [edx + 0x5b5358]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx ebx, byte [eax*8 + 0x5b3cda]
mov eax, edi
cmp eax, dword [esi + 0x30]
jbe 0x4843f0
cmp dword [esp + 0x28], 0
lea edx, [edi - 1]
mov edi, edx
jne 0x491354
movzx edx, byte [edi]
jmp 0x491430
mov cl, byte [edi]
mov al, cl
and al, 0xc0
cmp al, 0x80
jne 0x491372
mov al, byte [edx - 1]
lea edi, [edx - 1]
mov cl, al
mov edx, edi
and al, 0xc0
cmp al, 0x80
je 0x491362
movzx edx, cl
mov ecx, edx
cmp edx, 0xc0
jb 0x491432
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4913a2
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x49142e
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x4913bc
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x491428
and eax, 0x3f
test dl, 8
jne 0x4913db
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x491428
test dl, 4
jne 0x4913ff
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x491428
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
and ecx, 0x7f
movzx eax, byte [edx + 0x5b5358]
shl eax, 7
add eax, ecx
mov ecx, ebx
movzx eax, word [eax*2 + 0x5b7558]
movzx edx, byte [eax*8 + 0x5b3cda]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x5b3b60], eax
je 0x48cc65
mov dword [esi + 8], edi
mov ebx, edx
jmp 0x491331
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x4914b3
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x4915c7
cmp eax, 0xc0
jb 0x4915c7
test al, 0x20
jne 0x4914ef
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4915c2
test al, 0x10
jne 0x491515
movzx ecx, byte [edx]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4915c2
test al, 8
jne 0x491547
movzx ecx, byte [edx]
and eax, 7
shl eax, 6
and ecx, 0x3f
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 0x4915c2
mov ecx, eax
test al, 4
movzx eax, byte [edx]
jne 0x491584
and ecx, 3
and eax, 0x3f
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 0x4915c2
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x491609
cmp eax, 3
je 0x491609
xor eax, eax
jmp 0x49160e
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491646
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487e4a
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov ecx, edx
mov dword [esi + 8], edi
mov eax, edx
mov ebx, edx
mov dword [esp + 0x14], edx
je 0x4917aa
mov dword [esp + 0x14], edx
cmp edx, 0xc0
jb 0x4917aa
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x4916cf
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x4917ae
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x4916fb
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x4917ae
test dl, 8
jne 0x49172c
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]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x4917ae
test dl, 4
jne 0x491766
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]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x4917ae
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 ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x4917ae
mov edi, dword [esp + 0x14]
cmp ecx, 0x24
je 0x4917ec
cmp eax, 0x40
je 0x4917ec
cmp ebx, 0x60
je 0x4917ec
cmp edi, 0xa0
jb 0x4917d9
cmp edx, 0xd7ff
jbe 0x4917ec
cmp edx, 0xe000
jae 0x4917ec
xor eax, eax
jmp 0x4917f1
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x49033a
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491829
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x48f0f3
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x487e4a
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov eax, edx
mov dword [esi + 8], edi
mov ecx, edx
mov dword [esp + 0x14], edx
mov ebx, edx
mov dword [esp + 0x18], edx
je 0x491973
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], edx
cmp edx, 0xc0
jb 0x491973
test dl, 0x20
jne 0x4918b1
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x491962
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4918dc
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x491962
test dl, 8
jne 0x4918ff
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 0x491962
test dl, 4
jne 0x49192e
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 0x491962
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 ecx, edx
mov dword [esp + 0x14], edx
mov eax, edx
mov ebx, edx
mov dword [esp + 0x18], edx
cmp dword [esp + 0x14], 0x20
mov edi, edx
ja 0x491998
cmp eax, 0x20
je case.0x491aa6.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x491aa6.8203
jmp dword [eax*4 + 0x492eac]
cmp edx, 0x2000
ja 0x491a7a
cmp ecx, 0x2000
je case.0x491aa6.8193
cmp edi, 0x1680
ja 0x491a6f
cmp edx, 0x1680
je case.0x491aa6.8193
mov eax, edx
sub eax, 0x85
je case.0x491aa6.8193
sub eax, 0x1b
je case.0x491aa6.8193
mov eax, edx
test eax, eax
jns 0x4919eb
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5b5358]
shl eax, 7
and edx, 0x8000007f
jns 0x491a09
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
cmp dword [eax*4 + 0x5b3ae8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x49033a
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491a60
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x491c98
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x48f0f3
cmp edx, 0x180e
jmp 0x4919d8
cmp ebx, 0x3000
ja case.0x491aa6.8203
cmp dword [esp + 0x18], 0x3000
je case.0x491aa6.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x491aa6.8203
movzx eax, byte [eax + 0x492ec8]
jmp dword [eax*4 + 0x492ec0]
cmp dword [esi + 0x68], 0
je 0x491a31
jmp case.default.0x49033a
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x491afb
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edx, dword [ebp + 0x84]
jmp 0x487e5e
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ecx, eax
mov dword [esi + 8], edx
mov edi, eax
mov ebx, eax
je 0x491c16
cmp eax, 0xc0
jb 0x491c16
test al, 0x20
jne 0x491b3c
movzx ecx, byte [edx]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or ecx, eax
lea eax, [edx + 1]
jmp 0x491c0f
test al, 0x10
jne 0x491b62
movzx ecx, byte [edx]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x491c0f
test al, 8
jne 0x491b94
movzx ecx, byte [edx]
and eax, 7
shl eax, 6
and ecx, 0x3f
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 0x491c0f
mov ecx, eax
test al, 4
movzx eax, byte [edx]
jne 0x491bd1
and ecx, 3
and eax, 0x3f
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 0x491c0f
and ecx, 1
and eax, 0x3f
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
mov edi, ecx
mov ebx, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5b5358]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5b7558]
movzx eax, byte [eax*8 + 0x5b3cd9]
mov eax, dword [eax*4 + 0x5b3ae8]
cmp eax, 1
je 0x491c61
cmp eax, 3
je 0x491c61
cmp ebx, 0x5f
je 0x491c61
xor eax, eax
jmp 0x491c66
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x49033a
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491eca
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x491ec0
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fcf
mov edi, 0xfffffffa
jmp 0x48dfe0
test edi, edi
jne case.default.0x48e50c
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x48ef3a.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x491d10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x48ef3a.14
cmp edi, dword [ebp + 0x84]
jbe case.0x48ef3a.14
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.0x48ef3a.14
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fb2
mov edi, 0xfffffff4
jmp 0x48dfe4
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
mov ecx, edx
test ebx, ebx
je 0x491e00
cmp edx, 0xc0
jb 0x491e00
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x491d50
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x491dfb
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x491d75
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x491dfb
test dl, 8
jne 0x491d98
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 0x491dfb
test dl, 4
jne 0x491dc7
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 0x491dfb
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 ecx, edx
mov eax, dword [esi + 0x64]
cmp ecx, dword [eax*4 + 0x5b3b98]
lea eax, [eax*4 + 0x5b3b98]
jb 0x491e2d
mov ecx, dword [eax]
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x491e4a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x491e20
cmp dword [esi + 0x68], 0
jne 0x491e50
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fc2
xor edi, edi
jmp 0x48dfe4
cmp dword [esi + 0x68], 0
jne case.0x48ef3a.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x491ee3
push 0x134
call dword [0x14c1c0c]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x491ed9
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x491fcf
lea edi, [ecx - 6]
jmp 0x48dfe4
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x491ea4
push ecx
call dword [0x14c1c08]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x484463
mov dword [esi + 0xc], ecx
jmp 0x4843f0
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x48f0f3
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x48f0f3
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x8c
ret