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

Disassembly:
sub esp, 0x15c
mov eax, dword [0x887490]
xor eax, esp
mov dword [esp + 0x158], eax
mov eax, dword [esp + 0x168]
mov edx, dword [esp + 0x174]
push ebx
mov ebx, dword [esp + 0x170]
push esi
mov esi, dword [esp + 0x168]
push edi
mov edi, dword [esp + 0x170]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x17c]
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x2c], edx
test edi, edi
jne 0x49c412
lea eax, [esp + 0x184]
cmp dword [esp + 0x184], edi
jne 0x49c3f1
push 1
push edi
push edi
push edi
push edi
push edi
push eax
call fcn.0049c360
add esp, 0x1c
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x158]
xor ecx, esp
call fcn.005091ef
add esp, 0x15c
ret
sub eax, esi
cdq
xor eax, edx
pop edi
sub eax, edx
pop esi
neg eax
pop ebx
mov ecx, dword [esp + 0x158]
xor ecx, esp
call fcn.005091ef
add esp, 0x15c
ret
mov ecx, dword [esp + 0xc]
push ebp
mov ebp, dword [eax + 0x4c]
mov eax, dword [eax]
mov dword [esp + 0x54], 0
mov dword [esp + 0x44], 0
mov dword [esp + 0x1c], ebp
cmp eax, dword [ecx + 4]
jae 0x4a8c85
mov dword [esp + 0x5c], 0xffffffff
mov dword [esp + 0x50], 1
mov dword [esp + 0x58], SysReAllocStringLen
inc eax
mov dword [ecx], eax
mov eax, dword [esp + 0x188]
cmp eax, dword [ecx + 8]
jae 0x4a8c7e
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x98], 2
jne 0x49c48b
lea ecx, [esp + 0x78]
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], edx
mov dword [esp + 0x30], ecx
mov dword [eax + 0x98], 0
mov edx, eax
jmp 0x49c4b0
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
jmp 0x49c4b0
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
nop dword [eax]
mov cl, byte [edi]
movzx edi, cl
mov dword [esp + 0x48], 0
mov dword [esp + 0x40], 0
mov dword [esp + 0x28], edi
cmp edi, 0xa1
ja case.0x49c4dc.98
movzx eax, byte [edi + 0x4a8df4]
jmp dword [eax*4 + 0x4a8ca8]
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
inc dword [eax + 0x28]
mov eax, dword [eax + 0x28]
cmp eax, dword [edx + 0x2c]
ja 0x4a5f7a
mov ebx, dword [esp + 0x14]
movzx eax, byte [ebx]
movzx edi, byte [ebx + 1]
add edi, ebx
movzx ecx, byte [eax + 0x7524e8]
add edi, ecx
mov dword [esp + 0x14], edi
jmp 0x49c4a9
mov eax, dword [esp + 0x10]
mov ebp, esi
mov edi, dword [esp + 0x14]
mov dword [esp + 0x3c], edi
mov ebx, dword [eax + 0xac]
nop word [eax + eax]
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edi + 3]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 1
je 0x49c62b
cmp edi, 0xfffffc20
jne 0x49c597
mov eax, dword [esp + 0x14]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
mov ecx, dword [esp + 0x10]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae 0x4a8908
mov ecx, dword [esp + 0x14]
cmp byte [ecx], 0x77
je 0x49c59f
cmp byte [eax], 0x77
jmp 0x49c599
test edi, edi
jne 0x4a8908
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x10]
add edi, ecx
mov dword [esp + 0x14], edi
mov dword [eax + 0xac], ebx
cmp byte [edi], 0x77
je 0x49c530
mov edx, dword [esp + 0x24]
mov al, byte [edi]
cmp al, 0x82
je 0x49c5e0
cmp al, 0x77
jne case.0x4a86ae.14
nop dword [eax + eax]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x49c5e0
cmp byte [edi], 0x78
mov eax, dword [esp + 0x10]
mov dword [esp + 0x14], edi
mov ebx, dword [eax + 0x8c]
mov esi, dword [eax + 0x80]
mov dword [esp + 0x18], ebx
je 0x49c619
cmp esi, ebp
jne 0x4a5a93
mov ebp, dword [esp + 0x1c]
add edi, 3
mov dword [esp + 0x14], edi
mov edx, eax
jmp 0x49c4b0
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov edx, dword [eax + 0x7c]
mov dword [esp + 0x24], edx
jmp 0x49c5cd
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], 0
jmp 0x49d1d0
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
add edx, 3
shl ecx, 8
mov ebp, edx
or ecx, eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x20], ecx
cmp byte [edx], 0x76
jne 0x49c78e
mov edi, dword [0x8b854c]
test edi, edi
je 0x49c779
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x80], 2
movzx eax, byte [edx + 1]
mov dword [esp + 0x84], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
mov dword [esp + 0x88], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x74]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x78]
sub eax, dword [ecx + 0x74]
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x24]
sub eax, dword [ecx + 0x74]
mov dword [esp + 0x94], eax
mov eax, esi
sub eax, dword [ecx + 0x74]
mov dword [esp + 0x98], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0xa8], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, ebx
cdq
sub eax, edx
mov dword [esp + 0xac], ecx
sar eax, 1
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x90]
and eax, 0xffff
cmove eax, dword [esp + 0x5c]
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa8]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0xb0], eax
lea eax, [esp + 0x80]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.0x4a86ae.14
js 0x4a8908
mov ecx, dword [esp + 0x20]
mov edx, ebp
movzx eax, byte [0x75255e]
add edx, eax
sub ecx, eax
mov dword [esp + 0x14], edx
mov ebp, edx
mov dword [esp + 0x20], ecx
movzx eax, byte [edx]
xor ebx, ebx
mov dword [esp + 0x34], eax
add eax, 0xffffff73
cmp eax, 4
ja case.default.0x49c7a5
jmp dword [eax*4 + 0x4a8e98]
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0xa4]
test edx, edx
je case.0x49c7a5.145
mov eax, dword [esp + 0x14]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x49c7e0
cmp ecx, dword [edx + 4]
jne 0x49ca11
mov ecx, dword [esp + 0x34]
mov ebx, 1
mov ebp, dword [esp + 0x18]
movzx ecx, byte [ecx + 0x7524e8]
jmp 0x49ca19
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xa4], ebx
je case.0x49c7a5.145
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
movzx ecx, byte [edx + 1]
movzx edx, byte [edx + 2]
shl edi, 8
or edi, eax
shl ecx, 8
mov eax, dword [esp + 0x10]
or edx, ecx
imul edx, dword [eax + 0x24]
mov eax, dword [eax + 0x30]
add edx, eax
test edi, edi
je 0x49ca11
mov eax, dword [esp + 0x10]
mov dword [esp + 0x3c], edx
mov eax, dword [eax + 0xa4]
mov ebp, dword [eax + 4]
nop dword [eax]
movzx eax, byte [edx]
xor ebx, ebx
movzx ecx, byte [edx + 1]
dec edi
shl eax, 8
or ecx, eax
cmp ecx, ebp
sete bl
je 0x49c8ab
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x3c]
mov eax, dword [eax + 0x24]
add edx, eax
mov dword [esp + 0x3c], edx
test edi, edi
jg 0x49c850
jmp 0x49c8ab
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esp + 0x4c], ecx
cmp ecx, dword [esp + 0x18]
jge 0x49c8a9
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x49c8a9
mov ebx, 1
jmp 0x49c8ab
xor ebx, ebx
mov ebp, dword [esp + 0x18]
test ebx, ebx
je 0x49c92d
mov ecx, dword [esp + 0x34]
movzx ecx, byte [ecx + 0x7524e8]
jmp 0x49ca19
mov edi, dword [esp + 0x14]
movzx edx, byte [edx + 3]
mov ebp, dword [esp + 0x18]
shl edx, 8
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 1]
or edx, eax
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x10]
imul ecx, dword [eax + 0x24]
mov eax, dword [eax + 0x30]
add eax, ecx
test edx, edx
je 0x49c92d
mov edi, eax
movzx ecx, byte [eax]
dec edx
movzx eax, byte [eax + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esp + 0x4c], ecx
cmp ecx, ebp
jge 0x49c91c
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x49c936
mov eax, dword [esp + 0x10]
xor ebx, ebx
mov eax, dword [eax + 0x24]
add eax, edi
mov edi, eax
test edx, edx
jg 0x49c8f8
mov ecx, dword [esp + 0x20]
jmp 0x49ca19
mov ecx, dword [esp + 0x34]
mov ebx, 1
movzx ecx, byte [ecx + 0x7524e8]
jmp 0x49ca19
mov eax, dword [esp + 0x10]
mov dword [eax + 0x98], 1
mov eax, dword [esp + 0x188]
inc eax
push eax
push 0
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push edx
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 1
jne 0x49ca01
mov eax, dword [esp + 0x10]
mov ebx, edi
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x3c], ebx
mov eax, dword [eax + 0x8c]
cmp eax, ecx
cmovg ecx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x18], ecx
movzx edi, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edi, 8
or edi, eax
add edi, ebp
mov edx, edi
cmp byte [edx], 0x77
jne 0x49c9e0
nop dword [eax]
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
add ebx, edx
mov edx, ebx
mov dword [esp + 0x14], ebx
cmp byte [edx], 0x77
je 0x49c9c0
mov ebx, dword [esp + 0x3c]
mov edi, edx
mov ecx, dword [esp + 0x34]
mov ebp, dword [esp + 0x18]
movzx eax, byte [ecx + 0x7524e8]
movzx ecx, byte [ecx + 0x7524e8]
sub edi, eax
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x49ca19
test edi, edi
je 0x49ca11
cmp edi, 0xfffffc20
jne 0x4a8908
mov ecx, dword [esp + 0x20]
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
add edi, ecx
mov dword [esp + 0x14], edi
test ebx, ebx
jne 0x4a5af8
cmp byte [edi - 3], 0x77
je 0x4a5af8
mov edx, dword [esp + 0x10]
jmp 0x49c4a5
mov edi, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x90]
lea ebp, [edx + edx]
and eax, 0xffff0000
mov dword [esp + 0x4c], ebp
or eax, edx
mov dword [ecx + 0x90], eax
cmp ebp, dword [ecx + 0x14]
jl 0x49ca93
mov ebp, dword [esp + 0x1c]
mov edx, ecx
or eax, 0x10000
add edi, 3
mov dword [esp + 0x14], edi
mov dword [edx + 0x90], eax
jmp 0x49c4b0
mov eax, ecx
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [esp + 0x10]
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebp*4], eax
mov ecx, esi
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov dword [eax + ebp*4 + 4], ecx
cmp ebx, ebp
jg 0x49efef
lea ebx, [ebp + 2]
add edi, 3
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x98], 1
mov ebx, dword [eax + 0xac]
jne 0x49cafa
mov dword [eax + 0x98], 0
mov ebp, 1
jmp 0x49cafc
xor ebp, ebp
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x188]
inc eax
push eax
push 0
push dword [esp + 0x18]
lea eax, [edi + 3]
push dword [esp + 0x24]
push dword [esp + 0x34]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 1
je 0x49cb99
cmp edi, 0xfffffc19
je 0x49cb99
mov eax, dword [esp + 0x10]
mov dword [eax + 0xac], ebx
cmp edi, 0xfffffc20
jne 0x49cb6f
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0x10]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae 0x4a8908
cmp byte [edx], 0x77
je 0x49cb77
cmp byte [eax], 0x77
jmp 0x49cb71
test edi, edi
jne 0x4a8908
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [esp + 0x14], edi
cmp byte [edi], 0x77
je 0x49cb00
jmp 0x49cba8
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov eax, dword [eax + 0x7c]
mov dword [esp + 0x24], eax
cmp byte [edi], 0x78
je case.0x4a86ae.14
test ebp, ebp
jne 0x4a60d2
nop dword [eax]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x49cbc0
mov eax, dword [esp + 0x10]
add edi, 3
mov ebp, dword [esp + 0x1c]
mov edx, eax
mov dword [esp + 0x14], edi
mov ebx, dword [eax + 0x8c]
mov dword [esp + 0x18], ebx
jmp 0x49c4b0
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x98], 1
mov ebx, dword [eax + 0xac]
jne 0x49cc18
mov dword [eax + 0x98], 0
mov ebp, 1
jmp 0x49cc1a
xor ebp, ebp
mov edi, dword [esp + 0x14]
nop
mov eax, dword [esp + 0x188]
inc eax
push eax
push 0
push dword [esp + 0x18]
lea eax, [edi + 3]
push dword [esp + 0x24]
push dword [esp + 0x34]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
mov eax, dword [esp + 0x10]
mov dword [eax + 0xac], ebx
cmp edi, 0xfffffc20
jg 0x49cc82
jne 0x49ccb3
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or eax, ecx
add eax, edi
cmp dword [edx + 0x7c], eax
jae 0x49cce0
cmp byte [edi], 0x77
je 0x49cc95
cmp byte [eax], 0x77
jne 0x49cce0
jmp 0x49cc95
mov eax, edi
sub eax, 0
jne 0x4a5fcb
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [esp + 0x14], edi
cmp byte [edi], 0x77
je 0x49cc20
jmp 0x49ccf4
cmp edi, 0xfffffc19
je case.0x4a86ae.14
lea eax, [edi + 0x3e4]
cmp eax, 3
ja 0x4a8908
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
nop word [eax + eax]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x49cce0
test ebp, ebp
jne 0x4a60d2
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
test ebp, ebp
je 0x49cd4c
or ecx, eax
mov eax, dword [esp + 0x10]
jbe 0x49cd5d
mov edx, dword [eax + 0x74]
dec esi
dec ecx
cmp esi, edx
jb case.0x4a86ae.14
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x49cd42
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x49cd38
test ecx, ecx
jg 0x49cd26
mov eax, dword [esp + 0x10]
jmp 0x49cd5d
or ecx, eax
mov eax, dword [esp + 0x10]
sub esi, ecx
cmp esi, dword [eax + 0x74]
jb case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [eax + 0x84]
jae 0x49efef
mov ebp, dword [esp + 0x1c]
add edi, 3
mov dword [eax + 0x84], esi
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov edi, dword [0x8b854c]
test edi, edi
je 0x49ce86
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xb4], 2
movzx eax, byte [edx + 1]
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
mov dword [esp + 0xbc], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x74]
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x78]
sub eax, dword [ecx + 0x74]
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0x24]
sub eax, dword [ecx + 0x74]
mov dword [esp + 0xc8], eax
mov eax, esi
sub eax, dword [ecx + 0x74]
mov dword [esp + 0xcc], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0xdc], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, ebx
cdq
sub eax, edx
mov dword [esp + 0xe0], ecx
sar eax, 1
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x90]
and eax, 0xffff
cmove eax, dword [esp + 0x5c]
mov dword [esp + 0xd4], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa8]
mov dword [esp + 0xd8], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xb0]
mov dword [esp + 0xe4], eax
lea eax, [esp + 0xb4]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.0x4a86ae.14
js 0x4a8908
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
add edi, 6
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
movzx ebx, byte [edi + 1]
mov edx, dword [eax + 0x70]
movzx eax, byte [edi + 2]
shl ebx, 8
or ebx, eax
add ebx, edx
cmp ebx, edx
jne 0x49cebc
xor ecx, ecx
jmp 0x49cec9
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa4]
test eax, eax
je 0x49ceeb
cmp ecx, dword [eax + 4]
jne 0x49cee5
cmp esi, dword [eax + 0x14]
je 0x4a5fdb
mov eax, dword [eax]
test eax, eax
jne 0x49ced7
mov eax, dword [esp + 0x10]
add edi, 3
mov dword [esp + 0x64], ecx
lea ecx, [esp + 0x60]
mov dword [esp + 0x14], edi
mov eax, dword [eax + 0x90]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], esi
mov eax, dword [eax + 0xa4]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x10]
mov dword [eax + 0xa4], ecx
mov ecx, dword [eax + 0x10]
mov dword [esp + 0x6c], ecx
cmp ecx, 0x1e
jg 0x49cf3d
lea eax, [esp + 0xe8]
mov dword [esp + 0x68], eax
jmp 0x49cf5e
lea eax, [ecx*4]
push eax
call dword [0x880674]
add esp, 4
mov dword [esp + 0x68], eax
test eax, eax
je 0x4a6009
mov ecx, dword [esp + 0x6c]
shl ecx, 2
push ecx
mov ecx, dword [esp + 0x14]
push dword [ecx + 0xc]
push eax
call fcn.0050a630
add esp, 0xc
cmp byte [ebx], 0x88
sbb ebp, ebp
inc ebp
test ebp, ebp
je 0x49cf8a
mov eax, dword [esp + 0x10]
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ebx]
push dword [esp + 0x18]
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, ebx
push eax
push esi
call fcn.0049c360
mov edi, eax
mov eax, dword [esp + 0x88]
shl eax, 2
push eax
mov eax, dword [esp + 0x30]
push dword [esp + 0x88]
push dword [eax + 0xc]
call fcn.0050a630
mov ecx, dword [esp + 0x38]
add esp, 0x28
mov eax, dword [esp + 0x70]
mov dword [ecx + 0x90], eax
mov eax, dword [esp + 0x60]
mov dword [ecx + 0xa4], eax
cmp edi, 1
je 0x49d06a
cmp edi, 0xfffffc19
je 0x49d06a
cmp edi, 0xfffffc1c
jl 0x49d00e
cmp edi, 0xfffffc20
jle case.0x4a86ae.14
test edi, edi
jne 0x4a5fe5
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x60]
mov dword [eax + 0xa4], ecx
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x49cf78
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x60]
mov dword [ecx + 0xa4], eax
lea ecx, [esp + 0xe8]
mov eax, dword [esp + 0x68]
cmp eax, ecx
je case.0x4a86ae.14
push eax
call dword [0x880678]
add esp, 4
xor eax, eax
jmp 0x4a8c8d
mov eax, dword [esp + 0x68]
lea ecx, [esp + 0xe8]
cmp eax, ecx
je 0x49d083
push eax
call dword [0x880678]
add esp, 4
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 0x80]
mov eax, dword [eax + 0x7c]
mov dword [esp + 0x24], eax
jmp 0x49c49d
mov edi, dword [esp + 0x14]
nop dword [eax]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x49d0a0
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebx
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x49d0f0
lea edi, [ebx + 3]
mov dword [esp + 0x14], edi
nop dword [eax + eax]
mov edx, dword [esp + 0x10]
jmp 0x49c4a9
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
mov edx, eax
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x49d124
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edx + 3]
push dword [esp + 0x18]
push ebx
push dword [esp + 0x34]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
jmp 0x49c4b0
mov edx, dword [esp + 0x14]
inc edx
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x49d180
lea edi, [edx + 3]
mov edx, dword [esp + 0x10]
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov ecx, dword [esp + 0x14]
inc ecx
mov dword [esp + 0x34], 1
mov dword [esp + 0x14], ecx
movzx edi, byte [ecx]
mov dword [esp + 0x28], edi
cmp edi, 0x86
je 0x49d1d0
cmp edi, 0x8b
jne 0x49d3bd
movzx ebp, byte [ecx + 3]
movzx eax, byte [ecx + 4]
shl ebp, 8
or ebp, eax
mov eax, dword [esp + 0x10]
lea ebx, [ebp*2]
mov dword [esp + 0x4c], ebx
cmp ebx, dword [eax + 0x14]
jge 0x49d3b5
mov eax, ecx
xor edx, edx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x3c], edx
sub eax, dword [ecx + 0x70]
mov dword [esp + 0x20], eax
mov eax, ecx
mov ecx, dword [eax + 0xc]
mov eax, dword [ecx + ebx*4]
mov dword [esp + 0x40], eax
mov eax, dword [ecx + ebx*4 + 4]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
sub eax, ebp
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x90]
jmp 0x49d244
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x10]
mov edx, esi
sub edx, dword [eax + 0x74]
sub ecx, ebp
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
cmp edi, 0x88
jb 0x49d26a
mov eax, dword [esp + 0x10]
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
movzx eax, byte [ecx]
push dword [esp + 0x24]
push dword [esp + 0x34]
movzx eax, byte [eax + 0x7524e8]
add eax, ecx
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1a
jne 0x49d2e4
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov dword [esp + 0x3c], 1
mov ecx, dword [eax + 0x8c]
mov esi, dword [eax + 0x80]
mov ebx, dword [eax + 0x90]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 0x70]
add ecx, dword [esp + 0x20]
mov eax, dword [eax + 0x7c]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x24], eax
jmp 0x49d240
cmp edi, 0xfffffc20
jne 0x49d31c
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0x10]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae 0x4a8908
cmp byte [edx], 0x77
je 0x49d328
cmp byte [eax], 0x77
jne 0x4a8908
jmp 0x49d328
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x28]
mov dword [eax + 0x90], ebx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esp + 0x14], edx
cmp byte [edx], 0x77
je 0x49d240
mov edx, dword [esp + 0x3c]
test edx, edx
jne 0x49d38e
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x48]
mov eax, dword [eax + 0xc]
mov dword [eax + ebx*4], ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov eax, dword [eax + 0xc]
mov dword [eax + ebx*4 + 4], ecx
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0xc]
sub ecx, ebp
mov dword [eax + ecx*4], edi
cmp dword [esp + 0x34], 0
jne 0x49d39d
test edx, edx
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], 0
mov eax, dword [esp + 0x10]
mov ebx, ecx
xor ebp, ebp
sub ebx, dword [eax + 0x70]
mov eax, dword [eax + 0x90]
mov dword [esp + 0x3c], eax
cmp edi, 0x88
jb 0x49d3e8
mov eax, dword [esp + 0x10]
mov dword [eax + 0x98], 2
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push dword [esp + 0x18]
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, ecx
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1a
jne 0x49d450
mov eax, dword [esp + 0x10]
mov ebp, 1
mov edi, dword [esp + 0x28]
mov ecx, dword [eax + 0x8c]
mov esi, dword [eax + 0x80]
mov dword [esp + 0x18], ecx
mov ecx, dword [eax + 0x70]
mov eax, dword [eax + 0x7c]
add ecx, ebx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x24], eax
jmp 0x49d3d2
cmp edi, 0xfffffc20
jne 0x49d48c
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x7c], eax
jae 0x4a8908
mov ecx, dword [esp + 0x14]
cmp byte [ecx], 0x77
je 0x49d498
cmp byte [eax], 0x77
jne 0x4a8908
jmp 0x49d498
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [esp + 0x14], edi
cmp byte [edi], 0x77
jne 0x49d4cb
mov eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x28]
mov ecx, dword [esp + 0x14]
mov dword [edx + 0x90], eax
jmp 0x49d3d2
test ebp, ebp
jne 0x49d4d9
cmp dword [esp + 0x34], ebp
je case.0x4a86ae.14
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov edi, dword [esp + 0x14]
mov ebp, edi
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
sub ebp, ecx
mov cl, byte [ebp]
cmp cl, 0x88
jae 0x49d50b
cmp cl, 0x81
je 0x49d50b
xor ebx, ebx
jmp 0x49d51a
mov ebx, dword [esp + 0x30]
lea eax, [ebx + 4]
mov ebx, dword [ebx]
mov dword [esp + 0x30], ebx
mov ebx, dword [eax]
cmp cl, 0x7d
jb 0x49d528
cmp cl, 0x80
jbe 0x4a60bb
cmp cl, 0x82
je 0x4a60bb
cmp cl, 0x85
je 0x49d545
cmp cl, 0x8a
je 0x49d545
cmp cl, 0x86
je 0x49d545
cmp cl, 0x8b
jne 0x49d5a3
movzx edx, byte [ebp + 3]
movzx eax, byte [ebp + 4]
shl edx, 8
or edx, eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xa4]
lea edi, [edx + edx]
mov dword [esp + 0x4c], edi
mov ecx, edi
test eax, eax
je 0x49d572
cmp dword [eax + 4], edx
je 0x4a6013
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x10]
mov eax, dword [eax + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [edi + 0x90], eax
cmp ecx, dword [edi + 0x14]
jl 0x49d5fc
mov edx, edi
or eax, 0x10000
mov edi, dword [esp + 0x14]
mov dword [edx + 0x90], eax
mov ecx, dword [esp + 0x18]
cmp byte [edi], 0x78
je 0x49d5b4
cmp esi, ebx
jne 0x4a5b36
cmp byte [ebp], 0x81
jne 0x49efeb
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edi + 3]
push edx
push ecx
push dword [esp + 0x34]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov eax, dword [esp + 0x10]
mov dword [eax + 0xb4], ebp
mov eax, 0xfffffc1b
jmp 0x4a8c8d
mov edi, dword [esp + 0x18]
cmp ecx, edi
jle 0x49d622
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0xc]
lea edi, [eax + edi*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x49d622
mov eax, dword [esp + 0x5c]
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [esp + 0x4c]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, esi
mov eax, dword [esp + 0x10]
sub ecx, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov dword [eax + edx*4 + 4], ecx
mov ecx, dword [esp + 0x18]
cmp ecx, edx
jg 0x49d65b
lea ecx, [edx + 2]
mov dword [esp + 0x18], ecx
mov edx, dword [esp + 0x10]
jmp 0x49d5a7
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x44], 0
je 0x49d67d
cmp esi, dword [eax + 0x74]
je case.0x4a86ae.14
jmp 0x49d67d
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x74]
jne case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x44], 0
je 0x49d6ab
cmp esi, dword [eax + 0x74]
je case.0x4a86ae.14
mov ecx, dword [eax + 0x74]
cmp esi, ecx
je 0x49e693
cmp esi, dword [eax + 0x78]
je case.0x4a86ae.14
mov edx, dword [eax + 0x18]
test edx, edx
je 0x49d6f8
cmp esi, ecx
jbe case.0x4a86ae.14
push ebp
add eax, 0x1c
push eax
push ecx
push edx
push esi
call fcn.004aa660
add esp, 0x14
test eax, eax
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov edx, dword [eax + 0x1c]
lea eax, [edx + ecx]
cmp esi, eax
jb case.0x4a86ae.14
mov ebx, dword [esp + 0x10]
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [ebx + 0x34]
jne case.0x4a86ae.14
cmp edx, 1
mov edx, ebx
je 0x49d68a
mov al, byte [ecx + 1]
cmp al, byte [edx + 0x35]
jne case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x10]
mov eax, dword [eax + 0x94]
add eax, dword [edx + 0x74]
cmp esi, eax
jne case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x24], esi
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x49d827
mov edx, dword [eax + 0x18]
test edx, edx
je 0x49d7ab
push ebp
add eax, 0x1c
push eax
push ecx
push edx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne 0x49d686
mov eax, dword [esp + 0x10]
jmp 0x49d7d8
mov edx, dword [eax + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x49d7d8
mov ecx, dword [esp + 0x10]
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne 0x49d7d6
cmp edx, 1
mov edx, ecx
je 0x49d68a
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je 0x49d68a
mov eax, ecx
cmp dword [eax + 0x88], 0
je case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb case.0x4a86ae.14
cmp dword [ecx + 0x18], 0
jne case.0x4a86ae.14
cmp dword [ecx + 0x1c], 2
jne case.0x4a86ae.14
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne case.0x4a86ae.14
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jmp 0x4a8802
cmp dword [eax + 0x48], 0
jne case.0x4a86ae.14
jmp 0x49d93c
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x48], 0
jne case.0x4a86ae.14
cmp dword [eax + 0x58], 0
je 0x49d89c
jmp 0x49d850
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jb case.0x4a86ae.14
cmp dword [eax + 0x88], 0
je 0x49d686
cmp esi, dword [eax + 0x84]
jbe 0x49d686
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x4a8808
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x78]
cmp esi, eax
jae 0x49d938
mov ebx, dword [esp + 0x10]
mov ecx, dword [ebx + 0x18]
lea edi, [ebx + 0x1c]
test ecx, ecx
je 0x49d911
push ebp
push edi
push eax
push ecx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne 0x49d92d
cmp dword [ebx + 0x88], 0
je case.0x4a86ae.14
lea eax, [esi + 1]
cmp eax, dword [ebx + 0x78]
jb case.0x4a86ae.14
cmp dword [ebx + 0x18], 0
jne case.0x4a86ae.14
cmp dword [ebx + 0x1c], 2
jne case.0x4a86ae.14
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne case.0x4a86ae.14
mov dword [ebx + 0x64], 1
cmp dword [ebx + 0x88], 1
jmp 0x4a8802
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x49d8c6
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x49d8c6
cmp ecx, 1
je 0x49d92d
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
jne 0x49d8c6
mov eax, ebx
mov eax, dword [eax + 0x78]
sub eax, dword [edi]
cmp esi, eax
jne 0x49d8c6
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x49e693
cmp esi, dword [eax + 0x84]
jbe 0x49e693
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x4a8808
mov edi, dword [esp + 0x14]
mov edx, eax
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
test ebp, ebp
je 0x49dbd4
cmp esi, dword [eax + 0x74]
je 0x49dad2
mov al, byte [esi - 1]
lea edx, [esi - 1]
and al, 0xc0
mov ecx, edx
cmp al, 0x80
jne 0x49d9ac
nop dword [eax]
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
je 0x49d9a0
mov eax, dword [esp + 0x10]
cmp ecx, dword [eax + 0x84]
jae 0x49d9be
mov dword [eax + 0x84], edx
movzx ebx, byte [edx]
mov ecx, ebx
cmp ebx, 0xc0
jb 0x49da73
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x49d9ea
mov eax, ebx
mov ebx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x49da6b
movzx eax, byte [edx + 2]
test bl, 0x10
jne 0x49d9fd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x49da65
and eax, 0x3f
test bl, 8
jne 0x49da18
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x49da65
test bl, 4
jne 0x49da3c
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 0x49da65
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, dword [esp + 0x10]
mov ecx, ebx
cmp dword [eax + 0x54], 0
je 0x49daba
cmp ecx, 0x5f
je 0x49dab3
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x49dab3
cmp eax, 3
jne 0x49dad2
mov edi, 1
jmp 0x49dad4
cmp ecx, 0x100
jae 0x49dad2
mov eax, dword [eax + 0x40]
test byte [ebx + eax], 0x10
je 0x49dad2
mov edi, 1
jmp 0x49dad4
xor edi, edi
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x49dc6b
movzx edx, byte [esi]
mov ecx, edx
cmp edx, 0xc0
jb 0x49db96
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x49db0d
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x49db8e
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x49db20
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x49db88
and eax, 0x3f
test dl, 8
jne 0x49db3b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x49db88
test dl, 4
jne 0x49db5f
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x49db88
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, dword [esp + 0x10]
mov ecx, edx
cmp dword [eax + 0x54], 0
je 0x49dbbc
cmp ecx, 0x5f
je 0x49dcfe
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
and ecx, 0x7f
jmp 0x49dcdb
cmp ecx, 0x100
jae 0x49dc90
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jmp 0x49dd0c
cmp esi, dword [eax + 0x74]
je 0x49dc60
cmp esi, dword [eax + 0x84]
ja 0x49dbf4
mov ecx, dword [esp + 0x10]
lea eax, [esi - 1]
mov dword [ecx + 0x84], eax
mov eax, ecx
cmp dword [eax + 0x54], 0
movzx ecx, byte [esi - 1]
je 0x49dc50
cmp ecx, 0x5f
je 0x49dc49
mov eax, ecx
test eax, eax
jns 0x49dc0c
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
and ecx, reloc.ace32.dll_Ordinal_127
jns 0x49dc26
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x49dc49
cmp eax, 3
jne 0x49dc60
mov edi, 1
jmp 0x49dc62
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je 0x49dc60
mov edi, 1
jmp 0x49dc62
xor edi, edi
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jb 0x49dcaa
cmp dword [eax + 0x88], 0
je 0x49dc90
cmp esi, dword [eax + 0x84]
jbe 0x49dc90
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x4a8808
xor ecx, ecx
mov edx, dword [esp + 0x14]
mov al, byte [edx]
inc edx
mov dword [esp + 0x14], edx
cmp al, 5
jne 0x49dd18
xor eax, eax
cmp ecx, edi
sete al
jmp 0x49dd1f
cmp dword [eax + 0x54], 0
movzx ecx, byte [esi]
je 0x49dd05
cmp ecx, 0x5f
je 0x49dcfe
mov eax, ecx
test eax, eax
jns 0x49dcc1
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
and ecx, reloc.ace32.dll_Ordinal_127
jns 0x49dcdb
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x49dcfe
cmp eax, 3
jne 0x49dc90
mov ecx, 1
jmp 0x49dc92
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je 0x49dc90
mov ecx, 1
jmp 0x49dc92
xor eax, eax
cmp ecx, edi
setne al
test eax, eax
jne case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
jmp 0x49c4a9
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x18]
test edx, edx
je 0x49dda4
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x49dd62
push ebp
add eax, 0x1c
push eax
push ecx
push edx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne case.0x4a86ae.14
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x49ddd8
mov ecx, dword [esp + 0x10]
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
mov eax, ecx
jb 0x49ddd8
cmp dword [eax + 0x18], 0
jne 0x49ddd8
cmp dword [eax + 0x1c], 2
jne 0x49ddd8
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
mov eax, ecx
jne 0x49ddd8
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x4a8808
jmp 0x49ddd8
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x78]
sub eax, ecx
cmp esi, eax
ja 0x49dd5e
mov edx, dword [esp + 0x10]
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x49ddd0
cmp ecx, 1
je case.0x4a86ae.14
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je case.0x4a86ae.14
mov eax, edx
jmp 0x49dd62
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4a6213
inc esi
test ebp, ebp
je 0x49d686
cmp esi, edx
jae 0x49d686
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x49d686
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x49ddf6
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
mov edi, dword [esp + 0x14]
inc esi
inc edi
mov edx, eax
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test ebp, ebp
je 0x49df39
cmp ecx, 0xc0
jb 0x49df39
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49de7b
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49df37
test cl, 0x10
jne 0x49de9c
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49df37
test cl, 8
jne 0x49dec6
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49df37
test cl, 4
jne 0x49defc
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49df37
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
mov edx, dword [esp + 0x10]
cmp eax, 0x100
jae 0x49d68a
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jne case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test ebp, ebp
je 0x49e061
cmp ecx, 0xc0
jb 0x49e061
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49dfa3
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e05f
test cl, 0x10
jne 0x49dfc4
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e05f
test cl, 8
jne 0x49dfee
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e05f
test cl, 4
jne 0x49e024
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e05f
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0xff
ja case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test ebp, ebp
je 0x49e189
cmp ecx, 0xc0
jb 0x49e189
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49e0cb
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e187
test cl, 0x10
jne 0x49e0ec
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e187
test cl, 8
jne 0x49e116
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e187
test cl, 4
jne 0x49e14c
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e187
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
mov edx, dword [esp + 0x10]
cmp eax, 0x100
jae 0x49d68a
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jne case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test ebp, ebp
je 0x49e2b1
cmp ecx, 0xc0
jb 0x49e2b1
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49e1f3
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e2af
test cl, 0x10
jne 0x49e214
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e2af
test cl, 8
jne 0x49e23e
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e2af
test cl, 4
jne 0x49e274
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e2af
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0xff
ja case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx edx, byte [esi]
inc esi
mov eax, edx
test ebp, ebp
je 0x49e3ce
cmp edx, 0xc0
jb 0x49e3ce
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x49e31d
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x49e3cc
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x49e340
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
mov edx, ecx
or edx, eax
add esi, 2
jmp 0x49e3cc
test dl, 8
jne 0x49e365
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
mov edx, ecx
or edx, eax
add esi, 3
jmp 0x49e3cc
test dl, 4
jne 0x49e396
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
mov edx, ecx
or edx, eax
add esi, 4
jmp 0x49e3cc
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
mov edx, ecx
or edx, eax
add esi, 5
mov eax, edx
cmp eax, 0x100
jae 0x49d686
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jmp 0x49d680
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test ebp, ebp
je 0x49e4e7
cmp ecx, 0xc0
jb 0x49e4e7
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49e429
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e4e5
test cl, 0x10
jne 0x49e44a
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e4e5
test cl, 8
jne 0x49e474
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e4e5
test cl, 4
jne 0x49e4aa
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e4e5
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0xff
ja case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, esi
test ebp, ebp
je 0x49e611
cmp ecx, 0xc0
jb 0x49e611
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49e553
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e60f
test cl, 0x10
jne 0x49e574
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e60f
test cl, 8
jne 0x49e59e
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e60f
test cl, 4
jne 0x49e5d4
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e60f
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, esi
cmp ecx, 0xd
ja 0x49e66e
je 0x49e62c
cmp ecx, 0xa
je 0x49d686
jbe case.0x4a86ae.14
cmp ecx, 0xc
jmp 0x49e67f
cmp eax, edx
mov edx, dword [esp + 0x10]
jb 0x49e654
cmp dword [edx + 0x88], 0
je 0x49d68a
cmp eax, dword [edx + 0x84]
jbe 0x49d68a
mov eax, edx
jmp 0x49d955
cmp byte [esi], 0xa
jne 0x49d68a
mov edi, dword [esp + 0x14]
lea esi, [eax + 1]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
cmp ecx, 0x85
je 0x49e685
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x4a86ae.14
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x68], 0
jne case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, eax
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
test ebp, ebp
je 0x49e79d
cmp ecx, 0xc0
jb 0x49e79d
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49e6e1
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e79d
test cl, 0x10
jne 0x49e702
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e79d
test cl, 8
jne 0x49e72c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e79d
test cl, 4
jne 0x49e762
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e79d
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x180e
ja 0x49e7fb
je case.0x4a86ae.14
cmp ecx, 0xa0
ja 0x49e7dd
je case.0x4a86ae.14
cmp ecx, 9
je case.0x4a86ae.14
cmp ecx, 0x20
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
cmp ecx, 0x1680
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
cmp ecx, 0x205f
ja 0x49e83f
je case.0x4a86ae.14
cmp ecx, 0x2000
jb 0x49d686
cmp ecx, 0x200a
jbe case.0x4a86ae.14
cmp ecx, 0x202f
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
cmp ecx, 0x3000
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
test ebp, ebp
je 0x49e957
cmp ecx, 0xc0
jb 0x49e957
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49e89b
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49e957
test cl, 0x10
jne 0x49e8bc
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49e957
test cl, 8
jne 0x49e8e6
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49e957
test cl, 4
jne 0x49e91c
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49e957
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x180e
ja 0x49e98f
je 0x49d686
cmp ecx, 0xa0
ja 0x49e984
je 0x49d686
cmp ecx, 9
je 0x49d686
cmp ecx, 0x20
jmp 0x49d680
cmp ecx, 0x1680
jmp 0x49d680
cmp ecx, 0x205f
ja 0x49e9c0
je 0x49d686
cmp ecx, 0x2000
jb case.0x4a86ae.14
cmp ecx, 0x200a
jbe 0x49d686
cmp ecx, 0x202f
jmp 0x49d680
cmp ecx, 0x3000
jmp 0x49d680
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx edx, byte [esi]
inc esi
test ebp, ebp
je 0x49eab8
cmp edx, 0xc0
jb 0x49eab8
test dl, 0x20
jne 0x49ea09
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x49eab8
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x49ea30
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
add esi, 2
jmp 0x49eab6
test dl, 8
jne 0x49ea53
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49eab6
test dl, 4
jne 0x49ea82
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49eab6
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edx, ecx
cmp edx, 0x85
ja 0x49eaea
je case.0x4a86ae.14
cmp edx, 0xa
jb 0x49d686
cmp edx, 0xd
jbe case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
cmp edx, 0x2028
jb 0x49d686
cmp edx, 0x2029
jbe case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
test ebp, ebp
je 0x49ec0e
cmp ecx, 0xc0
jb 0x49ec0e
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49eb52
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49ec0e
test cl, 0x10
jne 0x49eb73
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49ec0e
test cl, 8
jne 0x49eb9d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49ec0e
test cl, 4
jne 0x49ebd3
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49ec0e
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x85
ja 0x49ec3a
je 0x49d686
lea eax, [ecx - 0xa]
cmp eax, 3
ja case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
jmp 0x49c4a5
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx edx, byte [esi]
inc esi
mov edi, edx
test ebp, ebp
je 0x49ed59
cmp edx, 0xc0
jb 0x49ed59
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x49ec9b
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x49ed57
test dl, 0x10
jne 0x49ecbc
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x49ed57
test dl, 8
jne 0x49ece6
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x49ed57
test dl, 4
jne 0x49ed1c
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x49ed57
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov edi, edx
mov eax, edi
shr eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, edi
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx ebx, word [ecx*2 + 0x7561c8]
mov ecx, dword [esp + 0x14]
movzx eax, byte [ecx + 1]
cmp eax, 0xa
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a8eac]
cmp dword [esp + 0x28], 0xf
jmp 0x49efdd
mov al, byte [ebx*8 + 0x752c31]
cmp al, 9
je 0x49efcc
cmp al, 5
je 0x49efcc
cmp al, 8
je 0x49efcc
xor ecx, ecx
jmp 0x49efd1
mov edi, dword [esp + 0x14]
xor edx, edx
movzx ecx, byte [ebx*8 + 0x752c31]
movzx eax, byte [edi + 2]
cmp eax, dword [ecx*4 + 0x752600]
setne dl
xor eax, eax
cmp dword [esp + 0x28], 0x10
sete al
cmp edx, eax
je case.0x4a86ae.14
mov edx, dword [esp + 0x10]
add edi, 3
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov edi, dword [esp + 0x14]
xor ecx, ecx
mov al, byte [edi + 2]
cmp al, byte [ebx*8 + 0x752c31]
setne cl
xor eax, eax
cmp dword [esp + 0x28], 0x10
sete al
cmp ecx, eax
je case.0x4a86ae.14
mov edx, dword [esp + 0x10]
add edi, 3
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov edi, dword [esp + 0x14]
xor ecx, ecx
mov al, byte [edi + 2]
cmp al, byte [ebx*8 + 0x752c30]
setne cl
xor eax, eax
cmp dword [esp + 0x28], 0x10
sete al
cmp ecx, eax
je case.0x4a86ae.14
mov edx, dword [esp + 0x10]
add edi, 3
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
mov dword [esp + 0x14], edi
jmp 0x49c4b0
movzx eax, byte [ebx*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x49efcc
cmp eax, 3
je 0x49efcc
xor ecx, ecx
jmp 0x49efd1
cmp edx, 0x180e
ja 0x49eeea
je case.0x49ed88.0
cmp edx, 0x85
ja 0x49eed6
je case.0x49ed88.0
cmp edx, 9
jb case.0x49ef0a.8203
cmp edx, 0xd
jbe case.0x49ed88.0
cmp edx, 0x20
jmp 0x49ef23
cmp edx, 0xa0
je case.0x49ed88.0
cmp edx, 0x1680
jmp 0x49ef23
cmp edx, 0x202f
ja 0x49ef11
je case.0x49ed88.0
add edx, 0xffffe000
cmp edx, 0x29
ja case.0x49ef0a.8203
movzx eax, byte [edx + 0x4a8ee0]
jmp dword [eax*4 + 0x4a8ed8]
cmp edx, 0x205f
je case.0x49ed88.0
cmp edx, 0x3000
je case.0x49ed88.0
movzx eax, byte [ebx*8 + 0x752c31]
xor ecx, ecx
cmp dword [eax*4 + 0x752600], 6
sete cl
jmp 0x49efd1
movzx eax, byte [ebx*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x49efcc
cmp eax, 3
je 0x49efcc
cmp edi, 0x5f
je 0x49efcc
xor ecx, ecx
jmp 0x49efd1
movzx eax, byte [ecx + 2]
mov ecx, dword [eax*4 + 0x752af0]
lea eax, [eax*4 + 0x752af0]
cmp edi, ecx
jb 0x49ef8d
nop dword [eax + eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x49ef94
mov ecx, dword [eax]
cmp edx, ecx
jae 0x49ef80
cmp dword [esp + 0x28], 0x10
jmp 0x49efdd
cmp dword [esp + 0x28], 0x10
jne case.0x4a86ae.14
jmp 0x49efe3
cmp edi, 0x24
je 0x49efcc
cmp edi, 0x40
je 0x49efcc
cmp edi, 0x60
je 0x49efcc
cmp edi, 0xa0
jb 0x49efc0
cmp edi, 0xd7ff
jbe 0x49efcc
cmp edi, 0xe000
jae 0x49efcc
xor ecx, ecx
jmp 0x49efd1
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
mov edx, dword [esp + 0x1c]
mov ebp, ebx
mov dword [esp + 0x3c], ebx
mov ecx, esi
test edx, edx
je 0x49f117
cmp ebx, 0xc0
jb 0x49f117
mov al, byte [esi]
test bl, 0x20
jne 0x49f04b
and ebx, 0x1f
movzx ebp, al
and ebp, 0x3f
shl ebx, 6
inc esi
or ebp, ebx
jmp 0x49f115
lea ecx, [esi + 1]
test bl, 0x10
jne 0x49f06c
movzx ebp, al
and ebx, 0xf
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x49f10d
lea edx, [esi + 2]
test bl, 8
jne 0x49f097
movzx eax, al
mov ebp, ebx
and ebp, 7
and eax, 0x3f
shl ebp, 6
add esi, 3
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x49f109
lea edi, [esi + 3]
test bl, 4
jne 0x49f0cd
movzx eax, al
mov ebp, ebx
and ebp, 3
and eax, 0x3f
shl ebp, 6
add esi, 4
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x49f109
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x3c]
and ebp, 0x3f
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x1c]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov ecx, esi
mov eax, ebp
and ebp, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx ebx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
cmp ecx, ebp
jae 0x49f266
nop word [eax + eax]
test edx, edx
mov edi, 1
movzx edx, byte [esi]
je 0x49f21f
cmp edx, 0xc0
jb 0x49f21f
test dl, 0x20
jne 0x49f182
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x49f217
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x49f1a1
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x49f217
and eax, 0x3f
test dl, 8
jne 0x49f1c1
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x49f217
test dl, 4
jne 0x49f1ea
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x49f217
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx ecx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x50]
shl eax, cl
test dword [ebx*4 + 0x752678], eax
je 0x49f262
mov edx, dword [esp + 0x1c]
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x49f150
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x49d686
cmp esi, ebp
jb 0x49d686
jmp 0x49d866
xor ebx, ebx
cmp edi, 0x74
mov edi, dword [esp + 0x14]
sete bl
mov dword [esp + 0x34], ebx
movzx edx, byte [edi + 3]
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 1]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [edi + 2]
add edi, 5
or ecx, eax
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0x10]
imul ecx, dword [eax + 0x24]
mov eax, dword [eax + 0x30]
add eax, ecx
test edx, edx
je 0x49f2f8
mov edi, eax
movzx ecx, byte [eax]
dec edx
movzx eax, byte [eax + 1]
shl ecx, 8
or ecx, eax
lea ebp, [ecx + ecx]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x4c], ebp
cmp ebp, dword [esp + 0x18]
jge 0x49f2eb
mov eax, dword [ecx + 0xc]
cmp dword [eax + ebp*4], 0
jge 0x49f301
mov eax, dword [ecx + 0x24]
add eax, edi
mov edi, eax
test edx, edx
jg 0x49f2c4
jmp 0x49f300
mov ecx, dword [esp + 0x10]
mov ebp, dword [esp + 0x4c]
dec edx
test edx, edx
jns 0x49f319
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
mov ebp, dword [eax + 0x50]
neg ebp
sbb ebp, ebp
neg ebp
dec ebp
jmp 0x49f37e
mov eax, dword [ecx + 0xc]
mov ecx, dword [esp + 0x4c]
mov edi, dword [esp + 0x14]
mov ebp, dword [eax + ebp*4 + 4]
sub ebp, dword [eax + ecx*4]
jmp 0x49f37e
xor ebx, ebx
cmp edi, 0x72
mov edi, dword [esp + 0x14]
sete bl
mov dword [esp + 0x34], ebx
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
add edi, 3
shl ecx, 8
or ecx, eax
mov dword [esp + 0x14], edi
lea ebp, [ecx + ecx]
mov dword [esp + 0x4c], ebp
cmp ebp, dword [esp + 0x18]
jge 0x49f370
mov eax, dword [edx + 0xc]
mov ecx, dword [eax + ebp*4]
test ecx, ecx
js 0x49f370
mov ebp, dword [eax + ebp*4 + 4]
sub ebp, ecx
jmp 0x49f37e
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x50]
neg ebp
sbb ebp, ebp
neg ebp
dec ebp
mov dl, byte [edi]
movzx ecx, dl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x49f396
movzx eax, byte [eax + 0x4a8f14]
jmp dword [eax*4 + 0x4a8f0c]
movsx eax, byte [ecx + 0x751c62]
lea edx, [ecx - 0x62]
movsx ebx, byte [ecx + 0x751c56]
and edx, 1
inc edi
mov dword [esp + 0x20], edx
test eax, eax
cmove eax, dword [esp + 0x58]
mov dword [esp + 0x3c], eax
jmp 0x49f3f5
movzx ebx, byte [edi + 1]
xor eax, eax
movzx ecx, byte [edi + 3]
cmp dl, 0x69
sete al
shl ebx, 8
mov dword [esp + 0x20], eax
movzx eax, byte [edi + 2]
or ebx, eax
shl ecx, 8
movzx eax, byte [edi + 4]
or ecx, eax
cmove ecx, dword [esp + 0x58]
add edi, 5
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x14], edi
mov eax, ebx
test ebp, ebp
je 0x49ca35
jns 0x49f40d
test ebx, ebx
je 0x49ca35
mov edi, 1
cmp eax, edi
jl 0x49f43b
push dword [esp + 0x34]
push dword [esp + 0x14]
push ebp
push esi
push dword [esp + 0x5c]
call fcn.004a9300
add esp, 0x14
test eax, eax
js 0x4a60db
inc edi
add esi, eax
cmp edi, ebx
jle 0x49f416
mov edi, dword [esp + 0x3c]
cmp ebx, edi
je 0x49c49d
cmp dword [esp + 0x20], 0
je 0x4a6125
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
cmp ebx, dword [esp + 0x3c]
jge case.0x4a86ae.14
push dword [esp + 0x34]
mov edi, dword [esp + 0x14]
push edi
push ebp
push esi
push dword [esp + 0x5c]
call fcn.004a9300
add esp, 0x14
test eax, eax
js 0x4a6102
add esi, eax
inc ebx
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x49f482
jmp 0x4a8c8d
push ebx
mov ebx, dword [esp + 0x14]
push ebx
push ebp
push esi
push dword [esp + 0x5c]
call fcn.004a9300
add esp, 0x14
test eax, eax
js 0x4a61d2
add esi, eax
mov edx, ebx
jmp 0x49c4a5
mov ebp, dword [esp + 0x14]
mov cl, byte [ebp + 0x21]
lea ebx, [ebp + 1]
add ebp, 0x21
movzx edx, cl
mov dword [esp + 0x34], ebx
mov dword [esp + 0x14], ebp
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x49f52c
movzx eax, byte [eax + 0x4a8f24]
jmp dword [eax*4 + 0x4a8f1c]
lea eax, [edx - 0x62]
inc ebp
mov dword [esp + 0x14], ebp
cmp eax, 8
jae 0x49f54b
mov ecx, eax
and ecx, 1
mov dword [esp + 0x40], ecx
jmp 0x49f553
mov dword [esp + 0x48], 1
movsx edx, byte [eax + 0x751cb8]
movsx eax, byte [eax + 0x751cc4]
mov dword [esp + 0x20], edx
mov dword [esp + 0x38], eax
test eax, eax
jne 0x49f5cc
mov dword [esp + 0x38], SysReAllocStringLen
jmp 0x49f5cc
movzx edx, byte [ebp + 1]
xor eax, eax
cmp cl, 0x69
sete al
mov dword [esp + 0x40], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [ebp + 3]
sete al
shl edx, 8
mov dword [esp + 0x48], eax
movzx eax, byte [ebp + 2]
or edx, eax
shl ecx, 8
movzx eax, byte [ebp + 4]
or ecx, eax
cmove ecx, dword [esp + 0x58]
add ebp, 5
mov dword [esp + 0x38], ecx
mov dword [esp + 0x14], ebp
jmp 0x49f5c8
mov dword [esp + 0x38], 1
mov edx, 1
mov dword [esp + 0x20], edx
mov ecx, dword [esp + 0x1c]
mov ebp, 1
mov dword [esp + 0x3c], ebp
test ecx, ecx
je 0x49f747
cmp edx, ebp
jl 0x49f783
nop dword [eax]
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x2c], ebx
cmp ebx, 0xc0
jb 0x49f70c
test bl, 0x20
jne 0x49f62a
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x49f70c
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x49f650
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x49f703
lea edx, [esi + 2]
test bl, 8
jne 0x49f67f
and ebx, 7
movzx eax, al
and eax, 0x3f
shl ebx, 6
or ebx, eax
add esi, 3
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x49f703
mov ebp, dword [esp + 0x2c]
lea edi, [esi + 3]
test bl, 4
jne 0x49f6ba
movzx ebx, al
and ebp, 3
movzx eax, byte [ecx]
and ebx, 0x3f
shl ebp, 6
and eax, 0x3f
or ebx, ebp
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x49f6fb
and ebp, 1
movzx eax, al
and eax, 0x3f
shl ebp, 6
or ebp, eax
lea ebx, [esi + 4]
movzx eax, byte [ecx]
add esi, 5
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
shl ebp, 6
mov dword [esp + 0x2c], ebp
mov ebx, ebp
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x3c]
mov edx, dword [esp + 0x20]
and eax, 0x3f
or ebx, eax
cmp ebx, 0xff
jbe 0x49f719
cmp edi, 0x6e
jmp 0x49f72e
mov eax, dword [esp + 0x50]
mov ecx, ebx
and ecx, 7
shr ebx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [ebx + ecx], al
je case.0x4a86ae.14
inc ebp
mov dword [esp + 0x3c], ebp
cmp ebp, edx
jle 0x49f5f0
mov ebx, dword [esp + 0x34]
jmp 0x49f77f
cmp edx, 1
jl 0x49f783
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x4a620f
movzx edx, byte [esi]
inc esi
mov eax, dword [esp + 0x50]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + ebx], al
je case.0x4a86ae.14
mov edx, dword [esp + 0x20]
inc ebp
cmp ebp, edx
jle 0x49f753
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
cmp edx, eax
je 0x49c49d
cmp dword [esp + 0x40], 0
jne 0x4a623f
mov ebp, esi
test ecx, ecx
je 0x49f98b
cmp edx, eax
jge 0x49f8fd
mov ecx, dword [esp + 0x10]
mov ebx, dword [ecx + 0x78]
cmp esi, ebx
jae 0x49f8d4
movzx edx, byte [esi]
mov edi, 1
cmp edx, 0xc0
jb 0x49f893
test dl, 0x20
jne 0x49f7ed
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov edi, 2
jmp 0x49f88f
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x49f80f
and edx, 0xf
mov edi, 3
shl edx, 6
or ecx, edx
jmp 0x49f885
and eax, 0x3f
test dl, 8
jne 0x49f82f
and edx, 7
mov edi, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x49f885
test dl, 4
jne 0x49f858
and edx, 3
mov edi, 5
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x49f885
and edx, edi
mov edi, 6
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, ecx
mov eax, dword [esp + 0x38]
cmp edx, 0xff
jbe 0x49f8a4
cmp dword [esp + 0x28], 0x6e
je 0x49f8fd
jmp 0x49f8bf
mov eax, dword [esp + 0x50]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [edx + ecx], al
je 0x49f8fd
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0x20]
add esi, edi
inc edx
mov dword [esp + 0x20], edx
cmp edx, eax
jl 0x49f7b3
jmp 0x49f8fd
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x49f8fd
cmp esi, dword [eax + 0x84]
jbe 0x49f8fd
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x4a8808
cmp dword [esp + 0x48], 0
jne 0x49c49d
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
mov eax, esi
dec esi
cmp eax, ebp
je case.0x4a86ae.14
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x49f95d
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x49f953
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x49f940
jmp 0x4a8c8d
cmp edx, eax
jge 0x49f9c0
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x49fa12
movzx edx, byte [esi]
mov eax, dword [esp + 0x50]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
test byte [edx + ebx], al
je 0x49f9c0
mov eax, dword [esp + 0x20]
inc esi
inc eax
mov dword [esp + 0x20], eax
cmp eax, dword [esp + 0x38]
jl 0x49f996
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebp
jb case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
dec esi
cmp esi, ebp
jae 0x49f9d7
jmp 0x4a8c8d
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x49f9c4
cmp esi, dword [edx + 0x84]
jbe 0x49f9c4
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x49f9c4
mov edi, dword [esp + 0x14]
movzx ecx, byte [edi + 1]
lea ebx, [edi + 3]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x3c], ebx
add edi, ecx
mov dword [esp + 0x14], edi
mov cl, byte [edi]
movzx edx, cl
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x49fa73
movzx eax, byte [eax + 0x4a8f38]
jmp dword [eax*4 + 0x4a8f30]
lea eax, [edx - 0x62]
inc edi
mov dword [esp + 0x14], edi
cmp eax, 8
jae 0x49fa92
mov ecx, eax
and ecx, 1
mov dword [esp + 0x40], ecx
jmp 0x49fa9a
mov dword [esp + 0x48], 1
movsx ebp, byte [eax + 0x751cb8]
movsx eax, byte [eax + 0x751cc4]
mov dword [esp + 0x20], eax
test eax, eax
jne 0x49fb0b
mov dword [esp + 0x20], SysReAllocStringLen
jmp 0x49fb0b
movzx ebp, byte [edi + 1]
xor eax, eax
cmp cl, 0x69
sete al
mov dword [esp + 0x40], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [edi + 3]
sete al
shl ebp, 8
mov dword [esp + 0x48], eax
movzx eax, byte [edi + 2]
or ebp, eax
shl ecx, 8
movzx eax, byte [edi + 4]
or ecx, eax
cmove ecx, dword [esp + 0x58]
add edi, 5
mov dword [esp + 0x20], ecx
mov dword [esp + 0x14], edi
jmp 0x49fb0b
mov dword [esp + 0x20], 1
mov ebp, 1
mov edi, 1
cmp ebp, edi
jl 0x49fc3a
nop dword [eax + eax]
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x49fc1e
cmp ecx, 0xc0
jb 0x49fc1e
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x49fb62
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x49fc1e
test cl, 0x10
jne 0x49fb83
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x49fc1e
test cl, 8
jne 0x49fbad
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x49fc1e
test cl, 4
jne 0x49fbe3
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x49fc1e
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
push edx
push ebx
push ecx
call fcn.004aab50
add esp, 0xc
test eax, eax
je case.0x4a86ae.14
inc edi
cmp edi, ebp
jle 0x49fb20
mov eax, dword [esp + 0x20]
cmp ebp, eax
je 0x49c49d
cmp dword [esp + 0x40], 0
jne 0x4a64a2
mov ebx, esi
cmp ebp, eax
jge 0x49fd63
nop dword [eax + eax]
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x49fdf8
mov ecx, dword [esp + 0x1c]
mov edi, 1
movzx edx, byte [esi]
test ecx, ecx
je 0x49fd44
cmp edx, 0xc0
jb 0x49fd44
test dl, 0x20
jne 0x49fca3
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x49fd3c
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x49fcc2
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x49fd38
and eax, 0x3f
test dl, 8
jne 0x49fce2
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x49fd38
test dl, 4
jne 0x49fd0b
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x49fd38
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
mov ecx, dword [esp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, eax
push ecx
push dword [esp + 0x40]
push edx
call fcn.004aab50
add esp, 0xc
test eax, eax
je 0x49fd63
inc ebp
add esi, edi
cmp ebp, dword [esp + 0x20]
jl 0x49fc60
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
mov eax, dword [esp + 0x188]
mov ebp, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov eax, esi
dec esi
cmp eax, ebx
je case.0x4a86ae.14
cmp dword [esp + 0x1c], 0
je 0x49fdca
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x49fdca
nop word [eax + eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x49fdc0
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x49fda0
jmp 0x4a8c8d
cmp dword [edx + 0x88], 0
je 0x49fd67
cmp esi, dword [edx + 0x84]
jbe 0x49fd67
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x49fd67
test ebp, ebp
je 0x49feb0
mov eax, dword [esp + 0x14]
mov edx, 1
inc eax
mov ecx, edx
mov dword [esp + 0x14], eax
movzx eax, byte [eax]
cmp eax, 0xc0
jb 0x49fe7b
test al, 0x20
jne 0x49fe55
lea edx, [ecx + 1]
jmp 0x49fe79
test al, 0x10
jne 0x49fe60
mov edx, 3
jmp 0x49fe79
test al, 8
jne 0x49fe6b
mov edx, 4
jmp 0x49fe79
mov edx, 5
test al, 4
je 0x49fe79
mov edx, 6
mov ecx, edx
mov ebx, dword [esp + 0x10]
mov edi, dword [ebx + 0x78]
mov eax, edi
sub eax, esi
cmp ecx, eax
jg 0x4a6623
mov edi, dword [esp + 0x14]
mov cl, byte [edi]
dec edx
mov al, byte [esi]
inc edi
inc esi
mov dword [esp + 0x14], edi
cmp cl, al
jne case.0x4a86ae.14
test edx, edx
jg 0x49fe92
mov edx, ebx
jmp 0x49c4a9
mov eax, dword [edx + 0x78]
sub eax, esi
cmp eax, 1
jl 0x4a6637
mov edi, dword [esp + 0x14]
mov al, byte [esi]
inc esi
cmp byte [edi + 1], al
jne case.0x4a86ae.14
add edi, 2
mov dword [esp + 0x14], edi
jmp 0x49c4b0
cmp esi, dword [edx + 0x78]
jae 0x4a6637
mov edi, dword [esp + 0x14]
test ebp, ebp
je 0x4a0189
movzx ebx, byte [edi + 1]
inc edi
mov dword [esp + 0x40], 1
mov edx, ebx
mov dword [esp + 0x14], edi
mov dword [esp + 0x38], ebx
mov dword [esp + 0x20], edx
cmp ebx, 0xc0
jb 0x49ffe9
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x49ff37
mov eax, ebx
mov dword [esp + 0x40], 2
and eax, 0x1f
shl eax, 6
jmp 0x49ffdb
movzx eax, byte [edi + 2]
test bl, 0x10
jne 0x49ff55
and ebx, 0xf
mov dword [esp + 0x40], 3
shl ebx, 6
or ecx, ebx
jmp 0x49ffd5
and eax, 0x3f
test bl, 8
jne 0x49ff78
and ebx, 7
mov dword [esp + 0x40], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x49ffd5
test bl, 4
jne 0x49ffa4
and ebx, 3
mov dword [esp + 0x40], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x49ffd5
and ebx, 1
mov dword [esp + 0x40], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
shl ecx, 6
and eax, 0x3f
mov ebx, ecx
or ebx, eax
mov edx, ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x20], edx
cmp edx, 0x80
jae 0x4a0016
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov edx, dword [eax + 0x38]
mov al, byte [edx + ebx]
cmp al, byte [ecx + edx]
jne case.0x4a86ae.14
mov edx, dword [esp + 0x10]
inc edi
mov dword [esp + 0x14], edi
inc esi
jmp 0x49c4a9
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
cmp ebx, 0xc0
jb 0x4a0136
test bl, 0x20
jne 0x4a0047
movzx ecx, byte [esi]
mov eax, ebx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov ebx, ecx
or ebx, eax
inc esi
jmp 0x4a0136
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a0072
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edx
add esi, 2
shl ebx, 6
or ebx, eax
jmp 0x4a0132
lea edx, [esi + 2]
test bl, 8
jne 0x4a00a6
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x4a012e
lea edi, [esi + 3]
test bl, 4
jne 0x4a00e6
movzx ebx, al
add esi, 4
mov eax, dword [esp + 0x3c]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x4a012e
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x3c]
and ebp, 0x3f
movzx ebx, byte [ebx]
and eax, 1
shl eax, 6
and ebx, 0x3f
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
shl ebp, 6
or ebx, ebp
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x20]
add edi, dword [esp + 0x40]
mov eax, dword [esp + 0x38]
mov dword [esp + 0x14], edi
cmp eax, ebx
je 0x49d110
mov eax, eax
test eax, eax
jns 0x4a0153
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
mov eax, dword [eax*8 + 0x752c34]
add eax, edx
cmp ebx, eax
jne case.0x4a86ae.14
mov edx, dword [esp + 0x10]
jmp 0x49c4a9
mov edx, dword [edx + 0x38]
movzx eax, byte [edi + 1]
movzx ecx, byte [esi]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.0x4a86ae.14
mov edx, dword [esp + 0x10]
inc esi
add edi, 2
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov ebx, dword [esp + 0x14]
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
add ebx, 3
mov edx, ebp
mov dword [esp + 0x14], ebx
mov dword [esp + 0x20], edx
mov ecx, ebx
jmp 0x4a02b5
mov dword [esp + 0x48], 1
mov ebx, dword [esp + 0x14]
xor edx, edx
mov dword [esp + 0x20], edx
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x2c], ebp
cmp cl, 0x28
je 0x4a0206
mov dword [esp + 0x40], edx
cmp cl, 0x35
jne 0x4a020e
mov dword [esp + 0x40], 1
add ebx, 3
mov dword [esp + 0x14], ebx
mov ecx, ebx
jmp 0x4a02b9
mov ebx, dword [esp + 0x14]
xor edx, edx
inc ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x20], edx
mov ecx, ebx
mov dword [esp + 0x14], ebx
jmp 0x4a02b0
mov ebx, dword [esp + 0x14]
mov edx, 1
inc ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x20], edx
mov ecx, ebx
mov dword [esp + 0x14], ebx
jmp 0x4a02b0
mov ebx, dword [esp + 0x14]
xor edx, edx
inc ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x20], edx
mov ecx, ebx
mov dword [esp + 0x14], ebx
lea ebp, [edx + 1]
jmp 0x4a02b5
mov ecx, dword [esp + 0x14]
cmp edi, 0x2e
mov ebx, edi
sbb eax, eax
inc ecx
and eax, 0xfffffff3
mov dword [esp + 0x14], ecx
add eax, 0x2e
sub ebx, eax
mov eax, ebx
and ebx, 1
mov dword [esp + 0x40], ebx
mov ebx, ecx
movsx ebp, byte [eax + 0x751cc4]
movsx edx, byte [eax + 0x751cb8]
mov dword [esp + 0x20], edx
mov dword [esp + 0x2c], ebp
test ebp, ebp
jne 0x4a02b9
mov ebp, closesocket
mov dword [esp + 0x2c], ebp
cmp dword [esp + 0x1c], 0
je 0x4a0797
mov dword [esp + 0x3c], ebx
mov eax, 1
movzx ebx, byte [ebx]
mov ecx, eax
mov dword [esp + 0x38], eax
mov edx, ebx
cmp ebx, 0xc0
jb 0x4a0429
test bl, 0x20
jne 0x4a0310
mov eax, dword [esp + 0x14]
and ebx, 0x1f
shl ebx, 6
mov dword [esp + 0x38], 2
movzx edx, byte [eax + 1]
and edx, 0x3f
or edx, ebx
add eax, 2
mov dword [esp + 0x14], eax
jmp 0x4a0436
test bl, 0x10
jne 0x4a0348
mov ecx, dword [esp + 0x14]
and ebx, 0xf
shl ebx, 6
mov dword [esp + 0x38], 3
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
add ecx, 3
mov dword [esp + 0x14], ecx
jmp 0x4a0436
test bl, 8
jne 0x4a038c
mov ecx, dword [esp + 0x14]
and ebx, 7
shl ebx, 6
mov dword [esp + 0x38], 4
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 4
mov dword [esp + 0x14], ecx
jmp 0x4a0436
test bl, 4
jne 0x4a03da
mov ecx, dword [esp + 0x14]
and ebx, 3
mov eax, 5
shl ebx, 6
mov dword [esp + 0x38], eax
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
or edx, ebx
and eax, 0x3f
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
add ecx, 5
mov dword [esp + 0x14], ecx
jmp 0x4a0436
mov edx, dword [esp + 0x14]
and ebx, eax
shl ebx, 6
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
or ebx, ecx
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, 6
mov dword [esp + 0x38], eax
mov edx, ebx
mov ecx, eax
add dword [esp + 0x14], eax
cmp ecx, 1
jbe 0x4a07a1
cmp edi, 0x2e
jb 0x4a0479
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
mov eax, dword [eax*8 + 0x752c34]
add eax, edx
cmp eax, edx
je 0x4a0479
lea ecx, [esp + 0x160]
push ecx
push eax
call fcn.004aa7e0
add esp, 8
jmp 0x4a047b
xor eax, eax
mov ecx, dword [esp + 0x20]
mov ebx, 1
mov dword [esp + 0x28], eax
cmp ecx, ebx
jl 0x4a0594
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x38]
mov eax, dword [eax + 0x78]
mov ebp, eax
mov dword [esp + 0x34], eax
sub ebp, edi
cmp esi, ebp
ja 0x4a0504
mov edx, dword [esp + 0x3c]
mov ecx, esi
sub edi, 4
jb 0x4a04c3
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4a04c8
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4a04b2
cmp edi, 0xfffffffc
je 0x4a04f5
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a0500
cmp edi, 0xfffffffd
je 0x4a04f5
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a0500
cmp edi, 0xfffffffe
je 0x4a04f5
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4a0500
cmp edi, 0xffffffff
je 0x4a04f5
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4a0500
mov edi, dword [esp + 0x38]
add esi, edi
jmp 0x4a0583
mov eax, dword [esp + 0x34]
mov edi, dword [esp + 0x28]
test edi, edi
jle 0x4a6663
sub eax, edi
cmp esi, eax
ja 0x4a6663
lea edx, [esp + 0x160]
mov ecx, esi
sub edi, 4
jb 0x4a0539
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4a053e
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4a0528
cmp edi, 0xfffffffc
je 0x4a057b
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a6663
cmp edi, 0xfffffffd
je 0x4a057b
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a6663
cmp edi, 0xfffffffe
je 0x4a057b
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4a6663
cmp edi, 0xffffffff
je 0x4a057b
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4a6663
add esi, dword [esp + 0x28]
mov edi, dword [esp + 0x38]
mov ecx, dword [esp + 0x20]
inc ebx
mov eax, dword [esp + 0x34]
cmp ebx, ecx
jle 0x4a04a3
mov ebp, dword [esp + 0x2c]
mov ebx, dword [esp + 0x18]
cmp ecx, ebp
je 0x49c48f
cmp dword [esp + 0x40], 0
jne 0x4a666c
mov ebx, esi
mov dword [esp + 0x34], ebx
cmp ecx, ebp
jge 0x4a06d2
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
mov ebx, ebp
mov eax, dword [esp + 0x38]
sub ebx, eax
nop dword [eax]
cmp esi, ebx
ja 0x4a0633
mov edx, dword [esp + 0x3c]
mov edi, eax
mov ecx, esi
sub edi, 4
jb 0x4a05f6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4a05fb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4a05e1
mov eax, dword [esp + 0x38]
cmp edi, 0xfffffffc
je 0x4a062c
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a0633
cmp edi, 0xfffffffd
je 0x4a0628
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a0633
cmp edi, 0xfffffffe
je 0x4a0628
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4a0633
cmp edi, 0xffffffff
je 0x4a0628
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4a0633
mov eax, dword [esp + 0x38]
add esi, eax
jmp 0x4a06bb
mov edi, dword [esp + 0x28]
test edi, edi
jle 0x4a0760
mov eax, ebp
sub eax, edi
cmp esi, eax
ja 0x4a0760
lea edx, [esp + 0x160]
mov ecx, esi
sub edi, 4
jb 0x4a0671
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4a0676
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4a0660
cmp edi, 0xfffffffc
je 0x4a06b3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a0760
cmp edi, 0xfffffffd
je 0x4a06b3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a0760
cmp edi, 0xfffffffe
je 0x4a06b3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4a0760
cmp edi, 0xffffffff
je 0x4a06b3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4a0760
add esi, dword [esp + 0x28]
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x20]
inc ecx
mov dword [esp + 0x20], ecx
cmp ecx, dword [esp + 0x2c]
jl 0x4a05d0
mov ebx, dword [esp + 0x34]
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebx
je 0x4a5f6d
nop dword [eax]
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x4a0731
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4a0727
mov edx, dword [esp + 0x10]
cmp esi, ebx
jne 0x4a06f0
mov edi, dword [esp + 0x14]
mov ebx, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx]
mov ebp, dword [ecx + 0x4c]
mov dword [esp + 0x1c], ebp
cmp eax, dword [ecx + 4]
jae 0x4a8c85
mov edx, dword [esp + 0x30]
jmp 0x49c451
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a078e
cmp esi, dword [edx + 0x78]
jb 0x4a078e
cmp esi, dword [edx + 0x84]
jbe 0x4a078e
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov ebx, dword [esp + 0x34]
jmp 0x4a06d6
movzx ebx, byte [ebx]
lea eax, [ecx + 1]
mov dword [esp + 0x14], eax
cmp edi, 0x2e
mov ecx, 1
mov edi, dword [esp + 0x20]
jb 0x4a08a9
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x3c]
movzx ebp, byte [eax + ebx]
cmp edi, 1
jl 0x4a07f1
mov edx, dword [ecx + 0x78]
mov ecx, 1
nop dword [eax + eax]
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
cmp ebx, eax
je 0x4a07e7
cmp ebp, eax
jne case.0x4a86ae.14
inc ecx
inc esi
cmp ecx, edi
jle 0x4a07d0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x2c]
cmp edi, edx
je 0x49c49d
cmp dword [esp + 0x40], 0
jne 0x4a67f7
mov dword [esp + 0x3c], esi
cmp edi, edx
jge 0x4a0828
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x4a087e
movzx eax, byte [esi]
cmp ebx, eax
je 0x4a0822
cmp ebp, eax
jne 0x4a0828
inc edi
inc esi
cmp edi, edx
jl 0x4a0813
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
mov ebx, dword [esp + 0x3c]
cmp esi, ebx
je 0x4a0739
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
dec esi
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
cmp esi, ebx
jne 0x4a0843
jmp 0x4a0739
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a082c
cmp esi, dword [edx + 0x84]
jbe 0x4a082c
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a082c
cmp edi, 1
jl 0x4a08ce
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.0x4a86ae.14
inc ecx
cmp ecx, edi
jle 0x4a08b5
cmp edi, ebp
je 0x49c49d
cmp dword [esp + 0x40], 0
jne 0x4a688e
mov edx, dword [esp + 0x2c]
mov ebp, esi
cmp edi, edx
jge 0x4a0903
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4a095c
movzx eax, byte [esi]
cmp ebx, eax
jne 0x4a0903
inc edi
inc esi
cmp edi, edx
jl 0x4a08f2
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
mov ebx, dword [esp + 0x18]
cmp esi, ebp
je 0x4a5f71
nop
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
dec esi
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
cmp esi, ebp
jne 0x4a0920
mov edi, dword [esp + 0x14]
jmp 0x4a0741
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a0907
cmp esi, dword [edx + 0x84]
jbe 0x4a0907
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a0907
cmp esi, dword [edx + 0x78]
jae 0x4a6637
mov eax, dword [esp + 0x14]
test ebp, ebp
je 0x4a0c30
movzx edx, byte [eax + 1]
lea ecx, [eax + 2]
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], ecx
cmp edx, 0xc0
jb 0x4a0a94
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x4a09d0
and edx, 0x1f
shl edx, 6
or edx, eax
inc ecx
jmp 0x4a0a8c
test dl, 0x10
jne 0x4a09f1
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 2
jmp 0x4a0a8c
test dl, 8
jne 0x4a0a1b
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 3
jmp 0x4a0a8c
test dl, 4
jne 0x4a0a51
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 4
jmp 0x4a0a8c
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 5
mov dword [esp + 0x20], edx
mov dword [esp + 0x14], ecx
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
cmp ebx, 0xc0
jb 0x4a0bb0
mov al, byte [esi]
test bl, 0x20
jne 0x4a0ac3
and ebx, 0x1f
movzx eax, al
and eax, 0x3f
shl ebx, 6
inc esi
or ebx, eax
jmp 0x4a0bb0
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a0aec
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edx
add esi, 2
shl ebx, 6
or ebx, eax
jmp 0x4a0bac
lea edx, [esi + 2]
test bl, 8
jne 0x4a0b20
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x4a0ba8
lea edi, [esi + 3]
test bl, 4
jne 0x4a0b60
movzx ebx, al
add esi, 4
mov eax, dword [esp + 0x3c]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x4a0ba8
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x3c]
and ebp, 0x3f
movzx ebx, byte [ebx]
and eax, 1
shl eax, 6
and ebx, 0x3f
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
shl ebp, 6
or ebx, ebp
mov ebp, dword [esp + 0x1c]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x20]
cmp edi, 0x1f
jne 0x4a0bca
cmp edx, ebx
je case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
jmp 0x49c4a9
cmp edx, 0x7f
jbe 0x4a0c08
mov eax, edx
test eax, eax
jns 0x4a0bd8
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, edx
shl ecx, 7
and eax, reloc.ace32.dll_Ordinal_127
jns 0x4a0bf3
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
mov eax, dword [eax*8 + 0x752c34]
add eax, edx
jmp 0x4a0c13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x3c]
movzx eax, byte [eax + edx]
cmp edx, ebx
je case.0x4a86ae.14
cmp eax, ebx
je case.0x4a86ae.14
mov edx, dword [esp + 0x10]
mov edi, dword [esp + 0x14]
jmp 0x49c4a9
movzx edx, byte [esi]
inc esi
movzx ecx, byte [eax + 1]
cmp ecx, edx
je case.0x4a86ae.14
cmp edi, 0x20
jne 0x4a0c58
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.0x4a86ae.14
mov edi, dword [esp + 0x14]
mov edx, dword [esp + 0x10]
add edi, 2
mov dword [esp + 0x14], edi
jmp 0x49c4b0
mov ebx, dword [esp + 0x14]
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
add ebx, 3
mov edi, ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x2c], edi
mov ecx, ebx
jmp 0x4a0d8d
mov ebx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x2c], edi
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
mov dword [esp + 0x20], ebp
cmp cl, 0x42
je 0x4a0cba
mov dword [esp + 0x40], edi
cmp cl, 0x4f
jne 0x4a0cc2
mov dword [esp + 0x40], 1
add ebx, 3
mov ecx, ebx
jmp 0x4a0d8d
mov ebx, dword [esp + 0x14]
xor edi, edi
inc ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x2c], edi
mov ecx, ebx
jmp 0x4a0d85
mov ebx, dword [esp + 0x14]
mov edi, 1
inc ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x2c], edi
mov ecx, ebx
jmp 0x4a0d85
mov ebx, dword [esp + 0x14]
xor edi, edi
inc ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x2c], edi
mov ecx, ebx
mov dword [esp + 0x20], 1
jmp 0x4a0d8d
mov ebx, dword [esp + 0x14]
xor edi, edi
mov dword [esp + 0x48], 1
mov dword [esp + 0x2c], edi
movzx ebp, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ebp, 8
or ebp, eax
add ebx, 3
mov dword [esp + 0x20], ebp
mov ecx, ebx
jmp 0x4a0d8d
mov ebx, dword [esp + 0x14]
cmp edi, 0x48
mov edx, edi
sbb eax, eax
inc ebx
and eax, 0xfffffff3
mov ecx, ebx
add eax, 0x48
sub edx, eax
mov eax, edx
and edx, 1
mov dword [esp + 0x40], edx
movsx edi, byte [eax + 0x751cb8]
movsx eax, byte [eax + 0x751cc4]
mov dword [esp + 0x2c], edi
mov dword [esp + 0x20], eax
test eax, eax
jne 0x4a0d8d
mov dword [esp + 0x20], SysReAllocStringLen
movzx ebx, byte [ebx]
lea ebp, [ecx + 1]
mov eax, dword [esp + 0x1c]
mov edx, ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x14], ebp
test eax, eax
je 0x4a0e88
cmp ebx, 0xc0
jb 0x4a0e88
movzx ecx, byte [ebp]
and ecx, 0x3f
test bl, 0x20
jne 0x4a0dd3
mov eax, ebx
mov ebx, ecx
and eax, 0x1f
shl eax, 6
or ebx, eax
inc ebp
jmp 0x4a0e7a
movzx eax, byte [ebp + 1]
and eax, 0x3f
test bl, 0x10
jne 0x4a0df4
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add ebp, 2
jmp 0x4a0e7a
test bl, 8
jne 0x4a0e17
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ebp, 3
jmp 0x4a0e7a
test bl, 4
jne 0x4a0e46
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ebp + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ebp, 4
jmp 0x4a0e7a
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [ebp + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ebp + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ebp + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ebp, 5
mov eax, dword [esp + 0x1c]
mov edx, ebx
mov dword [esp + 0x38], ebx
mov dword [esp + 0x14], ebp
cmp dword [esp + 0x28], 0x48
jb 0x4a12f6
test eax, eax
je 0x4a0ec9
cmp edx, 0x7f
jbe 0x4a0ec9
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
mov ecx, dword [esp + 0x10]
mov ebp, dword [eax*8 + 0x752c34]
add ebp, edx
jmp 0x4a0ed4
mov ecx, dword [esp + 0x10]
mov eax, dword [ecx + 0x3c]
movzx ebp, byte [eax + ebx]
cmp dword [esp + 0x1c], 0
mov edx, 1
mov dword [esp + 0x28], ebp
mov dword [esp + 0x34], edx
je 0x4a102d
cmp edi, edx
jl 0x4a1056
mov eax, dword [esp + 0x38]
nop dword [eax + eax]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
cmp ebx, 0xc0
jb 0x4a100a
test bl, 0x20
jne 0x4a0f36
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x4a1006
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test bl, 0x10
jne 0x4a0f5c
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x4a0ffd
lea edx, [esi + 2]
test bl, 8
jne 0x4a0f85
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4a0ff9
lea edi, [esi + 3]
test bl, 4
jne 0x4a0fb6
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4a0ff5
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
shl ebp, 6
mov dword [esp + 0x3c], ebp
mov ebx, ebp
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
or ebx, eax
mov eax, dword [esp + 0x38]
cmp eax, ebx
je case.0x4a86ae.14
mov ebp, dword [esp + 0x28]
cmp ebp, ebx
je case.0x4a86ae.14
inc edx
mov dword [esp + 0x34], edx
cmp edx, edi
jle 0x4a0f00
jmp 0x4a1056
cmp edi, 1
jl 0x4a1056
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x4a620f
movzx eax, byte [esi]
cmp ebx, eax
je case.0x4a86ae.14
cmp ebp, eax
je case.0x4a86ae.14
inc edx
inc esi
cmp edx, edi
jle 0x4a1035
mov eax, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
cmp edi, eax
je 0x49c48f
cmp dword [esp + 0x40], 0
jne 0x4a6944
cmp dword [esp + 0x1c], 0
mov ebx, esi
je 0x4a124c
cmp edi, eax
jge 0x4a11b6
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x38]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x4a121e
movzx edx, byte [esi]
mov eax, 1
cmp edx, 0xc0
jb 0x4a1199
test dl, 0x20
jne 0x4a10cb
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4a1199
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4a10f5
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x4a1195
test dl, 8
jne 0x4a1121
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x4a1195
test dl, 4
jne 0x4a1159
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x4a1195
and edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
mov ecx, dword [esp + 0x38]
cmp ecx, edx
je 0x4a11b6
cmp ebp, edx
je 0x4a11b6
add esi, eax
mov eax, dword [esp + 0x2c]
inc eax
mov dword [esp + 0x2c], eax
cmp eax, dword [esp + 0x20]
jl 0x4a1091
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebx
je 0x4a0739
nop dword [eax]
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x4a1211
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4a1207
mov edx, dword [esp + 0x10]
cmp esi, ebx
jne 0x4a11d0
jmp 0x4a0739
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a11ba
cmp esi, dword [edx + 0x84]
jbe 0x4a11ba
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a11ba
cmp edi, eax
jge 0x4a1277
mov eax, dword [esp + 0x10]
mov edx, dword [esp + 0x38]
mov ecx, dword [eax + 0x78]
nop dword [eax + eax]
cmp esi, ecx
jae 0x4a12cb
movzx eax, byte [esi]
cmp edx, eax
je 0x4a1277
cmp ebp, eax
je 0x4a1277
inc edi
inc esi
cmp edi, dword [esp + 0x20]
jl 0x4a1260
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebx
je 0x4a0739
nop
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
dec esi
cmp esi, ebx
jne 0x4a1290
jmp 0x4a0739
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a127b
cmp esi, dword [edx + 0x84]
jbe 0x4a127b
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a127b
mov edx, 1
mov dword [esp + 0x34], edx
test eax, eax
je 0x4a1457
mov ebp, dword [esp + 0x38]
cmp edi, edx
jl 0x4a1488
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
cmp ebx, 0xc0
jb 0x4a1440
test bl, 0x20
jne 0x4a134d
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x4a143c
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a1378
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edx
add esi, 2
shl ebx, 6
or ebx, eax
jmp 0x4a1438
lea edx, [esi + 2]
test bl, 8
jne 0x4a13ac
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x4a1434
lea edi, [esi + 3]
test bl, 4
jne 0x4a13ec
movzx ebx, al
add esi, 4
mov eax, dword [esp + 0x3c]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x4a1434
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x3c]
and ebp, 0x3f
movzx ebx, byte [ebx]
and eax, 1
shl eax, 6
and ebx, 0x3f
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
shl ebp, 6
or ebx, ebp
mov ebp, dword [esp + 0x38]
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x10]
cmp ebp, ebx
je case.0x4a86ae.14
inc edx
mov dword [esp + 0x34], edx
cmp edx, edi
jle 0x4a1317
jmp 0x4a1484
cmp edi, 1
jl 0x4a14fa
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.0x4a86ae.14
inc edx
cmp edx, edi
jle 0x4a1467
mov ebp, dword [esp + 0x38]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x20]
mov ebx, dword [esp + 0x18]
cmp edi, ecx
je 0x49c48f
cmp dword [esp + 0x40], 0
jne 0x4a6b5e
mov ebx, esi
test eax, eax
je 0x4a167c
cmp edi, ecx
jge 0x4a15e5
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4a164e
movzx edx, byte [esi]
mov eax, 1
cmp edx, 0xc0
jb 0x4a15ce
test dl, 0x20
jne 0x4a1500
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4a15ce
mov ebp, dword [esp + 0x38]
jmp 0x4a1488
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4a152a
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x4a15ca
test dl, 8
jne 0x4a1556
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x4a15ca
test dl, 4
jne 0x4a158e
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x4a15ca
and edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
mov ecx, dword [esp + 0x20]
cmp ebp, edx
je 0x4a15e5
add esi, eax
mov eax, dword [esp + 0x2c]
inc eax
mov dword [esp + 0x2c], eax
cmp eax, ecx
jl 0x4a14c0
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebx
je 0x4a0739
nop dword [eax]
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x4a1641
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4a1637
mov edx, dword [esp + 0x10]
cmp esi, ebx
jne 0x4a1600
jmp 0x4a0739
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a15e9
cmp esi, dword [edx + 0x84]
jbe 0x4a15e9
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a15e9
mov edx, dword [esp + 0x10]
cmp edi, ecx
jge 0x4a16c1
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4a169c
movzx eax, byte [esi]
cmp ebp, eax
je 0x4a16c1
inc edi
inc esi
cmp edi, dword [esp + 0x20]
jl 0x4a1687
jmp 0x4a16c1
cmp dword [edx + 0x88], 0
je 0x4a16c1
cmp esi, dword [edx + 0x84]
jbe 0x4a16c1
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebx
je 0x4a0739
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
dec esi
cmp esi, ebx
jne 0x4a16d4
jmp 0x4a0739
mov edi, dword [esp + 0x14]
mov dword [esp + 0x40], 1
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov ebx, ecx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], ebx
mov ecx, edi
jmp 0x4a1826
mov edi, dword [esp + 0x14]
xor ebx, ebx
mov dword [esp + 0x28], 0
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
cmp cl, 0x5c
mov dword [esp + 0x2c], edx
sete bl
add edi, 3
mov dword [esp + 0x40], ebx
mov ecx, edi
xor ebx, ebx
jmp 0x4a1826
mov edi, dword [esp + 0x14]
xor ebx, ebx
inc edi
mov dword [esp + 0x48], 1
mov dword [esp + 0x28], ebx
mov ecx, edi
jmp 0x4a181e
mov edi, dword [esp + 0x14]
mov ebx, 1
inc edi
mov dword [esp + 0x48], 1
mov dword [esp + 0x28], ebx
mov ecx, edi
jmp 0x4a181e
mov edi, dword [esp + 0x14]
xor ebx, ebx
inc edi
mov dword [esp + 0x48], 1
mov dword [esp + 0x28], ebx
mov ecx, edi
mov dword [esp + 0x2c], 1
jmp 0x4a1826
mov edi, dword [esp + 0x14]
xor ebx, ebx
mov dword [esp + 0x48], 1
mov dword [esp + 0x28], ebx
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [esp + 0x2c], ecx
mov ecx, edi
jmp 0x4a1826
lea ebx, [edi - 0x55]
mov edi, dword [esp + 0x14]
mov eax, ebx
inc edi
and ebx, 1
mov ecx, edi
mov dword [esp + 0x40], ebx
movsx ebx, byte [eax + 0x751cb8]
movsx eax, byte [eax + 0x751cc4]
mov dword [esp + 0x28], ebx
mov dword [esp + 0x2c], eax
test eax, eax
jne 0x4a1826
mov dword [esp + 0x2c], SysReAllocStringLen
movzx ebp, byte [edi]
lea edx, [ecx + 1]
mov dword [esp + 0x20], ebp
mov dword [esp + 0x14], edx
cmp ebp, 0x10
je 0x4a1843
cmp ebp, 0xf
je 0x4a1843
or eax, 0xffffffff
jmp 0x4a1863
mov cl, byte [edx]
xor eax, eax
cmp ebp, 0xf
sete al
mov dword [esp + 0x44], eax
lea eax, [edx + 1]
movzx edx, byte [eax]
inc eax
mov dword [esp + 0x14], eax
mov dword [esp + 0x54], edx
movzx eax, cl
mov dword [esp + 0x3c], eax
test ebx, ebx
jle 0x4a18e3
test eax, eax
js 0x4a2656
cmp eax, 0xa
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a8f44]
cmp dword [esp + 0x44], 0
jne case.0x4a86ae.14
mov ecx, 1
cmp ebx, ecx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 0x1c]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
test edi, edi
je 0x4a18de
cmp eax, 0xc0
jb 0x4a18de
test al, 0x20
jne 0x4a18c0
inc esi
jmp 0x4a18de
test al, 0x10
jne 0x4a18c9
add esi, 2
jmp 0x4a18de
test al, 8
jne 0x4a18d2
add esi, 3
jmp 0x4a18de
test al, 4
jne 0x4a18db
add esi, 4
jmp 0x4a18de
add esi, 5
inc ecx
cmp ecx, ebx
jle 0x4a18a2
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov ecx, 1
mov dword [esp + 0x34], ecx
cmp ebx, ecx
jl 0x4a18e3
nop dword [eax]
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a1a0d
cmp ebx, 0xc0
jb 0x4a1a0d
mov al, byte [esi]
test bl, 0x20
jne 0x4a1941
inc esi
movzx eax, al
and ebp, 0x1f
jmp 0x4a1a05
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a1964
mov ebp, ebx
movzx eax, al
and ebp, 0xf
and eax, 0x3f
shl ebp, 6
add esi, 2
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a1a01
lea edx, [esi + 2]
test bl, 8
jne 0x4a198f
movzx eax, al
mov ebp, ebx
and ebp, 7
and eax, 0x3f
shl ebp, 6
add esi, 3
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a1a01
lea edi, [esi + 3]
test bl, 4
jne 0x4a19c5
movzx eax, al
mov ebp, ebx
and ebp, 3
and eax, 0x3f
shl ebp, 6
add esi, 4
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a1a01
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x38]
and ebp, 0x3f
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
and ebp, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp eax, 9
je 0x4a1a44
cmp eax, 5
je 0x4a1a44
cmp eax, 8
je 0x4a1a44
xor eax, eax
jmp 0x4a1a49
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc ecx
mov dword [esp + 0x34], ecx
cmp ecx, ebx
jle 0x4a1900
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
mov dword [esp + 0x34], edx
cmp ebx, edx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a1b8d
cmp ebx, 0xc0
jb 0x4a1b8d
mov al, byte [esi]
test bl, 0x20
jne 0x4a1ac3
inc esi
movzx eax, al
and ebp, 0x1f
jmp 0x4a1b85
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a1ae6
mov ebp, ebx
movzx eax, al
and ebp, 0xf
and eax, 0x3f
shl ebp, 6
add esi, 2
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a1b85
lea edx, [esi + 2]
test bl, 8
jne 0x4a1b0f
movzx ebp, al
and ebx, 7
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a1b81
lea edi, [esi + 3]
test bl, 4
jne 0x4a1b45
movzx eax, al
mov ebp, ebx
and ebp, 3
and eax, 0x3f
shl ebp, 6
add esi, 4
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a1b81
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x38]
and ebp, 0x3f
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov ebx, dword [esp + 0x54]
mov eax, ebp
shr eax, 7
and ebp, 0x7f
xor ecx, ecx
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp dword [eax*4 + 0x752600], ebx
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc edx
mov dword [esp + 0x34], edx
cmp edx, ebx
jle 0x4a1a82
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
mov dword [esp + 0x34], edx
cmp ebx, edx
jl 0x4a18e3
nop word [eax + eax]
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a1cf8
cmp ebx, 0xc0
jb 0x4a1cf8
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x4a1c41
inc esi
and ebp, 0x1f
jmp 0x4a1cf0
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a1c61
mov ebp, ebx
add esi, 2
and ebp, 0xf
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a1cf0
lea edx, [esi + 2]
test bl, 8
jne 0x4a1c86
mov ebp, ebx
add esi, 3
and ebp, 7
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a1cec
lea edi, [esi + 3]
test bl, 4
jne 0x4a1cb6
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a1cec
mov ebp, dword [esp + 0x38]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
xor ecx, ecx
shr eax, 7
and ebp, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp eax, dword [esp + 0x54]
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc edx
mov dword [esp + 0x34], edx
cmp edx, ebx
jle 0x4a1c00
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
mov dword [esp + 0x34], edx
cmp ebx, edx
jl 0x4a18e3
nop
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a1e58
cmp ebx, 0xc0
jb 0x4a1e58
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x4a1da1
inc esi
and ebp, 0x1f
jmp 0x4a1e50
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a1dc1
mov ebp, ebx
add esi, 2
and ebp, 0xf
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a1e50
lea edx, [esi + 2]
test bl, 8
jne 0x4a1de6
mov ebp, ebx
add esi, 3
and ebp, 7
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a1e4c
lea edi, [esi + 3]
test bl, 4
jne 0x4a1e16
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a1e4c
mov ebp, dword [esp + 0x38]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
xor ecx, ecx
shr eax, 7
and ebp, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c30]
cmp eax, dword [esp + 0x54]
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc edx
mov dword [esp + 0x34], edx
cmp edx, ebx
jle 0x4a1d60
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov ecx, 1
mov dword [esp + 0x34], ecx
cmp ebx, ecx
jl 0x4a18e3
nop
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a1fb8
cmp ebx, 0xc0
jb 0x4a1fb8
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x4a1f01
inc esi
and ebp, 0x1f
jmp 0x4a1fb0
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a1f21
mov ebp, ebx
add esi, 2
and ebp, 0xf
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a1fac
lea edx, [esi + 2]
test bl, 8
jne 0x4a1f46
mov ebp, ebx
add esi, 3
and ebp, 7
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a1fac
lea edi, [esi + 3]
test bl, 4
jne 0x4a1f76
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a1fac
mov ebp, dword [esp + 0x38]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
and ebp, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x4a1ff1
cmp eax, 3
je 0x4a1ff1
xor eax, eax
jmp 0x4a1ff6
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc ecx
mov dword [esp + 0x34], ecx
cmp ecx, ebx
jle 0x4a1ec0
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edi, 1
cmp ebx, edi
jl 0x4a18e3
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x28]
mov ebx, dword [eax + 0x78]
cmp esi, ebx
jae 0x4a620f
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov edx, ecx
je 0x4a2132
cmp ecx, 0xc0
jb 0x4a2132
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a2074
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a2130
test cl, 0x10
jne 0x4a2095
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a2130
test cl, 8
jne 0x4a20bf
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a2130
test cl, 4
jne 0x4a20f5
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a2130
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edx, ecx
cmp ecx, 0x180e
ja 0x4a2171
je case.0x4a218d.8192
cmp ecx, 0x85
ja 0x4a2161
je case.0x4a218d.8192
cmp ecx, 9
jb case.0x4a218d.8203
cmp ecx, 0xd
jbe case.0x4a218d.8192
cmp ecx, 0x20
jmp 0x4a21a2
cmp ecx, 0xa0
je case.0x4a218d.8192
cmp ecx, 0x1680
jmp 0x4a21a2
cmp ecx, 0x202f
ja 0x4a2194
je case.0x4a218d.8192
add ecx, 0xffffe000
cmp ecx, 0x29
ja case.0x4a218d.8203
movzx eax, byte [ecx + 0x4a8f78]
jmp dword [eax*4 + 0x4a8f70]
cmp ecx, 0x205f
je case.0x4a218d.8192
cmp ecx, 0x3000
je case.0x4a218d.8192
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp dword [eax*4 + 0x752600], 6
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
jmp 0x4a21ec
cmp dword [esp + 0x44], 0
jne case.0x4a86ae.14
inc edi
cmp edi, ebp
jle 0x4a2036
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
mov dword [esp + 0x34], edx
cmp ebx, edx
jl 0x4a18e3
nop word [eax + eax]
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a2317
cmp ebx, 0xc0
jb 0x4a2317
mov al, byte [esi]
movzx ebp, al
and ebp, 0x3f
test bl, 0x20
jne 0x4a2269
and ebx, 0x1f
inc esi
shl ebx, 6
or ebp, ebx
jmp 0x4a2317
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a2284
movzx eax, byte [ecx]
and ebx, 0xf
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x4a230f
lea edx, [esi + 2]
test bl, 8
jne 0x4a22a7
movzx eax, byte [ecx]
and ebx, 7
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a230b
lea edi, [esi + 3]
test bl, 4
jne 0x4a22d5
movzx eax, byte [ecx]
and ebx, 3
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 4
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a230b
mov eax, dword [esp + 0x38]
lea ebx, [esi + 4]
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
shr eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, ebp
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x4a2357
cmp eax, 3
je 0x4a2357
cmp ebp, 0x5f
je 0x4a2357
xor eax, eax
jmp 0x4a235c
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc edx
mov dword [esp + 0x34], edx
cmp edx, ebx
jle 0x4a2220
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov ebx, 1
cmp dword [esp + 0x28], ebx
jl 0x4a21f5
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, ebp
jae 0x4a620f
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov edi, edx
je 0x4a248b
cmp edx, 0xc0
jb 0x4a248b
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x4a23e2
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
inc esi
jmp 0x4a2489
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x4a2403
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x4a2489
test dl, 8
jne 0x4a2426
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x4a2489
test dl, 4
jne 0x4a2455
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x4a2489
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov edi, edx
mov eax, dword [esp + 0x54]
mov ecx, dword [eax*4 + 0x752af0]
lea eax, [eax*4 + 0x752af0]
cmp edi, ecx
jb 0x4a24ae
lea eax, [eax + 4]
cmp edx, ecx
je 0x4a24d5
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4a24a1
cmp dword [esp + 0x44], 0
je case.0x4a86ae.14
inc ebx
cmp ebx, dword [esp + 0x28]
jle 0x4a23a0
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
cmp dword [esp + 0x44], 0
jne case.0x4a86ae.14
jmp 0x4a24b9
mov ecx, 1
mov dword [esp + 0x34], ecx
cmp ebx, ecx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x38], ebx
je 0x4a25fe
cmp ebx, 0xc0
jb 0x4a25fe
test bl, 0x20
jne 0x4a253a
movzx eax, byte [esi]
and ebp, 0x1f
shl ebp, 6
and eax, 0x3f
or ebp, eax
inc esi
jmp 0x4a25fe
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a255d
movzx ebp, al
and ebx, 0xf
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x4a25f2
lea edx, [esi + 2]
test bl, 8
jne 0x4a2586
movzx ebp, al
and ebx, 7
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a25f2
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test bl, 4
jne 0x4a25bc
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a25f2
mov ebp, dword [esp + 0x38]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x34]
and eax, 0x3f
shl ebp, 6
or ebp, eax
cmp ebp, 0x24
je 0x4a2629
cmp ebp, 0x40
je 0x4a2629
cmp ebp, 0x60
je 0x4a2629
cmp ebp, 0xa0
jb 0x4a261d
cmp ebp, 0xd7ff
jbe 0x4a2629
cmp ebp, 0xe000
jae 0x4a2629
xor eax, eax
jmp 0x4a262e
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov ebx, dword [esp + 0x28]
inc ecx
mov dword [esp + 0x34], ecx
cmp ecx, ebx
jle 0x4a24f3
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
cmp ebp, 0x16
jne 0x4a2920
mov edx, dword [esp + 0x10]
mov dword [esp + 0x34], 1
cmp ebx, 1
jl 0x4a32c0
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx ebx, byte [esi]
inc esi
mov ecx, dword [esp + 0x1c]
mov ebp, ebx
mov dword [esp + 0x38], ebx
test ecx, ecx
je 0x4a278b
cmp ebx, 0xc0
jb 0x4a278b
mov al, byte [esi]
test bl, 0x20
jne 0x4a26ba
and ebx, 0x1f
movzx ebp, al
and ebp, 0x3f
shl ebx, 6
inc esi
or ebp, ebx
jmp 0x4a278b
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a26db
movzx ebp, al
and ebx, 0xf
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x4a277f
lea edx, [esi + 2]
test bl, 8
jne 0x4a2709
movzx eax, al
mov ebp, ebx
and ebp, 7
and eax, 0x3f
shl ebp, 6
add esi, 3
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a277b
lea edi, [esi + 3]
test bl, 4
jne 0x4a273f
movzx eax, al
mov ebp, ebx
and ebp, 3
and eax, 0x3f
shl ebp, 6
add esi, 4
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a277b
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x38]
and ebp, 0x3f
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
mov edi, esi
shr eax, 7
and ebp, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
mov ebp, dword [edx + 0x78]
movzx eax, word [eax*2 + 0x7561c8]
movzx ebx, byte [eax*8 + 0x752c32]
cmp edi, ebp
jae 0x4a28d9
nop dword [eax]
movzx edx, byte [esi]
mov edi, 1
test ecx, ecx
je 0x4a2892
cmp edx, 0xc0
jb 0x4a2892
test dl, 0x20
jne 0x4a27f2
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4a288a
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a2814
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4a288a
and eax, 0x3f
test dl, 8
jne 0x4a2834
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a288a
test dl, 4
jne 0x4a285d
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a288a
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx ecx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x50]
shl eax, cl
test dword [ebx*4 + 0x752678], eax
je 0x4a28d5
add esi, edi
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
cmp esi, ebp
jb 0x4a27c0
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a2902
cmp esi, ebp
jb 0x4a2902
cmp esi, dword [edx + 0x84]
jbe 0x4a2902
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov eax, dword [esp + 0x34]
mov ebx, dword [esp + 0x28]
inc eax
mov dword [esp + 0x34], eax
cmp eax, ebx
jle 0x4a2674
mov ebp, dword [esp + 0x20]
jmp 0x4a32c0
mov ecx, dword [esp + 0x1c]
lea eax, [ebp - 6]
test ecx, ecx
je 0x4a3463
cmp eax, 0xf
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a8fa4]
mov ebp, dword [esp + 0x28]
mov ebx, 1
cmp ebp, ebx
jl 0x4a3864
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x4a6637
mov ecx, dword [edx + 0x18]
lea edi, [edx + 0x1c]
test ecx, ecx
je 0x4a2987
push dword [esp + 0x1c]
push edi
push eax
push ecx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne case.0x4a86ae.14
mov edx, dword [esp + 0x10]
jmp 0x4a29ab
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x4a29ab
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a29ab
cmp ecx, 1
je case.0x4a86ae.14
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je case.0x4a86ae.14
cmp dword [edx + 0x88], 0
je 0x4a29e2
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x4a29e2
cmp dword [edx + 0x18], 0
jne 0x4a29e2
cmp dword [edi], 2
jne 0x4a29e2
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a29e2
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4a2a01
mov ecx, esi
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a2a01
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a29f0
inc ebx
cmp ebx, ebp
jle 0x4a2950
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edi, 1
cmp ebx, edi
jl 0x4a385b
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x28]
mov ebx, dword [ecx + 0x78]
cmp esi, ebx
jae 0x4a6918
mov edx, dword [ecx + 0x78]
inc esi
cmp esi, edx
jae 0x4a2a5e
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a2a56
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a2a45
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x10]
inc edi
cmp edi, eax
jle 0x4a2a33
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x78]
sub eax, ebx
cmp esi, eax
ja case.0x4a86ae.14
add esi, ebx
jmp 0x4a32c4
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
inc esi
mov eax, esi
cmp ecx, 0xc0
jb 0x4a2b91
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a2ad3
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a2b8f
test cl, 0x10
jne 0x4a2af4
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a2b8f
test cl, 8
jne 0x4a2b1e
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a2b8f
test cl, 4
jne 0x4a2b54
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a2b8f
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, esi
cmp ecx, 0xd
ja 0x4a2bc4
je 0x4a2ba2
cmp ecx, 0xa
je 0x4a2bae
lea eax, [ecx - 0xb]
jmp 0x4a2bd2
cmp eax, edi
jae 0x4a2bae
cmp byte [esi], 0xa
jne 0x4a2bae
lea esi, [eax + 1]
mov eax, dword [esp + 0x10]
inc edx
cmp edx, ebx
jle 0x4a2aa0
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
cmp ecx, 0x85
je 0x4a2bdb
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x4a86ae.14
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x68], 0
jne case.0x4a86ae.14
jmp 0x4a2bb2
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop
cmp esi, edi
jae 0x4a620f
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x4a2ced
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a2c31
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a2ced
test cl, 0x10
jne 0x4a2c52
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a2ced
test cl, 8
jne 0x4a2c7c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a2ced
test cl, 4
jne 0x4a2cb2
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a2ced
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x180e
ja 0x4a2d1f
je case.0x4a86ae.14
cmp ecx, 0xa0
ja 0x4a2d17
je case.0x4a86ae.14
cmp ecx, 9
je case.0x4a86ae.14
cmp ecx, 0x20
jmp 0x4a2d4f
cmp ecx, 0x1680
jmp 0x4a2d4f
cmp ecx, 0x205f
ja 0x4a2d49
je case.0x4a86ae.14
cmp ecx, 0x2000
jb 0x4a2d55
cmp ecx, 0x200a
jbe case.0x4a86ae.14
cmp ecx, 0x202f
jmp 0x4a2d4f
cmp ecx, 0x3000
je case.0x4a86ae.14
inc edx
cmp edx, ebx
jle 0x4a2c00
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax + eax]
cmp esi, edi
jae 0x4a620f
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x4a2e6d
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a2db1
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a2e6d
test cl, 0x10
jne 0x4a2dd2
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a2e6d
test cl, 8
jne 0x4a2dfc
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a2e6d
test cl, 4
jne 0x4a2e32
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a2e6d
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x180e
ja 0x4a2e93
je 0x4a2ec5
cmp ecx, 0xa0
ja 0x4a2e8b
je 0x4a2ec5
cmp ecx, 9
je 0x4a2ec5
cmp ecx, 0x20
jmp 0x4a2ebf
cmp ecx, 0x1680
jmp 0x4a2ebf
cmp ecx, 0x205f
ja 0x4a2eb9
je 0x4a2ec5
cmp ecx, 0x2000
jb case.0x4a86ae.14
cmp ecx, 0x200a
jbe 0x4a2ec5
cmp ecx, 0x202f
jmp 0x4a2ebf
cmp ecx, 0x3000
jne case.0x4a86ae.14
inc edx
cmp edx, ebx
jle 0x4a2d80
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edi, 1
cmp ebx, edi
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov ebx, dword [eax + 0x78]
nop dword [eax + eax]
cmp esi, ebx
jae 0x4a620f
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x4a2fce
test dl, 0x20
jne 0x4a2f21
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x4a2fce
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4a2f48
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x4a2fce
test dl, 8
jne 0x4a2f6b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x4a2fce
test dl, 4
jne 0x4a2f9a
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x4a2fce
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
cmp edx, 0x85
ja 0x4a2fe6
je case.0x4a86ae.14
cmp edx, 0xa
jb 0x4a2ffa
cmp edx, 0xd
jmp 0x4a2ff4
cmp edx, 0x2028
jb 0x4a2ffa
cmp edx, 0x2029
jbe case.0x4a86ae.14
inc edi
cmp edi, dword [esp + 0x28]
jle 0x4a2ef0
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x4a620f
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x4a3113
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a3057
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a3113
test cl, 0x10
jne 0x4a3078
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a3113
test cl, 8
jne 0x4a30a2
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a3113
test cl, 4
jne 0x4a30d8
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a3113
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x85
ja 0x4a3125
je 0x4a3134
lea eax, [ecx - 0xa]
cmp eax, 3
jmp 0x4a312e
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x4a86ae.14
inc edx
cmp edx, ebx
jle 0x4a3026
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x4a620f
movzx ecx, byte [esi]
inc esi
mov eax, ecx
cmp ecx, 0xc0
jb 0x4a3251
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a3193
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a324f
test cl, 0x10
jne 0x4a31b4
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a324f
test cl, 8
jne 0x4a31de
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a324f
test cl, 4
jne 0x4a3214
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a324f
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0x80
jae 0x4a3269
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.0x4a86ae.14
inc edx
cmp edx, ebx
jle 0x4a3160
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.0x4a86ae.14
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3290
mov edx, eax
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x2c]
cmp ebx, edi
je 0x49c4a1
cmp dword [esp + 0x40], 0
mov eax, dword [esp + 0x3c]
jne 0x4a6d76
mov ebp, esi
mov dword [esp + 0x40], ebp
test eax, eax
js 0x4a45fb
cmp eax, 0xa
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a8fe4]
mov edx, dword [esp + 0x10]
mov edi, 1
cmp ebx, edi
jl 0x4a32c4
mov ebx, dword [edx + 0x78]
nop dword [eax]
cmp esi, ebx
jae 0x4a6637
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x4a3330
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jne case.0x4a86ae.14
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4a3351
mov ecx, esi
nop word [eax + eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a3351
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a3340
mov edx, dword [esp + 0x10]
inc edi
cmp edi, dword [esp + 0x28]
jle 0x4a3310
mov ebx, dword [esp + 0x28]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.0x4a86ae.14
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3380
jmp 0x4a32be
mov edx, dword [esp + 0x10]
mov edi, 1
cmp ebx, edi
jl 0x4a32c4
mov ebx, dword [edx + 0x78]
cmp esi, ebx
jae 0x4a6637
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x4a33e7
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
jne case.0x4a86ae.14
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4a3402
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a3402
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a33f1
mov edx, dword [esp + 0x10]
inc edi
cmp edi, dword [esp + 0x28]
jle 0x4a33c7
mov ebx, dword [esp + 0x28]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.0x4a86ae.14
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3430
jmp 0x4a32be
cmp eax, 0xf
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a9010]
mov edx, dword [esp + 0x28]
mov ebx, 1
cmp edx, ebx
jl 0x4a3857
mov edi, dword [esp + 0x10]
nop dword [eax + eax]
mov eax, dword [edi + 0x78]
cmp esi, eax
jae 0x4a87db
mov ecx, dword [edi + 0x18]
add edi, 0x1c
test ecx, ecx
je 0x4a34c7
mov eax, dword [esp + 0x10]
push 0
push edi
push dword [eax + 0x78]
push ecx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne case.0x4a86ae.14
mov edx, dword [esp + 0x28]
jmp 0x4a34f7
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x4a34f7
mov ebp, dword [esp + 0x10]
mov al, byte [esi]
cmp al, byte [ebp + 0x34]
mov ebp, dword [esp + 0x20]
jne 0x4a34f7
cmp ecx, 1
je case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je 0x4a3540
mov ecx, dword [esp + 0x10]
lea eax, [esi + 1]
cmp eax, dword [ecx + 0x78]
jb 0x4a353c
mov eax, ecx
cmp dword [eax + 0x18], 0
jne 0x4a3540
cmp dword [edi], 2
jne 0x4a3540
mov al, byte [esi]
mov edi, ecx
cmp al, byte [edi + 0x34]
jne 0x4a3542
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x4a8808
jmp 0x4a3542
mov edi, ecx
jmp 0x4a3542
mov edi, eax
inc ebx
inc esi
cmp ebx, edx
jle 0x4a3490
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0x78]
sub eax, ebx
cmp esi, eax
ja 0x4a6637
add esi, ebx
jmp 0x4a32c4
mov ecx, 1
cmp ebx, ecx
jl 0x4a18e3
mov edi, dword [esp + 0x10]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x4a87db
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x4a86ae.14
movzx eax, byte [eax + 0x4a9060]
jmp dword [eax*4 + 0x4a9050]
cmp esi, edx
jae case.0x4a35a6.10
cmp byte [esi], 0xa
jne case.0x4a35a6.10
inc esi
jmp case.0x4a35a6.10
cmp dword [edi + 0x68], 0
jne case.0x4a86ae.14
inc ecx
cmp ecx, ebx
jle 0x4a3585
mov edx, edi
jmp 0x4a32c0
mov ecx, 1
cmp ebx, ecx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
cmp eax, 9
je case.0x4a86ae.14
cmp eax, 0x20
je case.0x4a86ae.14
cmp eax, 0xa0
je case.0x4a86ae.14
inc ecx
cmp ecx, ebx
jle 0x4a35e3
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov ecx, 1
cmp ebx, ecx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
nop
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
cmp eax, 9
je 0x4a3651
cmp eax, 0x20
je 0x4a3651
cmp eax, 0xa0
jne case.0x4a86ae.14
inc ecx
cmp ecx, ebx
jle 0x4a3630
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov ecx, 1
cmp ebx, ecx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jb 0x4a3698
cmp eax, 0xd
jbe case.0x4a86ae.14
cmp eax, 0x85
je case.0x4a86ae.14
inc ecx
cmp ecx, ebx
jle 0x4a3673
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov ecx, 1
cmp ebx, ecx
jl 0x4a18e3
mov eax, dword [esp + 0x10]
mov edx, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x4a620f
movzx eax, byte [esi]
inc esi
cmp eax, 0xa
jb case.0x4a86ae.14
cmp eax, 0xd
jbe 0x4a36e5
cmp eax, 0x85
jne case.0x4a86ae.14
inc ecx
cmp ecx, ebx
jle 0x4a36c0
mov edx, dword [esp + 0x10]
jmp 0x4a32c0
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3707
jmp 0x4a32be
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3742
jmp 0x4a32be
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3780
jmp 0x4a32be
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop dword [eax + eax]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a37c0
jmp 0x4a32be
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a37f7
jmp 0x4a32be
mov edx, 1
cmp ebx, edx
jl 0x4a385b
mov eax, dword [esp + 0x10]
mov edi, dword [eax + 0x78]
nop
cmp esi, edi
jae 0x4a6213
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.0x4a86ae.14
mov eax, dword [esp + 0x10]
inc edx
inc esi
cmp edx, ebx
jle 0x4a3830
jmp 0x4a32be
mov ebx, dword [esp + 0x28]
mov edx, dword [esp + 0x10]
jmp 0x4a32c4
mov ebx, dword [esp + 0x28]
mov ebp, dword [esp + 0x20]
mov edx, dword [esp + 0x10]
jmp 0x4a32c4
cmp ebx, edi
jge 0x4a440d
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
mov eax, 1
movzx ecx, byte [esi]
je 0x4a38cd
cmp ecx, 0xc0
jb 0x4a38cd
test cl, 0x20
jne 0x4a38a7
mov eax, 2
jmp 0x4a38cd
test cl, 0x10
jne 0x4a38b3
mov eax, 3
jmp 0x4a38cd
test cl, 8
jne 0x4a38bf
mov eax, 4
jmp 0x4a38cd
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esp + 0x44], 0
jne 0x4a4409
inc ebx
add esi, eax
cmp ebx, edi
jl 0x4a3880
jmp 0x4a4409
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a440d
cmp esi, dword [edx + 0x84]
jbe 0x4a440d
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a440d
cmp ebx, edi
jge 0x4a440d
mov edi, dword [edx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
movzx eax, byte [esi]
mov ecx, eax
je 0x4a3a0d
cmp eax, 0xc0
jb 0x4a3a0d
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4a3964
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x4a3a0b
test al, 0x10
jne 0x4a397e
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x4a3a05
test al, 8
jne 0x4a39a1
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x4a3a05
test al, 4
jne 0x4a39d0
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x4a3a05
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp eax, 9
je 0x4a3a44
cmp eax, 5
je 0x4a3a44
cmp eax, 8
je 0x4a3a44
xor eax, eax
jmp 0x4a3a49
mov eax, 1
cmp eax, dword [esp + 0x44]
je 0x4a4409
inc ebx
add esi, edx
cmp ebx, dword [esp + 0x2c]
jl 0x4a3925
jmp 0x4a4409
cmp ebx, edi
jge 0x4a440d
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x4a3b5c
cmp eax, 0xc0
jb 0x4a3b5c
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4a3ab3
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x4a3b5a
test al, 0x10
jne 0x4a3acd
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x4a3b54
test al, 8
jne 0x4a3af0
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x4a3b54
test al, 4
jne 0x4a3b1f
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x4a3b54
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov ebp, dword [esp + 0x54]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp dword [eax*4 + 0x752600], ebp
mov ebp, dword [esp + 0x40]
sete cl
cmp ecx, dword [esp + 0x44]
je 0x4a4409
inc ebx
add esi, edx
cmp ebx, dword [esp + 0x2c]
jl 0x4a3a70
jmp 0x4a4409
cmp ebx, edi
jge 0x4a440d
mov edi, dword [edx + 0x78]
nop dword [eax + eax]
cmp esi, edi
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x4a3cac
cmp eax, 0xc0
jb 0x4a3cac
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4a3c03
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x4a3caa
test al, 0x10
jne 0x4a3c1d
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x4a3ca4
test al, 8
jne 0x4a3c40
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x4a3ca4
test al, 4
jne 0x4a3c6f
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x4a3ca4
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp eax, dword [esp + 0x54]
sete cl
cmp ecx, dword [esp + 0x44]
je 0x4a4409
inc ebx
add esi, edx
cmp ebx, dword [esp + 0x2c]
jl 0x4a3bc0
jmp 0x4a4409
cmp ebx, edi
jge 0x4a440d
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x4a3dec
cmp eax, 0xc0
jb 0x4a3dec
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4a3d43
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x4a3dea
test al, 0x10
jne 0x4a3d5d
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x4a3de4
test al, 8
jne 0x4a3d80
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x4a3de4
test al, 4
jne 0x4a3daf
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x4a3de4
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c30]
cmp eax, dword [esp + 0x54]
sete cl
cmp ecx, dword [esp + 0x44]
je 0x4a4409
inc ebx
add esi, edx
cmp ebx, dword [esp + 0x2c]
jl 0x4a3d00
jmp 0x4a4409
cmp ebx, edi
jge 0x4a440d
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x4a3f2c
cmp eax, 0xc0
jb 0x4a3f2c
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4a3e83
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x4a3f2a
test al, 0x10
jne 0x4a3e9d
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x4a3f24
test al, 8
jne 0x4a3ec0
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x4a3f24
test al, 4
jne 0x4a3eef
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x4a3f24
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x4a3f65
cmp eax, 3
je 0x4a3f65
xor eax, eax
jmp 0x4a3f6a
mov eax, 1
cmp eax, dword [esp + 0x44]
je 0x4a4409
inc ebx
add esi, edx
cmp ebx, dword [esp + 0x2c]
jl 0x4a3e40
jmp 0x4a4409
cmp ebx, edi
jge 0x4a440d
mov ebx, dword [edx + 0x78]
mov edi, 1
cmp esi, ebx
jae 0x4a4146
cmp dword [esp + 0x1c], 0
movzx edx, byte [esi]
mov ecx, edx
je 0x4a4072
cmp edx, 0xc0
jb 0x4a4072
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a3fda
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x4a406e
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a3ff2
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4a4068
and eax, 0x3f
test dl, 8
jne 0x4a4012
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a4068
test dl, 4
jne 0x4a403b
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a4068
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
cmp edx, 0x180e
ja 0x4a40b1
je case.0x4a40cd.8192
cmp edx, 0x85
ja 0x4a40a1
je case.0x4a40cd.8192
cmp edx, 9
jb case.0x4a40cd.8203
cmp edx, 0xd
jbe case.0x4a40cd.8192
cmp edx, 0x20
jmp 0x4a40e2
cmp edx, 0xa0
je case.0x4a40cd.8192
cmp edx, 0x1680
jmp 0x4a40e2
cmp edx, 0x202f
ja 0x4a40d4
je case.0x4a40cd.8192
add edx, 0xffffe000
cmp edx, 0x29
ja case.0x4a40cd.8203
movzx eax, byte [edx + 0x4a90e4]
jmp dword [eax*4 + 0x4a90dc]
cmp edx, 0x205f
je case.0x4a40cd.8192
cmp edx, 0x3000
je case.0x4a40cd.8192
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp dword [eax*4 + 0x752600], 6
sete cl
cmp ecx, dword [esp + 0x44]
je 0x4a4409
jmp 0x4a412c
cmp dword [esp + 0x44], 0
jne 0x4a4409
mov eax, dword [esp + 0x28]
add esi, edi
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x2c]
jl 0x4a3f91
jmp 0x4a4409
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a440d
cmp esi, dword [edx + 0x84]
jbe 0x4a440d
mov dword [edx + 0x64], edi
cmp dword [edx + 0x88], edi
jg 0x4a8808
jmp 0x4a440d
cmp ebx, edi
jge 0x4a440d
mov ebx, dword [edx + 0x78]
mov edi, 1
cmp esi, ebx
jae 0x4a4146
movzx eax, byte [esi]
mov edx, eax
test ecx, ecx
je 0x4a4267
cmp eax, 0xc0
jb 0x4a4267
movzx edx, byte [esi + 1]
and edx, 0x3f
test al, 0x20
jne 0x4a41be
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x4a4265
test al, 0x10
jne 0x4a41d8
and eax, 0xf
mov edi, 3
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
jmp 0x4a425f
test al, 8
jne 0x4a41fb
and eax, 7
mov edi, 4
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a425f
test al, 4
jne 0x4a422a
and eax, 3
mov edi, 5
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a425f
and eax, 1
mov edi, 6
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x4a42a7
cmp eax, 3
je 0x4a42a7
cmp edx, 0x5f
je 0x4a42a7
xor eax, eax
jmp 0x4a42ac
mov eax, 1
cmp eax, dword [esp + 0x44]
je 0x4a4409
mov eax, dword [esp + 0x28]
add esi, edi
mov ecx, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x2c]
jl 0x4a4182
jmp 0x4a4409
cmp ebx, edi
jge 0x4a440d
mov ebp, dword [edx + 0x78]
nop
mov ebx, 1
cmp esi, ebp
jae 0x4a448b
movzx edx, byte [esi]
mov edi, edx
test ecx, ecx
je 0x4a43be
cmp edx, 0xc0
jb 0x4a43be
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a4326
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x4a43ba
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a433e
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4a43b4
and eax, 0x3f
test dl, 8
jne 0x4a435e
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a43b4
test dl, 4
jne 0x4a4387
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a43b4
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov edi, edx
mov eax, dword [esp + 0x54]
mov ecx, dword [eax*4 + 0x752af0]
lea eax, [eax*4 + 0x752af0]
cmp edi, ecx
jb 0x4a43e5
lea eax, [eax + 4]
cmp edx, ecx
je 0x4a447b
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4a43d4
cmp dword [esp + 0x44], 0
je 0x4a4405
mov eax, dword [esp + 0x28]
add esi, ebx
mov ecx, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x2c]
jl 0x4a42e0
mov ebp, dword [esp + 0x40]
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
mov ebx, dword [esp + 0x18]
cmp esi, ebp
je 0x4a5f71
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
dec esi
cmp dword [esp + 0x1c], eax
je 0x4a446a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a446a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4a4460
mov edx, dword [esp + 0x10]
cmp esi, ebp
jne 0x4a4424
mov edi, dword [esp + 0x14]
jmp 0x4a0741
cmp dword [esp + 0x44], 0
jne 0x4a4405
jmp 0x4a43ec
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a44af
cmp esi, dword [edx + 0x84]
jbe 0x4a44af
mov dword [edx + 0x64], ebx
cmp dword [edx + 0x88], ebx
jg 0x4a8808
mov ebp, dword [esp + 0x40]
jmp 0x4a440d
cmp ebx, edi
jge 0x4a440d
mov edi, dword [edx + 0x78]
mov edx, 1
cmp esi, edi
jae 0x4a38e4
cmp dword [esp + 0x1c], 0
movzx eax, byte [esi]
mov ecx, eax
je 0x4a45af
cmp eax, 0xc0
jb 0x4a45af
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4a4506
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x4a45ad
test al, 0x10
jne 0x4a4520
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x4a45a7
test al, 8
jne 0x4a4543
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x4a45a7
test al, 4
jne 0x4a4572
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x4a45a7
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
cmp ecx, 0x24
je 0x4a45da
cmp ecx, 0x40
je 0x4a45da
cmp ecx, 0x60
je 0x4a45da
cmp ecx, 0xa0
jb 0x4a45ce
cmp ecx, 0xd7ff
jbe 0x4a45da
cmp ecx, 0xe000
jae 0x4a45da
xor eax, eax
jmp 0x4a45df
mov eax, 1
cmp eax, dword [esp + 0x44]
je 0x4a4409
inc ebx
add esi, edx
cmp ebx, dword [esp + 0x2c]
jl 0x4a44c3
jmp 0x4a4409
mov eax, dword [esp + 0x20]
cmp eax, 0x16
jne 0x4a4926
cmp ebx, edi
jge 0x4a48d1
cmp esi, dword [edx + 0x78]
jae 0x4a48a8
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
mov ebp, ebx
test ecx, ecx
je 0x4a471a
cmp ebx, 0xc0
jb 0x4a471a
mov al, byte [esi]
test bl, 0x20
jne 0x4a464a
inc esi
movzx eax, al
and ebp, 0x1f
jmp 0x4a4712
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a466d
mov ebp, ebx
movzx eax, al
and ebp, 0xf
and eax, 0x3f
shl ebp, 6
add esi, 2
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a470e
lea edx, [esi + 2]
test bl, 8
jne 0x4a4698
movzx eax, al
mov ebp, ebx
and ebp, 7
and eax, 0x3f
shl ebp, 6
add esi, 3
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a470a
lea edi, [esi + 3]
test bl, 4
jne 0x4a46ce
movzx eax, al
mov ebp, ebx
and ebp, 3
and eax, 0x3f
shl ebp, 6
add esi, 4
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a470a
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x3c]
and ebp, 0x3f
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x1c]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
mov edi, esi
shr eax, 7
and ebp, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
mov ebp, dword [edx + 0x78]
movzx eax, word [eax*2 + 0x7561c8]
movzx ebx, byte [eax*8 + 0x752c32]
cmp edi, ebp
jae 0x4a4866
nop dword [eax + eax]
movzx edx, byte [esi]
mov edi, 1
test ecx, ecx
je 0x4a481f
cmp edx, 0xc0
jb 0x4a481f
test dl, 0x20
jne 0x4a4782
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4a4817
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a47a1
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4a4817
and eax, 0x3f
test dl, 8
jne 0x4a47c1
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a4817
test dl, 4
jne 0x4a47ea
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a4817
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx ecx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x50]
shl eax, cl
test dword [ebx*4 + 0x752678], eax
je 0x4a4862
add esi, edi
mov ebx, ecx
mov ecx, dword [esp + 0x1c]
cmp esi, ebp
jb 0x4a4750
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a488f
cmp esi, ebp
jb 0x4a488f
cmp esi, dword [edx + 0x84]
jbe 0x4a488f
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x1c]
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x2c]
jl 0x4a4610
jmp 0x4a48cd
cmp dword [edx + 0x88], 0
je 0x4a48cd
cmp esi, dword [edx + 0x84]
jbe 0x4a48cd
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov ebp, dword [esp + 0x40]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebp
je 0x4a0739
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ecx, dword [esp + 0x1c]
dec esi
test ecx, ecx
jne 0x4a5be8
movzx edx, byte [esi]
jmp 0x4a5cab
add eax, 0xfffffffa
test ecx, ecx
je 0x4a56c6
cmp eax, 0xf
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a9110]
cmp edi, 0x7fffffff
jge 0x4a4a15
cmp ebx, edi
jge 0x4a4b4a
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x4a4b25
mov ecx, dword [edx + 0x18]
lea edi, [edx + 0x1c]
test ecx, ecx
je 0x4a4988
push dword [esp + 0x1c]
push edi
push eax
push ecx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne 0x4a4b4a
mov edx, dword [esp + 0x10]
jmp 0x4a49ac
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x4a49ac
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a49ac
cmp ecx, 1
je 0x4a4b4a
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je 0x4a4b4a
cmp dword [edx + 0x88], 0
je 0x4a49e3
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x4a49e3
cmp dword [edx + 0x18], 0
jne 0x4a49e3
cmp dword [edi], 2
jne 0x4a49e3
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a49e3
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4a4a01
mov ecx, esi
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a4a01
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a49f0
inc ebx
cmp ebx, dword [esp + 0x2c]
jge 0x4a4b4a
mov edx, dword [esp + 0x10]
jmp 0x4a4955
cmp ebx, edi
jge 0x4a4b4a
nop dword [eax]
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x4a4b25
mov ecx, dword [edx + 0x18]
lea edi, [edx + 0x1c]
test ecx, ecx
je 0x4a4a53
push dword [esp + 0x1c]
push edi
push eax
push ecx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne 0x4a4b4a
mov edx, dword [esp + 0x10]
jmp 0x4a4a77
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x4a4a77
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a4a77
cmp ecx, 1
je 0x4a4b4a
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je 0x4a4b4a
cmp dword [edx + 0x88], 0
je 0x4a4aae
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x4a4aae
cmp dword [edx + 0x18], 0
jne 0x4a4aae
cmp dword [edi], 2
jne 0x4a4aae
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a4aae
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4a4ac9
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a4ac9
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a4ab8
inc ebx
cmp ebx, dword [esp + 0x2c]
jge 0x4a4b4a
mov edx, dword [esp + 0x10]
jmp 0x4a4a20
cmp edi, 0x7fffffff
jge 0x4a4b22
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
mov eax, dword [esp + 0x2c]
cmp esi, edi
jae 0x4a4b25
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4a4b15
mov ecx, esi
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a4b11
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4a4b00
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x10]
inc ebx
cmp ebx, eax
jl 0x4a4af0
mov ecx, edx
jmp 0x4a4b4e
mov esi, dword [edx + 0x78]
cmp dword [edx + 0x88], 0
je 0x4a4b4a
cmp esi, dword [edx + 0x84]
jbe 0x4a4b4a
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov ecx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c49d
mov ebx, dword [esp + 0x18]
cmp esi, ebp
je 0x4a5f71
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
jne 0x4a4bac
nop dword [eax + eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
je 0x4a4ba0
cmp dword [esp + 0x20], 0x11
jne 0x4a4bc5
cmp ecx, ebp
jbe 0x4a4bc5
cmp byte [esi], 0xa
jne 0x4a4bc5
cmp byte [esi - 1], 0xd
jne 0x4a4bc5
lea esi, [ecx - 1]
mov ecx, dword [esp + 0x10]
cmp esi, ebp
jne 0x4a4b65
mov edi, dword [esp + 0x14]
jmp 0x4a0741
mov ecx, dword [edx + 0x78]
sub edi, ebx
mov eax, ecx
sub eax, esi
cmp edi, eax
jbe 0x4a4bfd
cmp dword [edx + 0x88], 0
mov esi, ecx
je 0x4a4b4a
cmp ecx, dword [edx + 0x84]
jmp 0x4a4b34
add esi, edi
jmp 0x4a4b4a
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
nop
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov eax, 1
cmp edx, 0xc0
jb 0x4a4d14
test dl, 0x20
jne 0x4a4c4a
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4a4d14
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4a4c74
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x4a4d14
test dl, 8
jne 0x4a4ca0
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x4a4d14
test dl, 4
jne 0x4a4cd8
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x4a4d14
and edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
cmp edx, 0xd
jne 0x4a4d2a
inc esi
cmp esi, edi
jae 0x4a4b4a
cmp byte [esi], 0xa
jne 0x4a4d65
inc esi
jmp 0x4a4d65
cmp edx, 0xa
je 0x4a4d63
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x68], 0
jne 0x4a4b4e
cmp edx, 0xb
je 0x4a4d63
cmp edx, 0xc
je 0x4a4d63
cmp edx, 0x85
je 0x4a4d63
cmp edx, 0x2028
je 0x4a4d63
cmp edx, 0x2029
jne 0x4a4b4e
add esi, eax
inc ebx
cmp ebx, dword [esp + 0x2c]
jl 0x4a4c10
jmp 0x4a4b4a
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a4d9e
cmp esi, dword [edx + 0x84]
jbe 0x4a4d9e
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
mov ecx, edx
jmp 0x4a4b4e
cmp ebx, edi
jge 0x4a4b4a
mov ebx, dword [edx + 0x78]
mov edi, 1
cmp esi, ebx
jae 0x4a4f07
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4a4e82
test dl, 0x20
jne 0x4a4de2
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4a4e7a
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a4e04
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4a4e7a
and eax, 0x3f
test dl, 8
jne 0x4a4e24
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a4e7a
test dl, 4
jne 0x4a4e4d
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a4e7a
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x180e
ja 0x4a4ea8
je 0x4a4ed6
cmp edx, 0xa0
ja 0x4a4ea0
je 0x4a4ed6
cmp edx, 9
je 0x4a4ed6
cmp edx, 0x20
jmp 0x4a4ed0
cmp edx, 0x1680
jmp 0x4a4ed0
cmp edx, 0x205f
ja 0x4a4eca
je 0x4a4ed6
cmp edx, 0x2000
jb 0x4a4ed2
cmp edx, 0x200a
jbe 0x4a4ed6
cmp edx, 0x202f
jmp 0x4a4ed0
cmp edx, 0x3000
je 0x4a4ed6
xor ecx, ecx
jmp 0x4a4edb
mov ecx, 1
xor eax, eax
cmp dword [esp + 0x20], 0x12
sete al
cmp ecx, eax
je 0x4a4b4a
mov eax, dword [esp + 0x28]
add esi, edi
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x2c]
jl 0x4a4db0
jmp 0x4a4b4a
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a4d9e
cmp esi, dword [edx + 0x84]
jbe 0x4a4d9e
mov dword [edx + 0x64], edi
cmp dword [edx + 0x88], edi
jg 0x4a8808
mov ecx, edx
jmp 0x4a4b4e
cmp ebx, edi
jge 0x4a4b4a
mov ebx, dword [edx + 0x78]
cmp esi, ebx
jae 0x4a4d75
movzx edx, byte [esi]
mov edi, 1
cmp edx, 0xc0
jb 0x4a5017
test dl, 0x20
jne 0x4a4f77
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4a500f
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a4f99
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4a500f
and eax, 0x3f
test dl, 8
jne 0x4a4fb9
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a500f
test dl, 4
jne 0x4a4fe2
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a500f
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x85
ja 0x4a5059
je 0x4a5064
cmp edx, 0xa
jb 0x4a502b
cmp edx, 0xd
jbe 0x4a5064
xor ecx, ecx
xor eax, eax
cmp dword [esp + 0x20], 0x14
sete al
cmp ecx, eax
je 0x4a4b4a
mov eax, dword [esp + 0x28]
add esi, edi
inc eax
mov dword [esp + 0x28], eax
cmp eax, dword [esp + 0x2c]
jl 0x4a4f45
jmp 0x4a4b4a
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x4a502b
mov ecx, 1
jmp 0x4a502d
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4a514e
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a50b2
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4a514a
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a50cd
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4a5144
and eax, 0x3f
test dl, 8
jne 0x4a50ed
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a5144
test dl, 4
jne 0x4a5116
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a5144
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4a5166
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jne 0x4a4b4a
inc ebx
add esi, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4a5076
jmp 0x4a4b4a
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4a525b
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a51bf
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4a5257
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a51da
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4a5251
and eax, 0x3f
test dl, 8
jne 0x4a51fa
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a5251
test dl, 4
jne 0x4a5223
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a5251
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4a4b4a
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
je 0x4a4b4a
inc ebx
add esi, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4a5183
jmp 0x4a4b4a
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4a536c
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a52d0
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4a5368
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a52eb
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4a5362
and eax, 0x3f
test dl, 8
jne 0x4a530b
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a5362
test dl, 4
jne 0x4a5334
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a5362
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4a5384
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jne 0x4a4b4a
inc ebx
add esi, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4a5294
jmp 0x4a4b4a
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4a5479
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a53dd
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4a5475
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a53f8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4a546f
and eax, 0x3f
test dl, 8
jne 0x4a5418
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a546f
test dl, 4
jne 0x4a5441
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a546f
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4a4b4a
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
je 0x4a4b4a
inc ebx
add esi, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4a53a1
jmp 0x4a4b4a
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4a558a
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a54ee
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4a5586
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a5509
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4a5580
and eax, 0x3f
test dl, 8
jne 0x4a5529
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a5580
test dl, 4
jne 0x4a5552
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a5580
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4a55a2
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jne 0x4a4b4a
inc ebx
add esi, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4a54b2
jmp 0x4a4b4a
cmp ebx, edi
jge 0x4a4b4a
mov edi, dword [edx + 0x78]
nop
cmp esi, edi
jae 0x4a4d75
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4a5698
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4a55fc
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4a5694
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4a5617
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4a568e
and eax, 0x3f
test dl, 8
jne 0x4a5637
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a568e
test dl, 4
jne 0x4a5660
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a568e
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4a4b4a
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
je 0x4a4b4a
inc ebx
add esi, ecx
cmp ebx, dword [esp + 0x2c]
jl 0x4a55c0
jmp 0x4a4b4a
cmp eax, 0xf
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a9150]
cmp ebx, edi
jge 0x4a5a29
nop
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x4a591b
mov ecx, dword [edx + 0x18]
lea edi, [edx + 0x1c]
test ecx, ecx
je 0x4a5711
push 0
push edi
push eax
push ecx
push esi
call fcn.004aa500
mov edx, dword [esp + 0x24]
add esp, 0x14
test eax, eax
jne 0x4a5a29
jmp 0x4a5735
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x4a5735
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a5735
cmp ecx, 1
je 0x4a5a29
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je 0x4a5a29
cmp dword [edx + 0x88], 0
je 0x4a576c
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x4a576c
cmp dword [edx + 0x18], 0
jne 0x4a576c
cmp dword [edi], 2
jne 0x4a576c
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4a576c
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
inc ebx
inc esi
cmp ebx, dword [esp + 0x2c]
jl 0x4a56e0
jmp 0x4a5a29
mov ecx, dword [edx + 0x78]
sub edi, ebx
mov eax, ecx
sub eax, esi
cmp edi, eax
jbe 0x4a57be
cmp dword [edx + 0x88], 0
mov esi, ecx
je 0x4a5a29
cmp ecx, dword [edx + 0x84]
jbe 0x4a5a29
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a5a29
add esi, edi
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4a591b
mov al, byte [esi]
cmp al, 0xd
jne 0x4a57ee
inc esi
cmp esi, ecx
jae 0x4a5a29
cmp byte [esi], 0xa
jne 0x4a580d
jmp 0x4a580c
cmp al, 0xa
je 0x4a580c
cmp dword [edx + 0x68], 0
jne 0x4a5a29
cmp al, 0xb
je 0x4a580c
cmp al, 0xc
je 0x4a580c
cmp al, 0x85
jne 0x4a5a29
inc esi
inc ebx
cmp ebx, edi
jl 0x4a57d0
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4a591b
mov al, byte [esi]
cmp al, 9
je 0x4a5a29
cmp al, 0x20
je 0x4a5a29
cmp al, 0xa0
je 0x4a5a29
inc ebx
inc esi
cmp ebx, edi
jl 0x4a5822
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov ecx, dword [edx + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x4a591b
mov al, byte [esi]
cmp al, 9
je 0x4a587a
cmp al, 0x20
je 0x4a587a
cmp al, 0xa0
jne 0x4a5a29
inc ebx
inc esi
cmp ebx, edi
jl 0x4a5860
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4a591b
mov al, byte [esi]
cmp al, 0xa
jb 0x4a58ae
cmp al, 0xd
jbe 0x4a5a29
cmp al, 0x85
je 0x4a5a29
inc ebx
inc esi
cmp ebx, edi
jl 0x4a5890
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4a591b
mov al, byte [esi]
cmp al, 0xa
jb 0x4a5a29
cmp al, 0xd
jbe 0x4a58de
cmp al, 0x85
jne 0x4a5a29
inc ebx
inc esi
cmp ebx, edi
jl 0x4a58c4
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4a5917
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne 0x4a5a25
inc ebx
inc esi
cmp ebx, edi
jl 0x4a58f4
jmp 0x4a5a25
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x88], 0
je 0x4a5a29
cmp esi, dword [edx + 0x84]
jbe 0x4a5a29
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jg 0x4a8808
jmp 0x4a5a29
cmp ebx, edi
jge 0x4a5a29
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4a5917
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
je 0x4a5a25
inc ebx
inc esi
cmp ebx, edi
jl 0x4a5958
jmp 0x4a5a25
cmp ebx, edi
jge 0x4a5a29
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4a5917
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne 0x4a5a25
inc ebx
inc esi
cmp ebx, edi
jl 0x4a5986
jmp 0x4a5a25
cmp ebx, edi
jge 0x4a5a29
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4a5917
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
je 0x4a5a25
inc ebx
inc esi
cmp ebx, edi
jl 0x4a59b4
jmp 0x4a5a25
cmp ebx, edi
jge 0x4a5a29
mov edx, dword [edx + 0x78]
nop dword [eax + eax]
cmp esi, edx
jae 0x4a5917
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne 0x4a5a25
inc ebx
inc esi
cmp ebx, edi
jl 0x4a59e0
jmp 0x4a5a25
cmp ebx, edi
jge 0x4a5a29
mov edx, dword [edx + 0x78]
cmp esi, edx
jae 0x4a5917
mov eax, dword [esp + 0x10]
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je 0x4a5a25
inc ebx
inc esi
cmp ebx, edi
jl 0x4a5a07
mov edx, dword [esp + 0x10]
cmp dword [esp + 0x48], 0
jne 0x49c4a1
cmp esi, ebp
je 0x4a0739
mov ebx, dword [esp + 0x18]
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
dec esi
cmp dword [esp + 0x20], 0x11
jne 0x4a5a82
cmp esi, ebp
jbe 0x4a5a84
cmp byte [esi], 0xa
jne 0x4a5a82
cmp byte [esi - 1], 0xd
jne 0x4a5a82
dec esi
cmp esi, ebp
mov edx, dword [esp + 0x10]
jne 0x4a5a40
mov edi, dword [esp + 0x14]
jmp 0x4a0741
mov eax, dword [esp + 0x188]
inc eax
cmp byte [edi], 0x7a
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push ebx
push edx
jne 0x4a5ad1
lea eax, [edi + 3]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ebp, dword [esp + 0x3c]
mov edi, ebp
mov dword [esp + 0x14], edi
jmp 0x4a0741
push dword [esp + 0x50]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov edi, dword [esp + 0x14]
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x4a0741
cmp dword [esp + 0x28], 0x8c
jne 0x4a073d
mov ecx, dword [esp + 0x10]
mov dword [ecx + 0x98], 2
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push ebp
push dword [esp + 0x34]
push edi
push esi
call fcn.0049c360
add esp, 0x1c
jmp 0x4a8c8d
mov al, byte [edi]
cmp al, 0x7b
je 0x4a609e
mov ebx, dword [esp + 0x18]
cmp al, 0x7a
mov eax, dword [esp + 0x188]
jne 0x4a5b90
inc eax
push eax
push dword [esp + 0x34]
lea eax, [edi + 3]
push edx
push ebx
push dword [esp + 0x34]
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov al, byte [ebp]
cmp al, 0x81
je 0x4a6052
cmp al, 0x88
jae 0x4a602d
mov edi, ebp
mov dword [esp + 0x14], edi
jmp 0x4a0741
inc eax
push eax
push dword [esp + 0x34]
push edx
push ebx
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1b
jne 0x4a5bc2
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0xb4], ebp
jne 0x4a8908
jmp 0x4a5bce
test edi, edi
jne 0x4a8908
mov ecx, dword [esp + 0x10]
cmp byte [ebp], 0x81
je 0x4a606b
mov edi, dword [esp + 0x14]
add edi, 3
mov dword [esp + 0x14], edi
jmp 0x4a0741
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4a5bfa
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4a5bf0
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4a5cab
test dl, 0x20
jne 0x4a5c1a
movzx eax, byte [esi + 1]
and edx, 0x1f
jmp 0x4a5ca3
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a5c37
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x4a5c9f
and eax, 0x3f
test dl, 8
jne 0x4a5c52
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a5c9f
test dl, 4
jne 0x4a5c76
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a5c9f
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
mov ecx, dword [esp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx ebx, byte [eax*8 + 0x752c32]
nop
cmp esi, ebp
je 0x4a0739
lea edi, [esi - 1]
test ecx, ecx
jne 0x4a5ce7
movzx edx, byte [edi]
jmp 0x4a5da7
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x4a5cfa
nop
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x4a5cf0
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4a5da7
test dl, 0x20
jne 0x4a5d1a
movzx eax, byte [edi + 1]
and edx, 0x1f
jmp 0x4a5d9f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a5d37
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x4a5d9f
and eax, 0x3f
test dl, 8
jne 0x4a5d52
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4a5d9f
test dl, 4
jne 0x4a5d76
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 0x4a5d9f
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov ecx, ebx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx edx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x50]
shl eax, cl
test dword [edx*4 + 0x752678], eax
je 0x4a5de9
mov ecx, dword [esp + 0x1c]
mov esi, edi
mov ebx, edx
jmp 0x4a5cd0
mov edx, dword [esp + 0x10]
jmp 0x4a48e4
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x10]
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov dword [esp + 0x34], edx
lea ebx, [edx + edx]
mov dword [esp + 0x4c], ebx
cmp ebx, dword [ecx + 0x14]
jge 0x4a5e60
mov ecx, dword [ecx + 0xc]
mov eax, dword [ecx + ebx*4]
mov dword [esp + 0x3c], eax
mov eax, dword [ecx + ebx*4 + 4]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [esp + 0x10]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [esp + 0x58], eax
mov eax, esi
sub eax, dword [edx + 0x74]
mov ebx, dword [edx + 0x90]
mov ebp, dword [edx + 0xac]
mov dword [ecx], eax
jmp 0x4a8816
mov ecx, dword [esp + 0x10]
nop dword [eax + eax]
cmp edi, 0x88
jae 0x4a5e97
cmp edi, 0x81
je 0x4a5e97
cmp dword [ecx + 0x6c], 0
mov edi, dword [esp + 0x14]
jne 0x4a5ea5
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edi], 0x77
jne 0x4a5f58
mov ecx, dword [esp + 0x10]
jmp 0x4a5ea5
mov edi, dword [esp + 0x14]
mov dword [ecx + 0x98], 2
mov eax, dword [esp + 0x188]
mov ebx, dword [ecx + 0xac]
inc eax
mov ebp, dword [ecx + 0x90]
push eax
push dword [esp + 0x34]
movzx eax, byte [edi]
push ecx
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, edi
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc20
jne 0x4a5f17
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [esp + 0x10]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae 0x4a8908
cmp byte [edx], 0x77
je 0x4a5f23
cmp byte [eax], 0x77
jne 0x4a8908
jmp 0x4a5f23
test edi, edi
jne 0x4a890f
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x14], edx
mov dword [ecx + 0xac], ebx
cmp byte [edx], 0x77
jne case.0x4a86ae.14
mov edi, dword [esp + 0x28]
mov dword [ecx + 0x90], ebp
jmp 0x4a5e60
movzx eax, byte [edi]
movzx eax, byte [eax + 0x7524e8]
add edi, eax
mov dword [esp + 0x14], edi
jmp 0x4a073d
mov ebx, dword [esp + 0x18]
mov edi, dword [esp + 0x14]
jmp 0x4a0741
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push ebx
mov ebx, dword [esp + 0x24]
push dword [esp + 0x34]
movzx eax, byte [ebx]
movzx ecx, byte [ebx + 1]
movzx eax, byte [eax + 0x7524e8]
add eax, ebx
add ecx, eax
push ecx
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ecx, dword [esp + 0x10]
lea eax, [ebx + 2]
mov dword [ecx + 0x7c], eax
mov eax, 0xfffffc1f
jmp 0x4a8c8d
sub eax, 1
je case.0x4a86ae.14
mov eax, edi
jmp 0x4a8c8d
mov eax, 0xffffffe6
jmp 0x4a8c8d
mov eax, dword [esp + 0x68]
lea ecx, [esp + 0xe8]
cmp eax, ecx
je 0x4a8908
push eax
call dword [0x880678]
add esp, 4
mov eax, edi
jmp 0x4a8c8d
mov eax, 0xfffffffa
jmp 0x4a8c8d
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x24]
mov dword [eax + 0x80], esi
mov dword [eax + 0x7c], ecx
mov eax, dword [esp + 0x50]
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push ebx
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
add esp, 0x1c
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push ebx
push dword [esp + 0x34]
push ebp
jmp 0x4a6086
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
mov eax, dword [esp + 0x1c]
push ecx
push ebx
push dword [esp + 0x34]
add eax, 3
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x49d5e8
jmp 0x4a8c8d
mov eax, dword [esp + 0x24]
mov dword [edx + 0x7c], eax
mov eax, 0xfffffc1a
mov dword [edx + 0x80], esi
mov dword [edx + 0x8c], ecx
jmp 0x4a8c8d
mov eax, dword [esp + 0x18]
mov dword [edx + 0x80], esi
mov dword [edx + 0x8c], eax
mov eax, dword [esp + 0x24]
mov dword [edx + 0x7c], eax
mov eax, dword [esp + 0x50]
jmp 0x4a8c8d
cmp eax, 0xfffffffe
mov eax, dword [esp + 0x10]
jne 0x4a60e7
mov esi, dword [eax + 0x78]
cmp dword [eax + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [eax + 0x78]
jb case.0x4a86ae.14
jmp 0x4a6220
cmp eax, 0xfffffffe
jne 0x4a610a
mov esi, dword [edi + 0x78]
cmp dword [edi + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [edi + 0x78]
jb case.0x4a86ae.14
jmp 0x4a87e8
mov dword [esp + 0x3c], esi
cmp ebx, edi
jge 0x4a6193
push dword [esp + 0x34]
push dword [esp + 0x14]
push ebp
push esi
push dword [esp + 0x5c]
call fcn.004a9300
add esp, 0x14
test eax, eax
js 0x4a6154
inc ebx
add esi, eax
cmp ebx, edi
jl 0x4a6131
jmp 0x4a6185
cmp eax, 0xfffffffe
jne 0x4a6185
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], 0
je 0x4a6185
mov eax, dword [ecx + 0x78]
cmp eax, dword [ecx + 0x84]
jbe 0x4a6185
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jg 0x4a8808
mov ebx, dword [esp + 0x3c]
cmp esi, ebx
jb case.0x4a86ae.14
jmp 0x4a6197
mov ebx, dword [esp + 0x3c]
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
sub esi, ebp
cmp esi, ebx
jae 0x4a6197
jmp 0x4a8c8d
cmp eax, 0xfffffffe
jne 0x4a61da
mov esi, dword [ebx + 0x78]
cmp dword [ebx + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [ebx + 0x78]
jb case.0x4a86ae.14
cmp esi, dword [ebx + 0x84]
jbe case.0x4a86ae.14
mov dword [ebx + 0x64], 1
cmp dword [ebx + 0x88], 1
jmp 0x4a8802
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [eax + 0x84]
jbe case.0x4a86ae.14
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jmp 0x4a8802
mov eax, dword [esp + 0x188]
mov ebp, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebp
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
test ecx, ecx
je 0x4a642f
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax + eax]
mov edx, dword [esp + 0x20]
cmp edx, dword [esp + 0x38]
jge case.0x4a86ae.14
cmp esi, dword [ebp + 0x78]
jae 0x4a6403
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x58], ebx
cmp ebx, 0xc0
jb 0x4a63a2
test bl, 0x20
jne 0x4a62c4
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x4a63a2
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a62ea
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x4a6399
lea edx, [esi + 2]
test bl, 8
jne 0x4a6319
and ebx, 7
movzx eax, al
and eax, 0x3f
shl ebx, 6
or ebx, eax
add esi, 3
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4a6399
mov ebp, dword [esp + 0x58]
lea edi, [esi + 3]
test bl, 4
jne 0x4a6354
movzx ebx, al
and ebp, 3
movzx eax, byte [ecx]
and ebx, 0x3f
shl ebp, 6
and eax, 0x3f
or ebx, ebp
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4a6395
and ebp, 1
movzx eax, al
and eax, 0x3f
shl ebp, 6
or ebp, eax
lea ebx, [esi + 4]
movzx eax, byte [ecx]
add esi, 5
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
shl ebp, 6
mov dword [esp + 0x58], ebp
mov ebx, ebp
mov ebp, dword [esp + 0x10]
mov edx, dword [esp + 0x20]
and eax, 0x3f
or ebx, eax
cmp ebx, 0xff
jbe 0x4a63b1
cmp dword [esp + 0x28], 0x6e
jmp 0x4a63c6
mov eax, dword [esp + 0x50]
mov ecx, ebx
and ecx, 7
shr ebx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [ebx + ecx], al
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc edx
inc eax
mov dword [esp + 0x20], edx
push eax
push dword [esp + 0x34]
push ebp
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6280
jmp 0x4a8c8d
cmp dword [ebp + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [ebp + 0x84]
jbe case.0x4a86ae.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x4a8802
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ebx, dword [esp + 0x20]
cmp ebx, dword [esp + 0x38]
jge case.0x4a86ae.14
cmp esi, dword [ebp + 0x78]
jae 0x4a6403
movzx edx, byte [esi]
inc esi
mov eax, dword [esp + 0x50]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [esp + 0x34]
test byte [edx + ecx], al
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push ebp
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6445
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
cmp ebp, dword [esp + 0x20]
jge case.0x4a86ae.14
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jae 0x4a87db
movzx ecx, byte [esi]
inc esi
mov edx, dword [esp + 0x1c]
test edx, edx
je 0x4a65dd
cmp ecx, 0xc0
jb 0x4a65dd
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a651e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a65dd
test cl, 0x10
jne 0x4a653f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a65dd
test cl, 8
jne 0x4a656c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a65dd
test cl, 4
jne 0x4a65a2
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a65dd
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
push edx
push ebx
push ecx
call fcn.004aab50
add esp, 0xc
test eax, eax
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebp
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a64d2
jmp 0x4a8c8d
cmp dword [ebx + 0x88], 0
je case.0x4a86ae.14
cmp esi, edi
jmp 0x4a61ea
cmp dword [edx + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [edx + 0x84]
jbe case.0x4a86ae.14
mov dword [edx + 0x64], 1
cmp dword [edx + 0x88], 1
jmp 0x4a8802
mov eax, dword [esp + 0x10]
jmp 0x4a60e7
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x10]
inc eax
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
cmp dword [esp + 0x20], ebp
jge case.0x4a86ae.14
mov ebx, dword [ebx + 0x78]
mov eax, ebx
mov ebp, dword [esp + 0x38]
sub eax, ebp
cmp esi, eax
ja 0x4a671d
mov edx, dword [esp + 0x3c]
mov edi, ebp
mov ecx, esi
sub edi, 4
jb 0x4a66d7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4a66e0
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4a66c6
cmp edi, 0xfffffffc
je 0x4a6799
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a671d
cmp edi, 0xfffffffd
je 0x4a6799
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a671d
cmp edi, 0xfffffffe
je 0x4a6799
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4a671d
cmp edi, 0xffffffff
je 0x4a6799
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4a6799
mov ebp, dword [esp + 0x28]
mov ecx, ebx
test ebp, ebp
jle 0x4a67d9
mov eax, ebx
sub eax, ebp
cmp esi, eax
ja 0x4a67d9
mov edi, ebp
lea edx, [esp + 0x160]
mov ecx, esi
sub edi, 4
jb 0x4a6758
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4a675d
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4a6747
cmp edi, 0xfffffffc
je 0x4a6791
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4a678a
cmp edi, 0xfffffffd
je 0x4a6791
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4a678a
cmp edi, 0xfffffffe
je 0x4a6791
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4a678a
cmp edi, 0xffffffff
je 0x4a6791
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x4a6791
sbb eax, eax
or eax, 1
jmp 0x4a6793
xor eax, eax
mov ecx, ebx
test eax, eax
jne 0x4a67d9
mov eax, dword [esp + 0x188]
add esi, ebp
mov ebx, dword [esp + 0x10]
inc eax
inc dword [esp + 0x20]
push eax
push dword [esp + 0x34]
push ebx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov ebp, dword [esp + 0x48]
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a66a0
jmp 0x4a8c8d
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je case.0x4a86ae.14
cmp esi, ecx
jb case.0x4a86ae.14
jmp 0x4a6220
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
nop dword [eax + eax]
mov ecx, dword [esp + 0x20]
cmp ecx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx eax, byte [esi]
cmp ebx, eax
je 0x4a685a
cmp ebp, eax
jne case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc esi
inc eax
inc ecx
push eax
push dword [esp + 0x34]
mov dword [esp + 0x28], ecx
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6830
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop
mov ecx, dword [esp + 0x20]
cmp ecx, ebp
jge case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ecx
inc eax
mov dword [esp + 0x20], ecx
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a68c0
jmp 0x4a8c8d
cmp dword [ecx + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [ecx + 0x84]
jbe case.0x4a86ae.14
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jmp 0x4a8802
mov eax, dword [esp + 0x188]
inc eax
cmp dword [esp + 0x1c], 0
push eax
push dword [esp + 0x34]
je 0x4a6adb
mov ebp, dword [esp + 0x18]
push ebp
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x20]
jge case.0x4a86ae.14
cmp esi, dword [ebp + 0x78]
jae 0x4a6403
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
cmp ebx, 0xc0
jb 0x4a6a90
test bl, 0x20
jne 0x4a69c4
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x4a6a8c
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test bl, 0x10
jne 0x4a69ea
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x4a6a87
lea edx, [esi + 2]
test bl, 8
jne 0x4a6a13
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4a6a87
lea edi, [esi + 3]
test bl, 4
jne 0x4a6a44
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4a6a87
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [ebx]
shl ebp, 6
mov dword [esp + 0x3c], ebp
mov ebx, ebp
mov ebp, dword [esp + 0x10]
and eax, 0x3f
or ebx, eax
mov eax, dword [esp + 0x2c]
cmp dword [esp + 0x38], ebx
je case.0x4a86ae.14
cmp dword [esp + 0x28], ebx
je case.0x4a86ae.14
inc eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push ebp
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6980
jmp 0x4a8c8d
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ebx, dword [esp + 0x2c]
cmp ebx, dword [esp + 0x20]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx eax, byte [esi]
cmp dword [esp + 0x38], eax
je case.0x4a86ae.14
cmp ebp, eax
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc esi
inc eax
inc ebx
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6b02
jmp 0x4a8c8d
test eax, eax
mov eax, dword [esp + 0x188]
je 0x4a6cf7
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop word [eax + eax]
mov eax, dword [esp + 0x2c]
cmp eax, dword [esp + 0x20]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx ebx, byte [esi]
inc esi
mov dword [esp + 0x3c], ebx
cmp ebx, 0xc0
jb 0x4a6cb8
test bl, 0x20
jne 0x4a6be8
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x4a6cb4
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test bl, 0x10
jne 0x4a6c0e
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x4a6cab
lea edx, [esi + 2]
test bl, 8
jne 0x4a6c37
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4a6cab
lea edi, [esi + 3]
test bl, 4
jne 0x4a6c68
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4a6cab
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edx]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [edi]
shl ebp, 6
and eax, 0x3f
or ebp, eax
movzx eax, byte [ebx]
shl ebp, 6
mov dword [esp + 0x3c], ebp
mov ebx, ebp
mov ebp, dword [esp + 0x38]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
or ebx, eax
mov eax, dword [esp + 0x2c]
cmp ebp, ebx
je case.0x4a86ae.14
inc eax
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6ba0
jmp 0x4a8c8d
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ebx, dword [esp + 0x2c]
cmp ebx, dword [esp + 0x20]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx eax, byte [esi]
inc esi
cmp ebp, eax
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6d24
jmp 0x4a8c8d
test eax, eax
js 0x4a7e2c
cmp eax, 0xa
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a9190]
mov eax, dword [esp + 0x188]
mov ebp, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx eax, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
je 0x4a6e0e
cmp eax, 0xc0
jb 0x4a6e0e
test al, 0x20
jne 0x4a6df0
inc esi
jmp 0x4a6e0e
test al, 0x10
jne 0x4a6df9
add esi, 2
jmp 0x4a6e0e
test al, 8
jne 0x4a6e02
add esi, 3
jmp 0x4a6e0e
test al, 4
jne 0x4a6e0b
add esi, 4
jmp 0x4a6e0e
add esi, 5
cmp dword [esp + 0x44], 0
jne case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push ecx
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6dc0
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a6f90
cmp ebx, 0xc0
jb 0x4a6f90
mov al, byte [esi]
test bl, 0x20
jne 0x4a6ec5
and ebx, 0x1f
movzx ebp, al
and ebp, 0x3f
shl ebx, 6
inc esi
or ebp, ebx
jmp 0x4a6f90
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a6ee8
mov ebp, ebx
movzx eax, al
and ebp, 0xf
and eax, 0x3f
shl ebp, 6
add esi, 2
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a6f84
lea edx, [esi + 2]
test bl, 8
jne 0x4a6f14
movzx ebp, al
and ebx, 7
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a6f84
lea edi, [esi + 3]
test bl, 4
jne 0x4a6f48
movzx ebp, al
and ebx, 3
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 4
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a6f84
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
movzx eax, al
and eax, 0x3f
shl ebp, 6
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
and ebp, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp eax, 9
je 0x4a6fc7
cmp eax, 5
je 0x4a6fc7
cmp eax, 8
je 0x4a6fc7
xor eax, eax
jmp 0x4a6fcc
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push ecx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a6e72
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a7145
cmp ebx, 0xc0
jb 0x4a7145
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x4a708b
inc esi
and ebp, 0x1f
jmp 0x4a713d
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a70ab
mov ebp, ebx
add esi, 2
and ebp, 0xf
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a713d
lea edx, [esi + 2]
test bl, 8
jne 0x4a70d3
mov ebp, ebx
add esi, 3
and ebp, 7
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a7139
lea edi, [esi + 3]
test bl, 4
jne 0x4a7103
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a7139
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov ebx, dword [esp + 0x54]
mov eax, ebp
shr eax, 7
and ebp, 0x7f
xor ecx, ecx
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp dword [eax*4 + 0x752600], ebx
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push edx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7040
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax + eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a72f5
cmp ebx, 0xc0
jb 0x4a72f5
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x4a723b
inc esi
and ebp, 0x1f
jmp 0x4a72ed
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a725b
mov ebp, ebx
add esi, 2
and ebp, 0xf
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a72ed
lea edx, [esi + 2]
test bl, 8
jne 0x4a7283
mov ebp, ebx
add esi, 3
and ebp, 7
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a72e9
lea edi, [esi + 3]
test bl, 4
jne 0x4a72b3
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a72e9
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
xor ecx, ecx
shr eax, 7
and ebp, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp eax, dword [esp + 0x54]
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push edx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a71f0
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a7499
cmp ebx, 0xc0
jb 0x4a7499
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x4a73df
inc esi
and ebp, 0x1f
jmp 0x4a7491
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a73ff
mov ebp, ebx
add esi, 2
and ebp, 0xf
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a7491
lea edx, [esi + 2]
test bl, 8
jne 0x4a7427
mov ebp, ebx
add esi, 3
and ebp, 7
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a748d
lea edi, [esi + 3]
test bl, 4
jne 0x4a7457
mov ebp, ebx
add esi, 4
and ebp, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a748d
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
add esi, 5
shl ebp, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
xor ecx, ecx
shr eax, 7
and ebp, 0x7f
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c30]
cmp eax, dword [esp + 0x54]
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push edx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7394
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax + eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a765c
cmp ebx, 0xc0
jb 0x4a765c
mov al, byte [esi]
test bl, 0x20
jne 0x4a7593
and ebx, 0x1f
movzx ebp, al
and ebp, 0x3f
shl ebx, 6
inc esi
or ebp, ebx
jmp 0x4a765c
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a75b4
movzx ebp, al
and ebx, 0xf
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x4a7650
lea edx, [esi + 2]
test bl, 8
jne 0x4a75e0
movzx ebp, al
and ebx, 7
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a7650
lea edi, [esi + 3]
test bl, 4
jne 0x4a7614
movzx ebp, al
and ebx, 3
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 4
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a7650
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
movzx eax, al
and eax, 0x3f
shl ebp, 6
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
and ebp, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x4a7695
cmp eax, 3
je 0x4a7695
xor eax, eax
jmp 0x4a769a
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push ecx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7540
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
mov ebp, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edi, dword [esp + 0x10]
cmp esi, dword [edi + 0x78]
jae 0x4a87db
movzx edx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ecx, edx
je 0x4a780d
cmp edx, 0xc0
jb 0x4a780d
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x4a7761
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
inc esi
jmp 0x4a780b
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x4a7782
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x4a780b
test dl, 8
jne 0x4a77a8
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x4a780b
test dl, 4
jne 0x4a77d7
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x4a780b
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, edx
cmp edx, 0x180e
ja 0x4a7850
je case.0x4a7870.8192
cmp edx, 0x85
ja 0x4a783c
je case.0x4a7870.8192
cmp edx, 9
jb case.0x4a7870.8203
cmp edx, 0xd
jbe case.0x4a7870.8192
cmp edx, 0x20
jmp 0x4a7885
cmp edx, 0xa0
je case.0x4a7870.8192
cmp edx, 0x1680
jmp 0x4a7885
cmp edx, 0x202f
ja 0x4a7877
je case.0x4a7870.8192
add edx, 0xffffe000
cmp edx, 0x29
ja case.0x4a7870.8203
movzx eax, byte [edx + 0x4a91c4]
jmp dword [eax*4 + 0x4a91bc]
cmp edx, 0x205f
je case.0x4a7870.8192
cmp edx, 0x3000
je case.0x4a7870.8192
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
cmp dword [eax*4 + 0x752600], 6
sete cl
cmp ecx, dword [esp + 0x44]
je case.0x4a86ae.14
jmp 0x4a78cf
cmp dword [esp + 0x44], 0
jne case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x24]
push dword [esp + 0x34]
push ebp
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7710
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edx, dword [esp + 0x10]
cmp esi, dword [edx + 0x78]
jae 0x4a6637
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a7a2f
cmp ebx, 0xc0
jb 0x4a7a2f
mov al, byte [esi]
test bl, 0x20
jne 0x4a797b
inc esi
movzx eax, al
and ebp, 0x1f
jmp 0x4a7a27
movzx ebp, al
lea ecx, [esi + 1]
and ebp, 0x3f
test bl, 0x10
jne 0x4a799c
movzx eax, byte [ecx]
and ebx, 0xf
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x4a7a27
lea edx, [esi + 2]
test bl, 8
jne 0x4a79bf
movzx eax, byte [ecx]
and ebx, 7
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a7a23
lea edi, [esi + 3]
test bl, 4
jne 0x4a79ed
movzx eax, byte [ecx]
and ebx, 3
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 4
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a7a23
mov eax, dword [esp + 0x3c]
lea ebx, [esi + 4]
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov eax, ebp
shr eax, 7
movzx ecx, byte [eax + 0x753fc8]
mov eax, ebp
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x7561c8]
movzx eax, byte [eax*8 + 0x752c31]
mov eax, dword [eax*4 + 0x752600]
cmp eax, 1
je 0x4a7a6f
cmp eax, 3
je 0x4a7a6f
cmp ebp, 0x5f
je 0x4a7a6f
xor eax, eax
jmp 0x4a7a74
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push edx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7930
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov ebp, dword [esp + 0x10]
nop word [eax + eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
cmp esi, dword [ebp + 0x78]
jae 0x4a6403
movzx ecx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov edi, ecx
je 0x4a7bfa
cmp ecx, 0xc0
jb 0x4a7bfa
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a7b39
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a7bf8
test cl, 0x10
jne 0x4a7b5a
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a7bf8
test cl, 8
jne 0x4a7b87
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a7bf8
test cl, 4
jne 0x4a7bbd
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a7bf8
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edi, ecx
mov eax, dword [esp + 0x54]
mov edx, dword [eax*4 + 0x752af0]
lea eax, [eax*4 + 0x752af0]
cmp edi, edx
jb 0x4a7c1d
lea eax, [eax + 4]
cmp ecx, edx
je 0x4a7c5b
mov edx, dword [eax]
cmp ecx, edx
jae 0x4a7c10
cmp dword [esp + 0x44], 0
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push ebp
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7af0
jmp 0x4a8c8d
cmp dword [esp + 0x44], 0
jne case.0x4a86ae.14
jmp 0x4a7c28
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov ecx, dword [esp + 0x10]
cmp esi, dword [ecx + 0x78]
jae 0x4a6918
movzx ebx, byte [esi]
inc esi
cmp dword [esp + 0x1c], 0
mov ebp, ebx
mov dword [esp + 0x3c], ebx
je 0x4a7db7
cmp ebx, 0xc0
jb 0x4a7db7
test bl, 0x20
jne 0x4a7ce6
movzx eax, byte [esi]
and ebp, 0x1f
shl ebp, 6
and eax, 0x3f
or ebp, eax
inc esi
jmp 0x4a7db7
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a7d0b
mov ebp, ebx
movzx eax, al
and ebp, 0xf
and eax, 0x3f
shl ebp, 6
add esi, 2
or ebp, eax
movzx eax, byte [ecx]
jmp 0x4a7dab
lea edx, [esi + 2]
test bl, 8
jne 0x4a7d39
movzx eax, al
mov ebp, ebx
and ebp, 7
and eax, 0x3f
shl ebp, 6
add esi, 3
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a7dab
lea edi, [esi + 3]
test bl, 4
jne 0x4a7d6f
movzx eax, al
mov ebp, ebx
and ebp, 3
and eax, 0x3f
shl ebp, 6
add esi, 4
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a7dab
movzx ebp, al
lea ebx, [esi + 4]
mov eax, dword [esp + 0x3c]
and ebp, 0x3f
and eax, 1
add esi, 5
shl eax, 6
or ebp, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
shl ebp, 6
or ebp, eax
cmp ebp, 0x24
je 0x4a7de2
cmp ebp, 0x40
je 0x4a7de2
cmp ebp, 0x60
je 0x4a7de2
cmp ebp, 0xa0
jb 0x4a7dd6
cmp ebp, 0xd7ff
jbe 0x4a7de2
cmp ebp, 0xe000
jae 0x4a7de2
xor eax, eax
jmp 0x4a7de7
mov eax, 1
cmp eax, dword [esp + 0x44]
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push ecx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7c95
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
inc eax
push eax
push dword [esp + 0x34]
push edx
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
cmp ebp, 0x16
jne 0x4a8133
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov eax, dword [esp + 0x10]
cmp esi, dword [eax + 0x78]
jae 0x4a6213
movzx ebx, byte [esi]
inc esi
mov edx, dword [esp + 0x1c]
mov ebp, ebx
mov dword [esp + 0x3c], ebx
mov ecx, esi
test edx, edx
je 0x4a7f83
cmp ebx, 0xc0
jb 0x4a7f83
mov al, byte [esi]
test bl, 0x20
jne 0x4a7eb8
and ebx, 0x1f
movzx ebp, al
and ebp, 0x3f
shl ebx, 6
inc esi
or ebp, ebx
jmp 0x4a7f81
lea ecx, [esi + 1]
test bl, 0x10
jne 0x4a7ed9
movzx ebp, al
and ebx, 0xf
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
add esi, 2
or ebp, ebx
jmp 0x4a7f79
lea edx, [esi + 2]
test bl, 8
jne 0x4a7f05
movzx ebp, al
and ebx, 7
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 3
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
jmp 0x4a7f75
lea edi, [esi + 3]
test bl, 4
jne 0x4a7f39
movzx ebp, al
and ebx, 3
movzx eax, byte [ecx]
and ebp, 0x3f
shl ebx, 6
and eax, 0x3f
or ebp, ebx
add esi, 4
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
jmp 0x4a7f75
mov ebp, dword [esp + 0x3c]
lea ebx, [esi + 4]
and ebp, 1
movzx eax, al
and eax, 0x3f
shl ebp, 6
or ebp, eax
add esi, 5
movzx eax, byte [ecx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ebp, 6
or ebp, eax
movzx eax, byte [ebx]
mov edx, dword [esp + 0x1c]
and eax, 0x3f
shl ebp, 6
or ebp, eax
mov ecx, esi
mov eax, ebp
and ebp, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, ebp
movzx eax, word [eax*2 + 0x7561c8]
movzx ebx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x10]
mov ebp, dword [eax + 0x78]
cmp ecx, ebp
jae 0x4a80cb
test edx, edx
mov edi, 1
movzx edx, byte [esi]
je 0x4a8088
cmp edx, 0xc0
jb 0x4a8088
test dl, 0x20
jne 0x4a7fe8
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4a8080
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4a800a
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4a8080
and eax, 0x3f
test dl, 8
jne 0x4a802a
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4a8080
test dl, 4
jne 0x4a8053
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4a8080
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x753fc8]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x7561c8]
movzx ecx, byte [eax*8 + 0x752c32]
mov eax, dword [esp + 0x50]
shl eax, cl
test dword [ebx*4 + 0x752678], eax
je 0x4a80cb
mov edx, dword [esp + 0x1c]
add esi, edi
mov ebx, ecx
cmp esi, ebp
jb 0x4a7fb6
mov ecx, dword [esp + 0x10]
cmp dword [ecx + 0x88], 0
je 0x4a80f8
cmp esi, ebp
jb 0x4a80f8
cmp esi, dword [ecx + 0x84]
jbe 0x4a80f8
mov dword [ecx + 0x64], 1
cmp dword [ecx + 0x88], 1
jg 0x4a8808
mov eax, dword [esp + 0x188]
mov ebx, dword [esp + 0x28]
inc eax
push eax
push dword [esp + 0x34]
inc ebx
push ecx
push dword [esp + 0x24]
mov dword [esp + 0x38], ebx
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a7e62
jmp 0x4a8c8d
test ecx, ecx
je 0x4a85ba
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x4a87db
cmp ebp, 0xc
jne 0x4a81b7
mov edx, dword [edi + 0x18]
test edx, edx
je 0x4a8192
push dword [esp + 0x1c]
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne case.0x4a86ae.14
jmp 0x4a81b7
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x4a81b7
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x4a81b7
cmp edx, 1
je case.0x4a86ae.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x4a86ae.14
movzx ecx, byte [esi]
inc esi
mov edx, esi
mov eax, ecx
cmp ecx, 0xc0
jb 0x4a82a7
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x4a81e4
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4a82a3
test cl, 0x10
jne 0x4a8205
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4a82a3
test cl, 8
jne 0x4a8232
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4a82a3
test cl, 4
jne 0x4a8268
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4a82a3
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edx, esi
mov eax, ecx
lea edi, [ebp - 6]
cmp edi, 0xf
ja case.default.0x49ed88
jmp dword [edi*4 + 0x4a91f0]
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x88], 0
je case.0x4a82b3.13
cmp edx, dword [eax + 0x78]
jb case.0x4a82b3.13
cmp dword [eax + 0x18], 0
jne case.0x4a82b3.13
cmp dword [eax + 0x1c], 2
jne case.0x4a82b3.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x4a82b3.13
mov eax, dword [esp + 0x10]
mov dword [eax + 0x64], 1
cmp dword [eax + 0x88], 1
jg 0x4a8808
jmp case.0x4a82b3.13
cmp ecx, 0xd
ja 0x4a8344
je 0x4a8326
cmp ecx, 0xa
je case.0x4a82b3.13
lea eax, [ecx - 0xb]
jmp 0x4a8352
mov eax, dword [esp + 0x10]
cmp edx, dword [eax + 0x78]
jae case.0x4a82b3.13
cmp byte [esi], 0xa
jne case.0x4a82b3.13
lea esi, [edx + 1]
jmp case.0x4a82b3.13
cmp ecx, 0x85
je 0x4a835b
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x4a86ae.14
mov eax, dword [esp + 0x10]
cmp dword [eax + 0x68], 0
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x180e
ja 0x4a83a6
je case.0x4a86ae.14
cmp ecx, 0xa0
ja 0x4a839b
je case.0x4a86ae.14
cmp ecx, 9
je case.0x4a86ae.14
cmp ecx, 0x20
jmp 0x4a857e
cmp ecx, 0x1680
jmp 0x4a857e
cmp ecx, 0x205f
ja 0x4a83d7
je case.0x4a86ae.14
cmp ecx, 0x2000
jb case.0x4a82b3.13
cmp ecx, 0x200a
jbe case.0x4a86ae.14
cmp ecx, 0x202f
jmp 0x4a857e
cmp ecx, 0x3000
jmp 0x4a857e
cmp ecx, 0x180e
ja 0x4a8426
je case.0x4a82b3.13
cmp ecx, 0xa0
ja 0x4a8415
je case.0x4a82b3.13
cmp ecx, 9
je case.0x4a82b3.13
cmp ecx, 0x20
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x1680
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x205f
ja 0x4a845d
je case.0x4a82b3.13
cmp ecx, 0x2000
jb case.0x4a86ae.14
cmp ecx, 0x200a
jbe case.0x4a82b3.13
cmp ecx, 0x202f
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x3000
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x85
ja 0x4a8493
je case.0x4a86ae.14
cmp ecx, 0xa
jb case.0x4a82b3.13
cmp ecx, 0xd
jbe case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x2028
jb case.0x4a82b3.13
cmp ecx, 0x2029
jbe case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp ecx, 0x85
ja 0x4a84cf
je case.0x4a82b3.13
lea eax, [ecx - 0xa]
cmp eax, 3
ja case.0x4a86ae.14
jmp case.0x4a82b3.13
lea eax, [ecx - 0x2028]
cmp eax, 1
ja case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp eax, 0x100
jae case.0x4a82b3.13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp eax, 0x100
jae case.0x4a86ae.14
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jmp 0x4a857e
cmp eax, 0x100
jae case.0x4a82b3.13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp eax, 0x100
jae case.0x4a86ae.14
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jmp 0x4a857e
cmp eax, 0x100
jae case.0x4a82b3.13
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne case.0x4a86ae.14
jmp case.0x4a82b3.13
cmp eax, 0x100
jae case.0x4a86ae.14
mov eax, dword [esp + 0x10]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push dword [esp + 0x18]
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a8150
jmp 0x4a8c8d
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
nop dword [eax]
cmp ebx, dword [esp + 0x2c]
jge case.0x4a86ae.14
mov edi, dword [esp + 0x10]
mov ecx, dword [edi + 0x78]
cmp esi, ecx
jae 0x4a87db
cmp ebp, 0xc
jne 0x4a8635
mov edx, dword [edi + 0x18]
test edx, edx
je 0x4a8610
push 0
lea eax, [edi + 0x1c]
push eax
push ecx
push edx
push esi
call fcn.004aa500
add esp, 0x14
test eax, eax
jne case.0x4a86ae.14
jmp 0x4a8635
mov edx, dword [edi + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x4a8635
mov al, byte [esi]
cmp al, byte [edi + 0x34]
jne 0x4a8635
cmp edx, 1
je case.0x4a86ae.14
mov al, byte [esi + 1]
cmp al, byte [edi + 0x35]
je case.0x4a86ae.14
movzx ecx, byte [esi]
lea eax, [ebp - 6]
inc esi
cmp eax, 0xf
ja case.default.0x49ed88
jmp dword [eax*4 + 0x4a9230]
cmp dword [edi + 0x88], 0
je case.0x4a8645.13
cmp esi, dword [edi + 0x78]
jb case.0x4a8645.13
cmp dword [edi + 0x18], 0
jne case.0x4a8645.13
cmp dword [edi + 0x1c], 2
jne case.0x4a8645.13
movzx eax, byte [edi + 0x34]
cmp ecx, eax
jne case.0x4a8645.13
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jg 0x4a8808
jmp case.0x4a8645.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x4a86ae.14
movzx eax, byte [ecx + 0x4a9280]
jmp dword [eax*4 + 0x4a9270]
cmp esi, dword [edi + 0x78]
jae case.0x4a8645.13
cmp byte [esi], 0xa
jne case.0x4a8645.13
inc esi
jmp case.0x4a8645.13
cmp dword [edi + 0x68], 0
jne case.0x4a86ae.14
jmp case.0x4a8645.13
cmp ecx, 9
je case.0x4a86ae.14
cmp ecx, 0x20
je case.0x4a86ae.14
cmp ecx, 0xa0
jmp 0x4a8798
cmp ecx, 9
je case.0x4a8645.13
cmp ecx, 0x20
je case.0x4a8645.13
cmp ecx, 0xa0
jne case.0x4a86ae.14
jmp case.0x4a8645.13
cmp ecx, 0xa
jb case.0x4a8645.13
cmp ecx, 0xd
jbe case.0x4a86ae.14
cmp ecx, 0x85
jmp 0x4a8798
cmp ecx, 0xa
jb case.0x4a86ae.14
cmp ecx, 0xd
jbe case.0x4a8645.13
cmp ecx, 0x85
jne case.0x4a86ae.14
jmp case.0x4a8645.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jne case.0x4a86ae.14
jmp case.0x4a8645.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 4
jmp 0x4a8798
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jne case.0x4a86ae.14
jmp case.0x4a8645.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 1
jmp 0x4a8798
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
jne case.0x4a86ae.14
jmp case.0x4a8645.13
mov eax, dword [edi + 0x40]
test byte [ecx + eax], 0x10
je case.0x4a86ae.14
mov eax, dword [esp + 0x188]
inc ebx
inc eax
push eax
push dword [esp + 0x34]
push edi
push dword [esp + 0x24]
push dword [esp + 0x34]
push dword [esp + 0x28]
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a85d0
jmp 0x4a8c8d
mov eax, 0xfffffff2
jmp 0x4a8c8d
cmp dword [edi + 0x88], 0
je case.0x4a86ae.14
cmp esi, dword [edi + 0x84]
jbe case.0x4a86ae.14
mov dword [edi + 0x64], 1
cmp dword [edi + 0x88], 1
jle case.0x4a86ae.14
mov eax, 0xfffffff4
jmp 0x4a8c8d
mov edi, dword [esp + 0x28]
cmp edi, 0x88
jb 0x4a8828
mov dword [edx + 0x98], 2
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push edx
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, ecx
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 0xfffffc1b
je 0x4a88da
cmp edi, 0xfffffc20
jne 0x4a88a0
mov edx, dword [esp + 0x14]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, dword [esp + 0x10]
cmp dword [edx + 0x7c], eax
jae 0x4a8908
mov ecx, dword [esp + 0x14]
cmp byte [ecx], 0x77
je 0x4a889c
cmp byte [eax], 0x77
jne 0x4a8908
xor edi, edi
jmp 0x4a88a8
test edi, edi
jne 0x4a8908
mov edx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov dword [edx + 0x90], ebx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [edx + 0xac], ebp
mov eax, dword [esp + 0x14]
add eax, ecx
mov dword [esp + 0x14], eax
cmp byte [eax], 0x77
je 0x4a8812
jmp 0x4a88de
mov edx, dword [esp + 0x10]
mov eax, dword [edx + 0xc]
mov ebx, dword [esp + 0x4c]
mov ecx, dword [esp + 0x3c]
mov dword [eax + ebx*4], ecx
mov eax, dword [edx + 0xc]
mov ecx, dword [esp + 0x5c]
mov dword [eax + ebx*4 + 4], ecx
mov ecx, dword [edx + 0x10]
mov eax, dword [edx + 0xc]
sub ecx, dword [esp + 0x34]
mov edx, dword [esp + 0x58]
mov dword [eax + ecx*4], edx
mov eax, edi
jmp 0x4a8c8d
cmp edi, 0xfffffc1b
jne 0x4a8908
mov edx, dword [esp + 0x14]
mov al, byte [edx]
cmp al, 0x81
je 0x4a8948
cmp al, 0x77
jne 0x4a8939
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x4a8925
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xb4], edx
jne 0x4a8908
xor edi, edi
mov eax, edi
jmp 0x4a8c8d
mov edi, dword [esp + 0x14]
lea ebx, [edi + 2]
mov dword [edx + 0xb0], ebx
mov dword [edx + 0xac], 0
mov eax, dword [esp + 0x188]
movzx ecx, byte [edi + 1]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edi]
push edx
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, edi
add ecx, eax
push ecx
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 1
je 0x4a89b5
cmp edi, 0xfffffc19
jne 0x4a89cf
mov edx, dword [esp + 0x10]
cmp dword [edx + 0xac], 0
jne 0x4a89d3
mov dword [edx + 0xac], ebx
mov eax, edi
jmp 0x4a8c8d
mov edx, dword [esp + 0x10]
cmp edi, 0xfffffc1f
jne 0x4a8908
mov eax, dword [edx + 0x7c]
mov cl, byte [ebx]
cmp cl, byte [eax]
jne 0x4a8a02
test cl, cl
je 0x4a89fe
mov cl, byte [ebx + 1]
cmp cl, byte [eax + 1]
jne 0x4a8a02
add ebx, 2
add eax, 2
test cl, cl
jne 0x4a89e2
xor eax, eax
jmp 0x4a8a07
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4a8908
mov dword [edx + 0x7c], esi
mov eax, 0xfffffc1e
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push edx
push ebx
push dword [esp + 0x34]
movzx eax, byte [eax + 0x7524e8]
add eax, ecx
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov eax, 0xfffffc1c
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push edx
push ebx
push dword [esp + 0x34]
movzx eax, byte [eax + 0x7524e8]
add eax, ecx
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a8b0c
jmp 0x4a8c8d
mov edi, dword [esp + 0x14]
lea ebx, [edi + 2]
mov dword [edx + 0xb0], ebx
mov dword [edx + 0xac], 0
mov eax, dword [esp + 0x188]
movzx ecx, byte [edi + 1]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [edi]
push edx
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, edi
add ecx, eax
push ecx
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 1
je 0x4a8af1
cmp edi, 0xfffffc19
jne 0x4a8b04
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xac], 0
jne 0x4a8b04
mov dword [eax + 0xac], ebx
test edi, edi
jne 0x4a8908
mov eax, 0xfffffc1d
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
mov ecx, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ecx]
push edx
push ebx
push dword [esp + 0x34]
movzx eax, byte [eax + 0x7524e8]
add eax, ecx
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
jne 0x4a8908
mov eax, dword [esp + 0x10]
mov dword [eax + 0x7c], esi
mov eax, 0xfffffc1e
jmp 0x4a8c8d
mov eax, dword [esp + 0x188]
mov ebp, dword [esp + 0x14]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ebp]
push edx
push ebx
push dword [esp + 0x34]
movzx eax, byte [eax + 0x7524e8]
add eax, ebp
push eax
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
test edi, edi
je 0x4a8c0f
jmp 0x4a8c8d
mov ebp, dword [esp + 0x14]
lea ebx, [ebp + 2]
mov dword [edx + 0xb0], ebx
mov dword [edx + 0xac], 0
mov eax, dword [esp + 0x188]
movzx ecx, byte [ebp + 1]
inc eax
push eax
push dword [esp + 0x34]
movzx eax, byte [ebp]
push edx
push dword [esp + 0x24]
movzx eax, byte [eax + 0x7524e8]
push dword [esp + 0x34]
add eax, ebp
add ecx, eax
push ecx
push esi
call fcn.0049c360
mov edi, eax
add esp, 0x1c
cmp edi, 1
je 0x4a8bf4
cmp edi, 0xfffffc19
jne 0x4a8c07
mov eax, dword [esp + 0x10]
cmp dword [eax + 0xac], 0
jne 0x4a8c07
mov dword [eax + 0xac], ebx
test edi, edi
jne 0x4a8908
mov eax, dword [esp + 0x10]
mov dword [eax + 0x7c], ebp
mov eax, 0xfffffc20
jmp 0x4a8c8d
mov ecx, dword [esp + 0x24]
cmp esi, ecx
jne 0x4a8c5a
cmp edi, 0x9f
je 0x4a8c5a
cmp dword [edx + 0xa4], 0
jne 0x4a8c5a
cmp dword [edx + 0x5c], 0
jne case.0x4a86ae.14
cmp dword [edx + 0x60], 0
je 0x4a8c5a
mov eax, dword [edx + 0x94]
add eax, dword [edx + 0x74]
cmp ecx, eax
je case.0x4a86ae.14
mov dword [edx + 0x80], esi
test edi, edi
mov eax, 0xfffffc19
mov dword [edx + 0x8c], ebx
cmove eax, dword [esp + 0x50]
mov dword [edx + 0x7c], ecx
jmp 0x4a8c8d
mov eax, 0xfffffffb
jmp 0x4a8c8d
mov eax, 0xffffffeb
jmp 0x4a8c8d
inc eax
mov dword [ecx], eax
mov eax, 0xfffffff8
mov ecx, dword [esp + 0x168]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.005091ef
add esp, 0x15c
ret