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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4c
mov eax, dword [ebp + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
xor edx, edx
mov dword [ebp - 0xc], ecx
push ebx
mov ecx, dword [eax + 0x7c]
mov eax, ecx
mov ebx, dword [ebp + 0x14]
shr eax, 0x13
and eax, 1
shr ecx, 0x11
mov dword [ebp - 8], eax
and ecx, 1
push esi
push edi
mov edi, dword [ebp + 0x18]
lea eax, [ebx - 0x38]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x14], edx
mov eax, dword [edi + 0x18]
mov ecx, dword [edi + 0x1c]
mov dword [ebp - 4], eax
mov eax, ecx
div ebx
mov eax, dword [ebp - 4]
mov esi, dword [ebp + 0xc]
sub ecx, edx
mov dword [ebp - 0x30], ecx
add ecx, eax
mov dword [ebp - 0x34], ecx
xor edx, edx
mov ecx, dword [ebp - 4]
mov dword [eax + 0x18], 0
mov dword [eax + 0x48], 0
mov dword [eax + 0x44], 0xffffffff
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
mov dword [ecx + 0x3c], eax
mov eax, ecx
mov dword [ebp - 0x18], edx
mov dword [eax + 0x40], 0
mov dword [eax + 0x50], 0
mov dword [eax + 0x4c], 0xffffffff
mov dword [eax + 0x1c], edx
mov dword [eax], esi
mov dword [eax + 0x10], ebx
test edx, edx
je 0x479f24
sub eax, dword [edi + 0x18]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x4c], eax
mov eax, edx
and eax, 0xffff0000
cmp eax, 0x40000
jne 0x479f1f
movzx eax, dx
mov dword [ecx + 0x44], eax
xor eax, eax
mov dword [ebp - 0x18], eax
mov eax, dword [ebp + 0x1c]
mov edi, dword [ebp + 0x1c]
mov edx, dword [eax + 0x18]
mov ecx, dword [eax + 0x10]
lea eax, [edx + 1]
mov dword [edi + 0x18], eax
cmp edx, ecx
jae 0x4887b9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x18]
cmp eax, dword [edi + 0x14]
jb 0x479f61
pop edi
pop esi
mov eax, 0xffffffcb
pop ebx
mov esp, ebp
pop ebp
ret
mov edi, esi
jmp 0x479f61
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov bl, byte [esi]
movzx ecx, bl
mov byte [ebp + 0xb], bl
mov byte [eax + 0x31], bl
cmp ecx, 0xa6
ja case.0x48547a.15
movzx eax, byte [ecx + 0x488924]
jmp dword [eax*4 + 0x4887c8]
mov eax, dword [ebp - 4]
cmp dword [eax + 0x44], 0xffffffff
jne 0x47a00f
movzx edi, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edi, 8
or edi, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x4c]
nop word [eax + eax]
cmp eax, 0xffffffff
je case.0x48547a.15
mov ecx, dword [ebp + 0x18]
mov ecx, dword [ecx + 0x18]
add ecx, eax
mov eax, edi
mov edx, ecx
mov dword [ebp - 0x14], ecx
sub edx, dword [ebp + 0x14]
or eax, 0x10000
cmp dword [ecx + 0x1c], eax
je 0x479fda
mov eax, dword [edx + 0x4c]
jmp 0x479fb0
mov eax, dword [ebp - 4]
lea esi, [edi + edi]
lea ecx, [esi - 2]
mov dword [eax + 0x48], edi
mov eax, dword [edx + 0x38]
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 4]
sub eax, dword [edi + 0x4c]
mov dword [edx + ecx*4 + 0x54], eax
mov eax, edx
mov eax, dword [eax + 0x38]
sub eax, dword [edi + 0x4c]
mov dword [edx + ecx*4 + 0x58], eax
mov eax, edx
cmp ecx, dword [eax + 0x50]
jb 0x47a00c
mov dword [eax + 0x50], esi
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4dd7b0]
add eax, ecx
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
jmp 0x479f61
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x60]
jbe 0x47a035
mov dword [edi + 0x60], eax
mov eax, dword [ebp - 4]
mov esi, 0xfffffc19
mov dword [ebp - 0x1c], eax
jmp 0x484a8e
mov eax, dword [ebp - 4]
cmp dword [eax + 0x44], 0xffffffff
je 0x47a0a4
mov eax, dword [eax + 0x4c]
cmp eax, 0xffffffff
je case.0x48547a.15
mov ecx, dword [ebp + 0x18]
mov ebx, dword [ecx + 0x18]
add ebx, eax
mov ecx, ebx
mov dword [ebp - 0x14], ebx
sub ecx, dword [ebp + 0x14]
mov eax, dword [ebx + 0x1c]
and eax, 0xffff0000
cmp eax, 0x40000
je 0x47a07e
mov eax, dword [ecx + 0x4c]
jmp 0x47a051
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov dword [ecx + 0x40], eax
mov eax, dword [ebp - 4]
mov dword [ebp - 4], ecx
mov eax, dword [eax + 0x3c]
mov dword [ecx + 0x3c], eax
add dword [ecx], 3
jmp 0x479f64
mov edx, dword [eax + 0x3c]
mov ecx, dword [eax + 0x38]
cmp ecx, edx
jne 0x47a0cb
mov eax, dword [edi + 0x78]
test al, 4
jne case.0x484d73.999
test al, 8
je 0x47a0cb
mov eax, dword [edi + 0x4c]
add eax, dword [edi + 0x34]
cmp edx, eax
je case.0x484d73.999
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jae 0x4886ed
mov edi, dword [ebp + 0x1c]
mov eax, dword [eax + 0x78]
or eax, dword [edi + 0x7c]
test eax, 0x20000000
je 0x4886eb
test bl, bl
je case.0x484d73.999
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x1c]
mov esi, dword [eax + 0x88]
test esi, esi
je 0x47a152
mov ebx, dword [ebp - 4]
lea edi, [eax + 0x54]
mov edx, dword [edi]
add ebx, 0x38
mov ecx, dword [ebx]
cmp ecx, edx
jae 0x47a139
push dword [ebp - 8]
add eax, 0x8c
push eax
push edx
push esi
push ecx
call fcn.0046b140
add esp, 0x14
test eax, eax
je 0x47a139
mov eax, 1
jmp 0x47a13b
xor eax, eax
mov edx, dword [ebp + 0x1c]
add edx, 0x8c
test eax, eax
je 0x47a19c
mov edi, dword [ebp + 0x1c]
xor esi, esi
jmp case.0x484d73.998
mov edi, dword [ebp - 4]
lea esi, [eax + 0x54]
lea ebx, [eax + 0x8c]
mov eax, dword [esi]
sub eax, dword [ebx]
mov ecx, dword [edi + 0x38]
cmp ecx, eax
ja 0x47a195
mov edx, dword [ebp + 0x1c]
mov al, byte [ecx]
cmp al, byte [edx + 0x90]
mov edx, dword [ebx]
jne 0x47a195
cmp edx, 1
je 0x47a18b
mov al, byte [ecx + 1]
mov ecx, dword [ebp + 0x1c]
cmp al, byte [ecx + 0x91]
jne 0x47a195
mov edi, dword [ebp + 0x1c]
xor esi, esi
jmp case.0x484d73.998
mov edx, ebx
lea ebx, [edi + 0x38]
mov edi, esi
mov eax, dword [ebp + 0x1c]
movzx eax, word [eax + 0x3c]
mov esi, eax
test ax, ax
je 0x47a1e7
mov eax, dword [edi]
mov ecx, dword [ebx]
dec eax
cmp ecx, eax
jne 0x47a1e7
mov eax, dword [ebp + 0x1c]
cmp dword [eax + 0x88], 0
jne 0x47a1e3
cmp dword [edx], 2
jne 0x47a1e3
mov edi, dword [ebp + 0x1c]
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne case.0x479f87.13
mov eax, edi
mov dword [eax + 0x1c], 1
cmp esi, 1
ja 0x47b9cf
mov edi, eax
jmp case.0x479f87.13
mov edi, dword [ebp + 0x1c]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47a229
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x5c]
ja 0x47a212
cmp dword [eax + 0x24], 0
je 0x47a222
mov dword [eax + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov edi, eax
jmp case.0x484d73.999
mov edx, dword [ebp - 8]
inc ecx
mov dword [eax + 0x38], ecx
test edx, edx
je 0x47a25d
cmp ecx, dword [edi + 0x54]
jae 0x47a25d
nop dword [eax]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x47a257
mov eax, dword [ebp - 4]
inc ecx
mov dword [eax + 0x38], ecx
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jb 0x47a240
mov eax, dword [ebp - 4]
mov edi, dword [ebp + 0x1c]
inc dword [eax]
jmp 0x479f64
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jb 0x47a2ab
movzx eax, word [eax + 0x3c]
mov edx, eax
test ax, ax
je 0x47a18b
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x5c]
ja 0x47a293
cmp dword [eax + 0x24], 0
je 0x47a18b
mov dword [eax + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov edi, dword [ebp + 0x1c]
lea eax, [ecx + 1]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
lea eax, [esi + 1]
mov dword [ecx], eax
jmp 0x479f64
mov eax, dword [ebp - 4]
test edx, edx
je 0x47a3cb
lea edi, [esi + 1]
mov dword [eax + 0xc], 1
mov dword [eax], edi
mov edx, 1
movzx eax, byte [edi]
cmp eax, 0xc0
jb 0x47a347
test al, 0x20
jne 0x47a2fc
mov eax, dword [ebp - 4]
mov edx, 2
mov dword [eax + 0xc], 2
jmp 0x47a34a
test al, 0x10
jne 0x47a311
mov eax, dword [ebp - 4]
mov edx, 3
mov dword [eax + 0xc], 3
jmp 0x47a347
test al, 8
jne 0x47a326
mov eax, dword [ebp - 4]
mov edx, 4
mov dword [eax + 0xc], 4
jmp 0x47a347
test al, 4
mov eax, dword [ebp - 4]
jne 0x47a33b
mov dword [eax + 0xc], 5
mov edx, 5
jmp 0x47a347
mov dword [eax + 0xc], 6
mov edx, 6
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x54]
mov eax, ecx
sub eax, esi
cmp edx, eax
jbe 0x47a3a0
mov edi, dword [ebp + 0x1c]
cmp esi, ecx
jb case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
mov eax, edi
cmp esi, dword [eax + 0x5c]
ja 0x47a386
cmp dword [eax + 0x24], 0
je 0x47a222
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, eax
jmp case.0x484d73.999
mov ebx, dword [ebp - 4]
mov cl, byte [esi]
inc esi
mov al, byte [edi]
inc edi
cmp al, cl
mov eax, ebx
mov dword [ebx + 0x38], esi
mov dword [ebx], edi
jne 0x47a3c1
add edx, 0xffffffff
mov dword [eax + 0xc], edx
jne 0x47a3a0
jmp 0x479f5e
mov edi, dword [ebp + 0x1c]
xor esi, esi
jmp 0x484a8e
mov ecx, dword [ebp + 0x1c]
mov edi, dword [eax + 0x38]
mov eax, dword [ecx + 0x54]
sub eax, edi
cmp eax, 1
jge 0x47a414
movzx eax, word [ecx + 0x3c]
mov ecx, eax
test ax, ax
je 0x47a18b
mov eax, dword [ebp + 0x1c]
cmp edi, dword [eax + 0x5c]
ja 0x47a3fc
cmp dword [eax + 0x24], 0
je 0x47a18b
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov cl, byte [edi]
lea eax, [edi + 1]
mov ebx, dword [ebp - 4]
mov dl, byte [esi + 1]
mov edi, dword [ebp + 0x1c]
mov dword [ebx + 0x38], eax
cmp dl, cl
jne case.0x484d73.999
lea eax, [esi + 2]
mov dword [ebx], eax
jmp 0x479f61
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x38]
mov dword [ebp - 0x2c], ebx
cmp ebx, dword [edi + 0x54]
jb 0x47a47d
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
mov eax, dword [ebp + 0x1c]
cmp ebx, dword [eax + 0x5c]
ja 0x47a466
cmp dword [eax + 0x24], 0
je 0x47a222
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, eax
jmp case.0x484d73.999
test edx, edx
je 0x47a779
mov ecx, dword [ebp - 4]
mov dword [eax + 0xc], 1
lea eax, [esi + 1]
mov dword [ebp + 8], eax
mov dword [ebp + 0xc], 1
mov dword [ecx], eax
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x47a500
test bl, 0x20
jne 0x47a4cf
movzx eax, byte [esi + 2]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [ebp + 0xc], 2
mov eax, ecx
mov dword [eax + 0xc], 2
jmp 0x47a503
test bl, 0x10
jne 0x47a532
movzx ecx, byte [esi + 2]
and ebx, 0xf
movzx eax, byte [esi + 3]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov dword [ebp + 0xc], 3
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0xc], 3
mov eax, dword [ebp - 4]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x2c]
movzx edx, byte [esi]
cmp ebx, 0x80
jae 0x47a60e
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x28]
mov al, byte [ecx + ebx]
cmp al, byte [edx + ecx]
je 0x47a5fb
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
test bl, 8
jne 0x47a571
movzx ecx, byte [esi + 2]
and ebx, 7
movzx eax, byte [esi + 3]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov dword [ebp + 0xc], 4
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0xc], 4
jmp 0x47a500
movzx eax, byte [esi + 2]
movzx ecx, byte [esi + 3]
and eax, 0x3f
movzx edx, byte [esi + 4]
and ecx, 0x3f
movzx esi, byte [esi + 5]
and edx, 0x3f
mov edi, dword [ebp + 8]
and esi, 0x3f
test bl, 4
jne 0x47a5c2
and ebx, 3
mov dword [ebp + 0xc], 5
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edx
mov dword [eax + 0xc], 5
shl ebx, 6
or ebx, esi
jmp 0x47a506
and ebx, 1
mov dword [ebp + 0xc], 6
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0xc], 6
jmp 0x47a506
mov ecx, dword [ebp - 4]
lea eax, [edi + 1]
mov dword [ecx], eax
lea eax, [esi + 1]
mov dword [ecx + 0x38], eax
jmp 0x479f5e
lea ecx, [esi + 1]
mov dword [eax + 0x38], ecx
cmp edx, 0xc0
jb 0x47a718
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47a641
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47a718
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47a66d
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47a718
lea eax, [ecx + 3]
mov dword [ebp - 0x2c], eax
test dl, 8
jne 0x47a6a1
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
jmp 0x47a712
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
mov dword [ebp - 0x10], eax
and edi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp - 0x28], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x28]
test dl, 4
jne 0x47a6eb
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x10]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, dword [ebp - 0x2c]
jmp 0x47a712
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, dword [ebp - 0x2c]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ecx, dword [ebp - 4]
mov eax, dword [ebp + 0xc]
add eax, dword [ebp + 8]
mov edi, dword [ebp + 0x1c]
mov dword [ecx], eax
cmp edx, ebx
je 0x479f61
mov eax, ebx
test eax, eax
jns 0x47a737
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x47a753
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov eax, dword [eax*4 + 0x4e2984]
add eax, ebx
cmp edx, eax
mov edx, dword [ebp - 8]
je 0x479f64
jmp case.0x484d73.999
cmp dword [ebp - 0x24], 0
je 0x47a7ef
movzx edx, byte [esi + 1]
movzx edi, byte [ebx]
cmp edx, 0x80
jae 0x47a7a4
mov eax, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x28]
mov al, byte [ecx + edx]
cmp al, byte [ecx + edi]
mov edi, dword [ebp + 0x1c]
je 0x47a809
jmp case.0x484d73.999
cmp edi, edx
je 0x47a806
mov eax, edx
test eax, eax
jns 0x47a7b1
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x47a7cd
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov eax, dword [eax*4 + 0x4e2984]
add eax, edx
cmp edi, eax
mov edi, dword [ebp + 0x1c]
je 0x47a809
jmp case.0x484d73.999
mov edx, dword [edi + 0x28]
movzx eax, byte [esi + 1]
movzx ecx, byte [ebx]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
je 0x47a809
jmp case.0x484d73.999
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
lea eax, [ebx + 1]
mov dword [ecx + 0x38], eax
lea eax, [esi + 2]
mov dword [ecx], eax
jmp 0x479f61
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
mov dword [ebp - 0x2c], ebx
cmp ebx, dword [eax + 0x54]
jb 0x47a866
movzx eax, word [eax + 0x3c]
mov ecx, eax
test ax, ax
je 0x47a18b
mov eax, dword [ebp + 0x1c]
cmp ebx, dword [eax + 0x5c]
ja 0x47a84e
cmp dword [eax + 0x24], 0
je 0x47a18b
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
lea eax, [esi + 1]
test edx, edx
je 0x47aaf2
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
lea ecx, [eax + 1]
movzx ebx, byte [eax]
mov eax, dword [ebp - 4]
mov dword [eax], ecx
cmp ebx, 0xc0
jb 0x47a978
lea edx, [ecx + 1]
test bl, 0x20
jne 0x47a8ad
movzx eax, byte [ecx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax], edx
jmp 0x47a975
lea esi, [ecx + 2]
test bl, 0x10
jne 0x47a8d8
movzx ecx, byte [ecx]
and ebx, 0xf
movzx eax, byte [edx]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax], esi
jmp 0x47a975
lea edi, [ecx + 3]
test bl, 8
jne 0x47a90b
movzx ecx, byte [ecx]
and ebx, 7
movzx eax, byte [edx]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax], edi
jmp 0x47a975
movzx edx, byte [edx]
lea eax, [ecx + 4]
movzx esi, byte [esi]
and edx, 0x3f
movzx edi, byte [edi]
and esi, 0x3f
mov dword [ebp + 0xc], eax
and edi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 4
jne 0x47a94a
and ebx, 3
shl ebx, 6
or ebx, eax
mov eax, dword [ebp + 0xc]
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
jmp 0x47a970
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 0x2c]
movzx edx, byte [ecx]
inc ecx
mov dword [eax + 0x38], ecx
cmp edx, 0xc0
jb 0x47aa86
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47a9af
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47aa86
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47a9db
movzx eax, byte [ecx]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47aa86
test dl, 8
jne 0x47aa0f
movzx eax, byte [ecx]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi]
mov esi, dword [ebp - 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 3]
mov dword [esi + 0x38], eax
jmp 0x47aa86
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
mov dword [ebp - 0x28], eax
and edi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp - 0x2c], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x2c]
test dl, 4
jne 0x47aa59
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x28]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, dword [ebp + 0xc]
jmp 0x47aa80
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, dword [ebp + 0xc]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
cmp ebx, edx
je case.0x484d73.999
cmp byte [ebp + 0xb], 0x20
jne 0x479f61
cmp ebx, 0x7f
jbe 0x47aadb
mov eax, ebx
test eax, eax
jns 0x47aaa9
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x47aac5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
add ebx, dword [eax*4 + 0x4e2984]
jmp 0x47aae2
mov eax, dword [edi + 0x2c]
movzx ebx, byte [eax + ebx]
cmp ebx, edx
mov edx, dword [ebp - 8]
jne 0x479f64
jmp case.0x484d73.999
cmp dword [ebp - 0x24], 0
lea ecx, [ebx + 1]
movzx edi, byte [ebx]
je 0x47ab83
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], ecx
movzx edx, byte [eax]
lea eax, [esi + 2]
mov dword [ebx], eax
cmp edx, edi
jne 0x47ab1c
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
cmp byte [ebp + 0xb], 0x20
jne 0x479f5e
cmp edx, 0x7f
jbe 0x47ab66
mov eax, edx
test eax, eax
jns 0x47ab34
add eax, 0x7f
sar eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x47ab50
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
add edx, dword [eax*4 + 0x4e2984]
jmp 0x47ab70
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x2c]
movzx edx, byte [eax + edx]
cmp edx, edi
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 8]
jne 0x479f64
jmp case.0x484d73.999
movzx edx, byte [eax]
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ecx
cmp edx, edi
je 0x47a18b
cmp byte [ebp + 0xb], 0x20
jne 0x47abac
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x2c]
movzx eax, byte [eax + edx]
cmp eax, edi
je 0x47a18b
lea eax, [esi + 2]
jmp 0x479f59
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
lea edx, [eax + 0x24]
add esi, 3
mov dword [edx], ecx
mov dword [eax + 0x20], ecx
mov dword [eax], esi
jmp 0x47acff
mov eax, dword [ebp - 4]
lea edx, [eax + 0x24]
mov dword [ebp - 0xc], 2
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [edx], ecx
mov dword [eax], esi
jmp 0x47acfc
mov eax, dword [ebp - 4]
lea edx, [eax + 0x24]
mov dword [ebp - 0xc], 1
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [edx], ecx
mov dword [eax], esi
jmp 0x47acfc
mov eax, dword [ebp - 4]
lea edx, [eax + 0x24]
mov dword [ebp - 0xc], 0
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [edx], ecx
mov dword [eax], esi
jmp 0x47acfc
mov eax, dword [ebp - 4]
inc esi
lea edx, [eax + 0x24]
mov dword [ebp - 0xc], 2
mov dword [eax + 0x20], 0
mov dword [edx], 0xffffffff
mov dword [eax], esi
jmp 0x47acfc
mov eax, dword [ebp - 4]
inc esi
lea edx, [eax + 0x24]
mov dword [ebp - 0xc], 2
mov dword [eax + 0x20], 1
mov dword [edx], 0xffffffff
mov dword [eax], esi
jmp 0x47acfc
mov eax, dword [ebp - 4]
inc esi
lea edx, [eax + 0x24]
mov dword [ebp - 0xc], 2
mov dword [eax + 0x20], 0
mov dword [edx], 1
mov dword [eax], esi
jmp 0x47acfc
movzx ecx, byte [esi]
cmp bl, 0x2e
mov edx, dword [ebp - 4]
sbb eax, eax
inc esi
and eax, 0xfffffff3
add eax, 0x2e
sub ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax], esi
mov eax, dword [ecx*4 + 0x4fdb98]
mov dword [edx + 0x20], eax
add edx, 0x24
mov eax, dword [ecx*4 + 0x4fdbc4]
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x4fdbf0]
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x47b1a7
mov dword [eax + 0xc], 1
mov dword [eax + 8], esi
movzx ebx, byte [esi]
cmp ebx, 0xc0
jb 0x47b190
lea ecx, [esi + 2]
test bl, 0x20
jne 0x47ad48
movzx edx, byte [esi + 1]
and ebx, 0x1f
and edx, 0x3f
shl ebx, 6
mov dword [eax + 0xc], 2
or edx, ebx
mov dword [eax], ecx
jmp 0x47ae35
test bl, 0x10
jne 0x47ad79
movzx edx, byte [esi + 1]
and ebx, 0xf
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or edx, ebx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0xc], 3
lea eax, [esi + 3]
jmp 0x47ae30
test bl, 8
jne 0x47adb3
movzx edx, byte [esi + 1]
and ebx, 7
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0xc], 4
lea eax, [esi + 4]
jmp 0x47ae30
movzx edx, byte [esi + 4]
movzx eax, byte [esi + 1]
and edx, 0x3f
movzx ecx, byte [ecx]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
and edi, 0x3f
mov dword [ebp + 0xc], edx
mov edx, ebx
test bl, 4
jne 0x47adff
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov dword [eax + 0xc], 5
shl edx, 6
lea eax, [esi + 5]
or edx, dword [ebp + 0xc]
jmp 0x47ae30
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, dword [ebp + 0xc]
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0xc], 6
lea eax, [esi + 6]
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
cmp byte [ebp + 0xb], 0x2e
jb 0x47ae7c
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov ecx, dword [eax*4 + 0x4e2984]
add ecx, edx
cmp ecx, edx
je 0x47ae7c
mov eax, dword [ebp - 4]
add eax, 0x32
push eax
push ecx
call fcn.0046d600
add esp, 8
jmp 0x47ae7e
xor eax, eax
mov ecx, dword [ebp - 4]
mov dword [ebp - 0x2c], 1
mov dword [ecx + 0x14], eax
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x20]
mov dword [ebp + 0xc], edx
cmp edx, 1
jb 0x47afc2
nop dword [eax]
mov ecx, dword [ebp + 0x1c]
mov ebx, dword [eax + 0x38]
mov edi, dword [eax + 0xc]
mov ecx, dword [ecx + 0x54]
mov eax, ecx
sub eax, edi
mov dword [ebp + 8], ecx
cmp ebx, eax
ja 0x47af20
mov eax, dword [ebp - 4]
mov esi, edi
mov ecx, ebx
mov edx, dword [eax + 8]
sub esi, 4
jb 0x47aed7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x47aee0
add ecx, 4
add edx, 4
sub esi, 4
jae 0x47aec6
cmp esi, 0xfffffffc
je 0x47afa3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x47af1d
cmp esi, 0xfffffffd
je 0x47afa3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x47af1d
cmp esi, 0xfffffffe
je 0x47afa3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x47af1d
cmp esi, 0xffffffff
je 0x47afa3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x47afa3
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x14]
test edi, edi
je 0x47b102
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x47b102
mov edx, dword [ebp - 4]
mov esi, edi
add edx, 0x32
mov ecx, ebx
sub esi, 4
jb 0x47af61
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x47af66
add ecx, 4
add edx, 4
sub esi, 4
jae 0x47af50
cmp esi, 0xfffffffc
je 0x47afa3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x47b102
cmp esi, 0xfffffffd
je 0x47afa3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x47b102
cmp esi, 0xfffffffe
je 0x47afa3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x47b102
cmp esi, 0xffffffff
je 0x47afa3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x47b102
mov ecx, dword [ebp - 4]
lea eax, [ebx + edi]
mov edx, dword [ebp - 0x2c]
inc edx
mov dword [ebp - 0x2c], edx
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 4]
cmp edx, dword [ebp + 0xc]
jbe 0x47aea0
mov edx, dword [ebp + 0xc]
mov ecx, dword [eax + 0x24]
mov dword [ebp - 0x2c], ecx
cmp edx, ecx
je 0x479f5e
cmp dword [ebp - 0xc], 0
je 0x48814e
mov ebx, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov dword [ebx + 4], eax
cmp edx, ecx
jae 0x47b17b
nop dword [eax + eax]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0x1c]
mov ebx, dword [eax + 0x38]
mov edi, dword [eax + 0xc]
mov ecx, dword [ecx + 0x54]
mov eax, ecx
sub eax, edi
mov dword [ebp + 8], ecx
cmp ebx, eax
ja 0x47b076
mov eax, dword [ebp - 4]
mov esi, edi
mov ecx, ebx
mov edx, dword [eax + 8]
sub esi, 4
jb 0x47b031
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x47b03a
add ecx, 4
add edx, 4
sub esi, 4
jae 0x47b020
cmp esi, 0xfffffffc
je 0x47b0e7
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x47b073
cmp esi, 0xfffffffd
je 0x47b0e7
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x47b073
cmp esi, 0xfffffffe
je 0x47b0e7
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x47b073
cmp esi, 0xffffffff
je 0x47b0e7
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x47b0e7
mov ecx, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x14]
test edi, edi
je 0x47b147
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x47b147
mov edx, dword [ebp - 4]
mov esi, edi
add edx, 0x32
mov ecx, ebx
sub esi, 4
jb 0x47b0b1
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x47b0b6
add ecx, 4
add edx, 4
sub esi, 4
jae 0x47b0a0
cmp esi, 0xfffffffc
je 0x47b0e7
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x47b147
cmp esi, 0xfffffffd
je 0x47b0e7
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x47b147
cmp esi, 0xfffffffe
je 0x47b0e7
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x47b147
cmp esi, 0xffffffff
je 0x47b0e7
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x47b147
mov edx, dword [ebp + 0xc]
lea eax, [ebx + edi]
mov ebx, dword [ebp - 4]
inc edx
mov dword [ebp + 0xc], edx
mov dword [ebx + 0x38], eax
cmp edx, dword [ebp - 0x2c]
jb 0x47aff0
jmp 0x47b17b
mov eax, dword [ebp + 0x1c]
cmp ebx, dword [eax + 0x54]
jb 0x47a18b
movzx eax, word [eax + 0x3c]
mov ecx, eax
test ax, ax
je 0x47a18b
mov eax, dword [ebp + 0x1c]
cmp ebx, dword [eax + 0x5c]
ja 0x47b12f
cmp dword [eax + 0x24], 0
je 0x47a18b
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov eax, dword [ebp + 0x1c]
cmp ebx, dword [eax + 0x54]
jb 0x47b178
movzx eax, word [eax + 0x3c]
mov ecx, eax
test ax, ax
je 0x47b178
mov eax, dword [ebp + 0x1c]
cmp ebx, dword [eax + 0x5c]
ja 0x47b168
cmp dword [eax + 0x24], 0
je 0x47b178
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov ebx, dword [ebp - 4]
cmp dword [ebp - 0xc], 2
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 8]
je 0x479f64
jmp 0x485b4c
mov ecx, dword [ebp - 4]
lea eax, [esi + 1]
mov esi, ecx
mov dword [ecx], eax
mov eax, ecx
mov ecx, dword [ebp - 8]
mov dword [eax + 0x28], ebx
add eax, 0x24
jmp 0x47b1b7
movzx ebx, byte [esi]
mov dword [eax + 0x28], ebx
lea eax, [esi + 1]
mov esi, dword [ebp - 4]
mov dword [esi], eax
mov eax, edx
cmp byte [ebp + 0xb], 0x2e
jb 0x47b326
cmp dword [ebp - 0x24], 0
je 0x47b1fd
test ecx, ecx
jne 0x47b1fd
cmp ebx, 0x7f
jbe 0x47b1fd
mov eax, ebx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, ebx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov eax, dword [eax*4 + 0x4e2984]
add eax, ebx
jmp 0x47b204
mov eax, dword [edi + 0x2c]
movzx eax, byte [eax + ebx]
mov dword [esi + 0x2c], eax
mov edx, 1
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x20]
cmp esi, edx
jb 0x47b243
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jae 0x47b29b
mov ebx, dword [ebp - 4]
movzx eax, byte [ecx]
cmp dword [ebx + 0x28], eax
je 0x47b235
cmp dword [ebx + 0x2c], eax
jne 0x47a18b
lea eax, [ecx + 1]
inc edx
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 4]
cmp edx, esi
jbe 0x47b216
mov edx, dword [eax + 0x24]
mov edi, dword [ebp + 0x1c]
cmp esi, edx
je 0x479f61
mov edi, dword [ebp - 0xc]
test edi, edi
je 0x4851c8
mov ebx, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov dword [ebx + 4], eax
cmp esi, edx
jae 0x47b300
nop dword [eax]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jae 0x47b2d4
mov ebx, dword [ebp - 4]
movzx eax, byte [ecx]
cmp dword [ebx + 0x28], eax
je 0x47b28e
cmp dword [ebx + 0x2c], eax
jne 0x47b300
inc esi
lea eax, [ecx + 1]
mov dword [ebx + 0x38], eax
cmp esi, edx
jb 0x47b270
jmp 0x47b300
movzx eax, word [eax + 0x3c]
mov edx, eax
test ax, ax
je 0x47a18b
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x5c]
ja 0x47b2bc
cmp dword [eax + 0x24], 0
je 0x47a18b
mov dword [eax + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
movzx eax, word [eax + 0x3c]
mov edx, eax
test ax, ax
je 0x47b2fd
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x5c]
ja 0x47b2ed
cmp dword [eax + 0x24], 0
je 0x47b2fd
mov dword [eax + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov ebx, dword [ebp - 4]
mov edx, dword [ebp - 8]
cmp edi, 2
mov edi, dword [ebp + 0x1c]
je 0x479f64
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
je 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x1a
jmp 0x488611
mov ebx, dword [esi + 0x20]
mov edi, 1
cmp ebx, edi
jb 0x47b362
mov eax, dword [ebp - 4]
mov esi, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp esi, dword [eax + 0x54]
jae 0x47b3b6
mov eax, dword [ebp - 4]
movzx edx, byte [esi]
mov ecx, dword [eax + 0x28]
lea eax, [esi + 1]
mov esi, dword [ebp - 4]
mov dword [esi + 0x38], eax
cmp ecx, edx
jne 0x47a18b
inc edi
cmp edi, ebx
jbe 0x47b332
lea eax, [esi + 0x24]
mov edx, dword [eax]
mov edi, dword [ebp + 0x1c]
cmp ebx, edx
je 0x479f61
mov edi, dword [ebp - 0xc]
test edi, edi
je 0x4880a3
mov eax, dword [ebp - 4]
mov ecx, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov dword [ecx + 4], eax
cmp ebx, edx
jae 0x47b418
nop
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jae 0x47b3ef
mov esi, dword [ebp - 4]
movzx eax, byte [ecx]
cmp dword [esi + 0x28], eax
jne 0x47b418
inc ebx
lea eax, [ecx + 1]
mov dword [esi + 0x38], eax
cmp ebx, edx
jb 0x47b390
jmp 0x47b418
movzx eax, word [eax + 0x3c]
mov ecx, eax
test ax, ax
je 0x47a18b
mov eax, dword [ebp + 0x1c]
cmp esi, dword [eax + 0x5c]
ja 0x47b3d7
cmp dword [eax + 0x24], 0
je 0x47a18b
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
movzx eax, word [eax + 0x3c]
mov edx, eax
test ax, ax
je 0x47b418
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x5c]
ja 0x47b408
cmp dword [eax + 0x24], 0
je 0x47b418
mov dword [eax + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov edx, dword [ebp - 8]
cmp edi, 2
mov edi, dword [ebp + 0x1c]
je 0x479f64
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jbe 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x1c
jmp 0x488611
movzx ebx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ebx, 8
or ebx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [eax + 0x24], ebx
mov dword [eax + 0x20], ebx
mov dword [eax], esi
jmp 0x47b5a6
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], 1
mov dword [ebp + 0xc], 0
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [eax + 0x24], ecx
mov dword [eax], esi
jmp 0x47b5a9
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], 0
mov dword [ebp + 0xc], 0
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [eax + 0x24], ecx
mov dword [eax], esi
jmp 0x47b5a9
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0xc], 2
mov dword [ebp + 0xc], 0
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 0xffffffff
mov dword [eax], esi
jmp 0x47b5a9
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0xc], 2
mov dword [ebp + 0xc], 1
mov dword [eax + 0x20], 1
mov dword [eax + 0x24], 0xffffffff
mov dword [eax], esi
jmp 0x47b5a9
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0xc], 2
mov dword [ebp + 0xc], 0
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 1
mov dword [eax], esi
jmp 0x47b5a9
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], 2
mov dword [ebp + 0xc], 0
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov dword [eax + 0x24], ecx
mov dword [eax], esi
jmp 0x47b5a9
movzx ecx, byte [esi]
cmp bl, 0x48
mov edx, dword [ebp - 4]
sbb eax, eax
and eax, 0xfffffff3
add eax, 0x48
sub ecx, eax
mov eax, dword [ebp - 4]
inc esi
mov ebx, dword [ecx*4 + 0x4fdb98]
mov dword [eax], esi
mov dword [eax + 0x20], ebx
mov eax, dword [ecx*4 + 0x4fdbc4]
mov dword [edx + 0x24], eax
mov eax, dword [ecx*4 + 0x4fdbf0]
mov dword [ebp - 0xc], eax
mov dword [ebp + 0xc], ebx
mov ecx, dword [ebp - 4]
movzx eax, byte [esi]
inc esi
mov edx, eax
mov dword [ecx + 0x28], eax
mov dword [ecx], esi
mov ecx, dword [ebp - 8]
test ecx, ecx
je 0x47b6d8
cmp eax, 0xc0
jb 0x47b6d8
lea edi, [esi + 1]
test al, 0x20
jne 0x47b5ef
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x28], edx
mov dword [eax], edi
jmp 0x47b6db
lea ebx, [esi + 2]
test al, 0x10
jne 0x47b61e
mov edx, eax
movzx eax, byte [esi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x28], edx
mov dword [eax], ebx
jmp 0x47b6d8
lea ecx, [esi + 3]
test al, 8
jne 0x47b658
mov edx, eax
movzx eax, byte [esi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x28], edx
mov dword [eax], ecx
jmp 0x47b6d5
movzx edx, byte [esi + 3]
lea ecx, [esi + 4]
movzx edi, byte [edi]
and edx, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], ecx
and ebx, 0x3f
movzx ecx, byte [esi]
and ecx, 0x3f
mov dword [ebp - 0x2c], edx
mov edx, eax
test al, 4
jne 0x47b6a3
mov eax, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp - 0x2c]
mov dword [eax + 0x28], edx
mov eax, dword [ebp - 0x28]
jmp 0x47b6d0
movzx eax, byte [esi + 4]
and edx, 1
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp - 0x2c]
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x28], edx
lea eax, [esi + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx], eax
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 4]
cmp byte [ebp + 0xb], 0x48
jb 0x47bb5d
test ecx, ecx
jne 0x47b6ee
cmp dword [ebp - 0x24], ecx
je 0x47b723
cmp edx, 0x7f
jbe 0x47b723
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
mov ecx, dword [ebp - 8]
lea eax, [eax + eax*2]
mov edi, dword [eax*4 + 0x4e2984]
add edi, edx
jmp 0x47b72d
mov eax, dword [ebp + 0x1c]
mov eax, dword [eax + 0x2c]
movzx edi, byte [eax + edx]
mov eax, dword [ebp - 4]
test ecx, ecx
mov dword [eax + 0x2c], edi
mov esi, dword [eax + 0x20]
mov ecx, esi
mov dword [ebp + 0xc], esi
je 0x47b8de
mov eax, 1
mov dword [ebp + 8], eax
cmp esi, eax
jb 0x47b922
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
mov edx, dword [ecx + 0x38]
cmp edx, dword [edi + 0x54]
jae 0x47b8a6
movzx ecx, byte [edx]
inc edx
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], edx
cmp ecx, 0xc0
jb 0x47b7c1
lea esi, [edx + 1]
test cl, 0x20
jne 0x47b794
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, ebx
mov dword [eax + 0x38], esi
jmp 0x47b7be
lea edi, [edx + 2]
test cl, 0x10
jne 0x47b7ed
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 4]
cmp dword [edx + 0x28], ecx
je case.0x484d73.999
cmp dword [edx + 0x2c], ecx
je case.0x484d73.999
mov ecx, dword [ebp - 4]
inc eax
mov dword [ebp + 8], eax
mov ecx, dword [ecx + 0x20]
cmp eax, ecx
jbe 0x47b756
jmp 0x47b922
lea ebx, [edx + 3]
test cl, 8
jne 0x47b821
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47b7bb
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x47b86f
mov edx, dword [ebp - 4]
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x2c]
shl ecx, 6
or ecx, esi
mov dword [edx + 0x38], eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
jmp 0x47b7c4
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
mov eax, dword [ebp + 8]
jmp 0x47b7c4
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
mov eax, dword [ebp + 0x1c]
cmp edx, dword [eax + 0x5c]
ja 0x47b8c7
cmp dword [eax + 0x24], 0
je 0x47a222
mov dword [eax + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
mov edi, eax
jmp case.0x484d73.999
mov ebx, 1
cmp esi, ebx
jb 0x47b925
mov ecx, esi
nop dword [eax]
mov esi, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp esi, dword [eax + 0x54]
jae 0x47b99e
movzx eax, byte [esi]
cmp edx, eax
je 0x47a18b
cmp edi, eax
je 0x47a18b
lea eax, [esi + 1]
inc ebx
mov esi, dword [ebp - 4]
mov dword [esi + 0x38], eax
mov eax, esi
cmp ebx, ecx
jbe 0x47b8f0
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x24]
mov dword [ebp + 8], ebx
cmp ecx, ebx
je 0x479f5e
cmp dword [ebp - 0xc], 0
je 0x487f46
cmp dword [ebp - 8], 0
mov edx, dword [eax + 0x38]
mov dword [eax + 4], edx
je 0x47baf0
mov esi, dword [ebp + 0xc]
cmp esi, ebx
jae 0x47bab0
nop dword [eax + eax]
mov edi, dword [ebp + 0x1c]
mov eax, 1
cmp edx, dword [edi + 0x54]
jae 0x47bac8
movzx ecx, byte [edx]
cmp ecx, 0xc0
jb 0x47ba90
movzx eax, byte [edx + 1]
and eax, 0x3f
test cl, 0x20
jne 0x47b9db
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x47ba90
movzx eax, word [eax + 0x3c]
mov edi, dword [ebp + 0x1c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp esi, dword [edi + 0x5c]
ja 0x47b9bf
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
jbe case.0x484d73.999
pop edi
pop esi
mov eax, 0xfffffffe
pop ebx
mov esp, ebp
pop ebp
ret
test cl, 0x10
jne 0x47b9fe
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x47ba90
test cl, 8
jne 0x47ba2a
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x47ba90
movzx esi, byte [edx + 2]
movzx edi, byte [edx + 3]
and esi, 0x3f
movzx ebx, byte [edx + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x47ba62
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, 5
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x47ba8a
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
mov eax, 6
mov esi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov edi, dword [ebp - 4]
cmp dword [edi + 0x28], ecx
je 0x47bab0
cmp dword [edi + 0x2c], ecx
je 0x47bab0
add edx, eax
inc esi
mov dword [ebp + 0xc], esi
mov eax, edi
mov dword [eax + 0x38], edx
cmp esi, ebx
jb 0x47b960
mov edi, dword [ebp + 0x1c]
cmp dword [ebp - 0xc], 2
mov edx, dword [ebp - 8]
je 0x479f64
mov ebx, dword [ebp - 4]
jmp 0x485d0c
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x47bab3
cmp edx, dword [edi + 0x5c]
ja 0x47bade
cmp dword [edi + 0x24], 0
je 0x47bab3
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x47bab3
mov ecx, dword [ebp + 0xc]
mov edi, dword [ebp + 0x1c]
cmp ecx, ebx
jae 0x47bb48
nop word [eax + eax]
cmp edx, dword [edi + 0x54]
jae 0x47bb22
mov esi, dword [ebp - 4]
movzx eax, byte [edx]
cmp dword [esi + 0x28], eax
je 0x47bb48
cmp dword [esi + 0x2c], eax
je 0x47bb48
mov eax, esi
inc edx
inc ecx
mov dword [eax + 0x38], edx
cmp ecx, ebx
jb 0x47bb00
jmp 0x47bb48
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x47bb48
cmp edx, dword [edi + 0x5c]
ja 0x47bb38
cmp dword [edi + 0x24], 0
je 0x47bb48
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
cmp dword [ebp - 0xc], 2
mov edx, dword [ebp - 8]
je 0x479f64
mov ebx, dword [ebp - 4]
jmp 0x4852ef
test ecx, ecx
je 0x47bcf8
mov esi, dword [ebp + 0xc]
mov eax, 1
mov dword [ebp + 8], eax
cmp esi, eax
jb 0x47bd3b
mov ecx, dword [ebp - 4]
mov edi, dword [ebp + 0x1c]
nop
mov edx, dword [ecx + 0x38]
cmp edx, dword [edi + 0x54]
jae 0x47bcc5
movzx ecx, byte [edx]
inc edx
mov esi, dword [ebp - 4]
mov dword [esi + 0x38], edx
cmp ecx, 0xc0
jb 0x47bbe9
lea esi, [edx + 1]
test cl, 0x20
jne 0x47bbbc
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47bbe6
lea edi, [edx + 2]
test cl, 0x10
jne 0x47bc0c
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 4]
cmp dword [edx + 0x28], ecx
je case.0x484d73.999
mov ecx, dword [ebp - 4]
inc eax
mov dword [ebp + 8], eax
mov esi, dword [ecx + 0x20]
cmp eax, esi
jbe 0x47bb80
jmp 0x47bd3b
lea ebx, [edx + 3]
test cl, 8
jne 0x47bc40
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47bbe3
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x47bc8e
mov edx, dword [ebp - 4]
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x2c]
shl ecx, 6
or ecx, esi
mov dword [edx + 0x38], eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
jmp 0x47bbec
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
mov eax, dword [ebp + 8]
jmp 0x47bbec
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47bce3
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov edi, dword [ebp + 0xc]
mov ebx, 1
mov esi, edi
cmp edi, ebx
jb 0x47bd41
jmp 0x47bd13
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp edi, dword [eax + 0x54]
jae 0x47bdb0
movzx ecx, byte [edi]
lea eax, [edi + 1]
mov edi, dword [ebp - 4]
mov dword [edi + 0x38], eax
cmp edx, ecx
je 0x47a18b
inc ebx
cmp ebx, esi
jbe 0x47bd10
mov edi, dword [ebp + 0xc]
mov ecx, dword [ebp - 8]
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x24]
mov dword [ebp + 8], ebx
cmp esi, ebx
je 0x479f5e
cmp dword [ebp - 0xc], 0
je 0x487f5b
mov edx, dword [eax + 0x38]
mov dword [eax + 4], edx
test ecx, ecx
je 0x47befa
cmp edi, ebx
jae 0x47beb8
mov ecx, dword [ebp + 0x1c]
mov eax, 1
cmp edx, dword [ecx + 0x54]
jae 0x47bed0
movzx ecx, byte [edx]
cmp ecx, 0xc0
jb 0x47be9d
movzx eax, byte [edx + 1]
and eax, 0x3f
test cl, 0x20
jne 0x47bde8
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov eax, 2
jmp 0x47be9d
movzx eax, word [eax + 0x3c]
mov ecx, eax
test ax, ax
je 0x485949
mov eax, dword [ebp + 0x1c]
cmp edi, dword [eax + 0x5c]
mov edi, eax
ja 0x47bdd3
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
test cl, 0x10
jne 0x47be0b
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x47be9d
test cl, 8
jne 0x47be37
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x47be9d
movzx esi, byte [edx + 2]
movzx edi, byte [edx + 3]
and esi, 0x3f
movzx ebx, byte [edx + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x47be6f
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, 5
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x47be97
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
mov eax, 6
mov edi, dword [ebp + 0xc]
mov ebx, dword [ebp + 8]
mov esi, dword [ebp - 4]
cmp dword [esi + 0x28], ecx
je 0x47beb8
add edx, eax
inc edi
mov dword [ebp + 0xc], edi
mov eax, esi
mov dword [eax + 0x38], edx
cmp edi, ebx
jb 0x47bd72
mov edi, dword [ebp + 0x1c]
cmp dword [ebp - 0xc], 2
mov edx, dword [ebp - 8]
je 0x479f64
mov ebx, dword [ebp - 4]
jmp 0x485ebd
mov edi, ecx
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x47bebb
cmp edx, dword [edi + 0x5c]
ja 0x47bee8
cmp dword [edi + 0x24], 0
je 0x47bebb
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x47bebb
cmp edi, ebx
jae 0x47bf1e
nop
mov eax, dword [ebp + 0x1c]
cmp edx, dword [eax + 0x54]
jae 0x47bf36
mov ecx, dword [ebp - 4]
movzx eax, byte [edx]
cmp dword [ecx + 0x28], eax
je 0x47bf1e
mov eax, ecx
inc edx
inc edi
mov dword [eax + 0x38], edx
cmp edi, ebx
jb 0x47bf00
mov edi, dword [ebp + 0x1c]
cmp dword [ebp - 0xc], 2
mov edx, dword [ebp - 8]
je 0x479f64
mov ebx, dword [ebp - 4]
jmp 0x48538a
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x47bf21
cmp edx, dword [edi + 0x5c]
ja 0x47bf4e
cmp dword [edi + 0x24], 0
je 0x47bf21
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x47bf21
mov eax, dword [ebp - 4]
lea edi, [esi + 1]
add esi, 0x21
mov dword [eax + 8], edi
mov dword [eax], esi
movzx ecx, byte [esi]
lea eax, [ecx - 0x62]
cmp eax, 0xb
ja case.default.0x47bf84
movzx eax, byte [eax + 0x4889d4]
jmp dword [eax*4 + 0x4889cc]
mov edx, dword [ebp - 4]
lea eax, [esi + 1]
mov ebx, dword [ebp - 4]
mov dword [edx], eax
mov eax, dword [ebp - 4]
mov edx, dword [ecx*4 + 0x4fda10]
mov dword [eax + 0x20], edx
mov eax, dword [ecx*4 + 0x4fda3c]
mov dword [ebx + 0x24], eax
mov ebx, dword [ecx*4 + 0x4fda68]
mov dword [ebp - 0xc], ebx
jmp 0x47c019
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x20], edx
movzx ecx, byte [esi + 3]
movzx eax, byte [esi + 4]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x24], ecx
mov eax, ecx
mov ecx, 0xffffffff
cmove eax, ecx
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x24], eax
movzx eax, byte [esi]
mov eax, dword [eax*4 + 0x4fda68]
mov dword [ebp - 0xc], eax
lea eax, [esi + 5]
mov dword [ecx], eax
jmp 0x47c019
mov eax, dword [ebp - 4]
mov edx, 1
mov dword [eax + 0x24], 1
mov dword [eax + 0x20], 1
cmp dword [ebp - 8], 0
mov esi, 1
mov dword [ebp + 0xc], edx
mov eax, edx
je 0x47c23d
mov dword [ebp - 0x10], esi
cmp edx, esi
jb 0x47c192
mov edi, dword [ebp + 0x1c]
nop dword [eax + eax]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jae 0x47c20a
movzx ebx, byte [ecx]
inc ecx
mov dword [eax + 0x38], ecx
cmp ebx, 0xc0
jb 0x47c157
lea edx, [ecx + 1]
test bl, 0x20
jne 0x47c083
movzx eax, byte [ecx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edx
jmp 0x47c154
lea esi, [ecx + 2]
test bl, 0x10
jne 0x47c0af
movzx ecx, byte [ecx]
and ebx, 0xf
movzx eax, byte [edx]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47c151
lea edi, [ecx + 3]
test bl, 8
jne 0x47c0e3
movzx ecx, byte [ecx]
and ebx, 7
movzx eax, byte [edx]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47c14e
movzx edx, byte [edx]
lea eax, [ecx + 4]
movzx esi, byte [esi]
and edx, 0x3f
movzx edi, byte [edi]
and esi, 0x3f
mov dword [ebp - 0x2c], eax
and edi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 4
jne 0x47c122
and ebx, 3
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 0x2c]
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
jmp 0x47c148
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
cmp ebx, 0xff
jbe 0x47c165
cmp byte [ebp + 0xb], 0x6e
jmp 0x47c17a
mov eax, dword [eax + 8]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.0x484d73.999
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0x10], esi
mov eax, dword [eax + 0x20]
cmp esi, eax
jbe 0x47c040
mov edi, dword [ebp - 4]
mov ebx, dword [edi + 0x24]
mov dword [ebp - 0x2c], ebx
cmp eax, ebx
je 0x479f5e
cmp dword [ebp - 0xc], 0
je 0x487f6e
mov edx, dword [ebp - 8]
mov eax, edi
mov edi, dword [eax + 0x38]
mov dword [eax + 4], edi
mov eax, dword [eax + 0x24]
test edx, edx
je 0x47c3fe
cmp dword [ebp + 0xc], eax
jae 0x47c3dc
nop dword [eax]
mov edx, dword [ebp + 0x1c]
mov esi, 1
cmp edi, dword [edx + 0x54]
jae 0x47c3b6
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x47c371
test bl, 0x20
jne 0x47c2bd
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov esi, 2
jmp 0x47c369
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47c228
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
cmp edx, 1
jb 0x47c192
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp ecx, dword [eax + 0x54]
jae 0x47c288
movzx edx, byte [ecx]
lea eax, [ecx + 1]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ecx, edx
and ecx, 7
shr edx, 3
mov eax, 1
shl eax, cl
test byte [edx + edi], al
mov eax, dword [ebp - 4]
je 0x47a3c1
mov eax, dword [eax + 0x20]
inc esi
cmp esi, eax
jbe 0x47c246
jmp 0x47c192
mov edi, eax
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47c2a8
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
test bl, 0x10
jne 0x47c2df
movzx ecx, byte [edi + 1]
and ebx, 0xf
movzx eax, byte [edi + 2]
and ecx, 0x3f
shl ebx, 6
mov esi, 3
or ebx, ecx
jmp 0x47c369
test bl, 8
jne 0x47c30a
movzx ecx, byte [edi + 1]
and ebx, 7
movzx eax, byte [edi + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x47c369
movzx eax, byte [edi + 1]
movzx ecx, byte [edi + 2]
and eax, 0x3f
movzx edx, byte [edi + 3]
and ecx, 0x3f
movzx esi, byte [edi + 4]
and edx, 0x3f
and esi, 0x3f
test bl, 4
jne 0x47c349
and ebx, 3
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, esi
mov esi, 5
jmp 0x47c371
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, esi
mov esi, 6
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp ebx, 0xff
jbe 0x47c37f
cmp byte [ebp + 0xb], 0x6e
jmp 0x47c397
mov eax, dword [ebp - 4]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
mov eax, dword [eax + 8]
test byte [ebx + eax], dl
je 0x47c3b1
mov eax, dword [ebp - 4]
add edi, esi
mov dword [eax + 0x38], edi
mov eax, dword [ebp + 0xc]
inc eax
mov dword [ebp + 0xc], eax
cmp eax, dword [ebp - 0x2c]
jb 0x47c1d0
mov edi, dword [ebp + 0x1c]
jmp 0x47c3e3
movzx eax, word [edx + 0x3c]
mov ecx, eax
test ax, ax
je 0x47c3e1
cmp edi, dword [edx + 0x5c]
mov edi, edx
ja 0x47c3ce
cmp dword [edi + 0x24], 0
je 0x47c3e3
mov dword [edi + 0x1c], esi
cmp ecx, 1
ja 0x47b9cf
jmp 0x47c3e3
mov edi, dword [ebp + 0x1c]
jmp 0x47c3e6
mov edi, edx
mov edx, dword [ebp - 8]
cmp dword [ebp - 0xc], 2
je 0x479f64
mov ebx, dword [ebp - 4]
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xc9
jmp 0x488611
cmp dword [ebp + 0xc], eax
jae 0x47c469
mov edx, dword [ebp + 0x1c]
cmp edi, dword [edx + 0x54]
jae 0x47c43f
mov eax, dword [ebp - 4]
mov edx, 1
movzx esi, byte [edi]
mov ecx, esi
shr esi, 3
and ecx, 7
mov eax, dword [eax + 8]
shl edx, cl
test byte [esi + eax], dl
je 0x47c43a
mov eax, dword [ebp - 4]
inc edi
mov dword [eax + 0x38], edi
mov eax, dword [ebp + 0xc]
inc eax
mov dword [ebp + 0xc], eax
cmp eax, ebx
jb 0x47c403
mov edi, dword [ebp + 0x1c]
jmp 0x47c470
movzx eax, word [edx + 0x3c]
mov ecx, eax
test ax, ax
je 0x47c46e
cmp edi, dword [edx + 0x5c]
mov edi, edx
ja 0x47c457
cmp dword [edi + 0x24], 0
je 0x47c470
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x47c470
mov edi, dword [ebp + 0x1c]
jmp 0x47c473
mov edi, edx
mov edx, dword [ebp - 8]
cmp dword [ebp - 0xc], 2
je 0x479f64
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jb case.0x484d73.999
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x18
jmp 0x488611
mov ecx, dword [ebp - 4]
lea eax, [esi + 3]
mov dword [ecx + 8], eax
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl edx, 8
or edx, eax
mov eax, ecx
add edx, esi
mov dword [eax], edx
movzx ecx, byte [edx]
lea eax, [ecx - 0x62]
cmp eax, 0xb
ja case.default.0x47c4c9
movzx eax, byte [eax + 0x4889e8]
jmp dword [eax*4 + 0x4889e0]
mov ebx, dword [ecx*4 + 0x4fda10]
lea eax, [edx + 1]
mov edx, dword [ebp - 4]
mov edi, dword [ecx*4 + 0x4fda68]
mov dword [ebp - 0xc], edi
mov dword [edx], eax
mov eax, edx
lea esi, [eax + 0x20]
lea edx, [eax + 0x24]
mov dword [esi], ebx
mov eax, dword [ecx*4 + 0x4fda3c]
mov dword [ebp - 0x10], edx
mov dword [edx], eax
jmp 0x47c54f
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
mov esi, dword [ebp - 4]
mov edi, dword [ebp - 4]
add esi, 0x20
shl ebx, 8
lea edi, [edi + 0x24]
or ebx, eax
mov dword [ebp - 0x10], edi
mov dword [esi], ebx
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [edi], ecx
mov eax, ecx
mov ecx, 0xffffffff
cmove eax, ecx
mov ecx, dword [ebp - 4]
mov dword [edi], eax
movzx eax, byte [edx]
mov eax, dword [eax*4 + 0x4fda68]
mov dword [ebp - 0xc], eax
lea eax, [edx + 5]
mov dword [ecx], eax
mov dword [ebp + 8], esi
mov dword [ebp + 0xc], ebx
mov dword [ebp - 0x28], 1
cmp ebx, 1
jae 0x47c589
jmp 0x47c6dc
mov eax, dword [ebp - 4]
lea ecx, [eax + 0x24]
mov dword [ebp - 0x28], 1
mov dword [ecx], 1
mov dword [ebp - 0x10], ecx
lea esi, [eax + 0x20]
mov dword [eax + 0x20], 1
mov dword [ebp + 8], esi
mov edi, dword [ebp + 0x1c]
nop dword [eax]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jae 0x47c880
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47c6b1
cmp edx, 0xc0
jb 0x47c6b1
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47c5dd
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47c6ab
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47c609
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47c6a8
lea ebx, [ecx + 3]
test dl, 8
jne 0x47c63d
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47c6a8
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 0xc], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47c67c
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 0xc]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47c6a2
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov esi, dword [ebp + 8]
mov eax, dword [ebp - 4]
push dword [ebp - 8]
push dword [eax + 8]
push edx
call fcn.0046b490
add esp, 0xc
test eax, eax
je case.0x484d73.999
mov eax, dword [ebp - 0x28]
mov ebx, dword [esi]
inc eax
mov dword [ebp - 0x28], eax
mov dword [ebp + 0xc], ebx
cmp eax, ebx
jbe 0x47c590
mov ecx, dword [ebp - 0x10]
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ecx]
cmp ebx, ecx
je 0x479f61
cmp dword [ebp - 0xc], 0
je 0x48812a
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov dword [edx + 4], eax
cmp ebx, ecx
jae 0x47c83e
nop word [eax + eax]
mov eax, dword [ebp - 4]
mov edi, 1
mov ecx, dword [ebp + 0x1c]
mov esi, dword [eax + 0x38]
cmp esi, dword [ecx + 0x54]
jae 0x47c856
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x47c813
cmp edx, 0xc0
jb 0x47c813
test dl, 0x20
jne 0x47c756
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x47c808
test dl, 0x10
jne 0x47c778
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x47c808
test dl, 8
jne 0x47c7a3
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x47c808
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x47c7e5
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
mov ebx, dword [ebp + 0xc]
jmp 0x47c810
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ebx, dword [ebp + 0xc]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
push dword [ebp - 8]
push dword [eax + 8]
push edx
call fcn.0046b490
add esp, 0xc
test eax, eax
je 0x47c83b
mov eax, dword [ebp - 4]
inc ebx
mov dword [ebp + 0xc], ebx
add dword [eax + 0x38], edi
mov eax, dword [ebp - 0x10]
cmp ebx, dword [eax]
jb 0x47c710
mov edi, dword [ebp + 0x1c]
cmp dword [ebp - 0xc], 2
je 0x479f61
mov ebx, dword [ebp - 4]
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x65
jmp 0x488611
mov edi, ecx
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x47c83e
cmp esi, dword [edi + 0x5c]
ja 0x47c86e
cmp dword [edi + 0x24], 0
je 0x47c83e
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x47c83e
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47c89e
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x47c8f1
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47c8dc
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], edx
je 0x47c925
cmp ecx, 0xc0
jb 0x47c925
lea edi, [edx + 1]
test cl, 0x20
jne 0x47c946
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 4]
cmp ecx, 0xff
ja case.default.0x47d7f7
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 8
je case.default.0x47d7f7
jmp case.0x484d73.999
lea ebx, [edx + 2]
test cl, 0x10
jne 0x47c96f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47c922
test cl, 8
jne 0x47c9a6
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [ebx]
mov ebx, dword [ebp - 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
mov dword [ebx + 0x38], eax
jmp 0x47c922
movzx edi, byte [edi]
lea eax, [edx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [edx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test cl, 4
jne 0x47c9fc
mov edx, dword [ebp - 4]
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x2c]
shl ecx, 6
or ecx, edi
mov dword [edx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, dword [ebp + 8]
jmp 0x47c928
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, dword [ebp + 8]
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
jmp 0x47c928
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47ca6f
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47ca5a
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47caa3
cmp edx, 0xc0
jb 0x47caa3
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47cac9
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0xff
ja case.0x484d73.999
mov eax, dword [edi + 0x30]
test byte [edx + eax], 8
je case.0x484d73.999
lea eax, [esi + 1]
mov dword [ecx], eax
jmp 0x479f61
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47caf2
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47caa0
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47cb32
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47caa6
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47cb88
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47caa6
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47caa6
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47cbfb
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47cbe6
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47cc2f
cmp edx, 0xc0
jb 0x47cc2f
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47cc50
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0xff
ja case.0x47d56d.8203
mov eax, dword [edi + 0x30]
test byte [edx + eax], 1
je case.0x47d56d.8203
jmp case.0x484d73.999
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47cc79
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47cc2c
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47ccb9
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47cc32
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47cd0f
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47cc32
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47cc32
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47cd82
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47cd6d
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47cdb6
cmp edx, 0xc0
jb 0x47cdb6
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47cddc
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0xff
ja case.0x484d73.999
mov eax, dword [edi + 0x30]
test byte [edx + eax], 1
je case.0x484d73.999
lea eax, [esi + 1]
mov dword [ecx], eax
jmp 0x479f61
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47ce05
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47cdb3
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47ce45
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47cdb9
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47ce9b
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47cdb9
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47cdb9
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x47cf0e
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47cef9
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], edx
je 0x47cf42
cmp ecx, 0xc0
jb 0x47cf42
lea edi, [edx + 1]
test cl, 0x20
jne 0x47cf63
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 4]
cmp ecx, 0xff
ja case.default.0x47d7f7
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 0x10
je case.default.0x47d7f7
jmp case.0x484d73.999
lea ebx, [edx + 2]
test cl, 0x10
jne 0x47cf8c
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47cf3f
test cl, 8
jne 0x47cfc3
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [ebx]
mov ebx, dword [ebp - 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
mov dword [ebx + 0x38], eax
jmp 0x47cf3f
movzx edi, byte [edi]
lea eax, [edx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [edx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test cl, 4
jne 0x47d019
mov edx, dword [ebp - 4]
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x2c]
shl ecx, 6
or ecx, edi
mov dword [edx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, dword [ebp + 8]
jmp 0x47cf45
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, dword [ebp + 8]
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
jmp 0x47cf45
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47d08c
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47d077
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47d0c0
cmp edx, 0xc0
jb 0x47d0c0
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47d0e6
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0xff
ja case.0x484d73.999
mov eax, dword [edi + 0x30]
test byte [edx + eax], 0x10
je case.0x484d73.999
lea eax, [esi + 1]
mov dword [ecx], eax
jmp 0x479f61
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47d10f
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47d0bd
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47d14f
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47d0c3
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47d1a5
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47d0c3
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47d0c3
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47d218
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47d203
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov esi, ecx
mov dword [eax + 0x38], ecx
je 0x47d30b
cmp edx, 0xc0
jb 0x47d30b
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47d24a
movzx eax, byte [ecx]
and edx, 0x1f
jmp 0x47d2fd
mov edi, esi
lea esi, [ecx + 2]
test dl, 0x10
jne 0x47d26a
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
or edx, ecx
jmp 0x47d2fa
mov ebx, esi
lea esi, [ecx + 3]
test dl, 8
jne 0x47d292
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
jmp 0x47d2fa
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
movzx esi, byte [esi]
and ebx, 0x3f
mov dword [ebp + 8], eax
and esi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47d2dc
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
mov esi, eax
jmp 0x47d30e
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
lea esi, [ecx + 5]
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
mov ecx, dword [ebp - 4]
cmp edx, 0x85
ja 0x47d36f
je case.0x47d324.11
add edx, 0xfffffff6
cmp edx, 3
ja case.0x484d73.999
jmp dword [edx*4 + 0x4889f4]
cmp esi, dword [edi + 0x54]
jb 0x47d356
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x47d324.10
cmp esi, dword [edi + 0x5c]
ja 0x47d34e
cmp dword [edi + 0x24], 0
je case.0x47d324.10
cmp ecx, 1
jmp 0x47e050
cmp byte [esi], 0xa
jne case.0x47d324.10
lea eax, [esi + 1]
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 4]
inc dword [eax]
jmp 0x479f61
sub edx, 0x2028
je case.0x47d324.11
sub edx, 1
jne case.0x484d73.999
cmp word [edi + 0x3e], 2
jne case.0x47d324.10
jmp case.0x484d73.999
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47d3ce
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47d3b9
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47d402
cmp edx, 0xc0
jb 0x47d402
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47d43a
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0x2000
ja 0x47d545
je case.0x484d73.999
cmp edx, 0xa0
ja 0x47d52e
je case.0x484d73.999
cmp edx, 9
je case.0x484d73.999
cmp edx, 0x20
jmp 0x47cab9
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47d463
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47d3ff
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47d4a3
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47d405
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47d4f9
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47d405
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47d405
cmp edx, 0x1680
je case.0x484d73.999
cmp edx, 0x180e
jmp 0x47cab9
cmp edx, 0x3000
ja case.0x47d56d.8203
je case.0x484d73.999
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x47d56d.8203
movzx eax, byte [edx + 0x488a0c]
jmp dword [eax*4 + 0x488a04]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47d5b2
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47d59d
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47d5e6
cmp edx, 0xc0
jb 0x47d5e6
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47d624
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0x2000
ja 0x47d735
je case.0x47d56d.8203
cmp edx, 0xa0
ja 0x47d718
je case.0x47d56d.8203
cmp edx, 9
je case.0x47d56d.8203
cmp edx, 0x20
je case.0x47d56d.8203
jmp case.0x484d73.999
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47d64d
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47d5e3
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47d68d
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47d5e9
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47d6e3
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47d5e9
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47d5e9
cmp edx, 0x1680
je case.0x47d56d.8203
cmp edx, 0x180e
je case.0x47d56d.8203
jmp case.0x484d73.999
cmp edx, 0x3000
ja case.0x484d73.999
je case.0x47d56d.8203
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x484d73.999
movzx eax, byte [edx + 0x488a74]
jmp dword [eax*4 + 0x488a6c]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x47d7a2
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47d78d
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], edx
je 0x47d7d6
cmp ecx, 0xc0
jb 0x47d7d6
lea edi, [edx + 1]
test cl, 0x20
jne 0x47d7fe
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov edx, dword [ebp - 4]
cmp ecx, 0x85
ja 0x47d8e9
je case.0x484d73.999
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x47d7f7
jmp dword [ecx*4 + 0x488ad4]
lea ebx, [edx + 2]
test cl, 0x10
jne 0x47d827
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47d7d3
test cl, 8
jne 0x47d85e
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [ebx]
mov ebx, dword [ebp - 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
mov dword [ebx + 0x38], eax
jmp 0x47d7d3
movzx edi, byte [edi]
lea eax, [edx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [edx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test cl, 4
jne 0x47d8b4
mov edx, dword [ebp - 4]
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x2c]
shl ecx, 6
or ecx, edi
mov dword [edx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, dword [ebp + 8]
jmp 0x47d7d9
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, edi
mov edi, dword [ebp + 0x1c]
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, dword [ebp + 8]
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
jmp 0x47d7d9
sub ecx, 0x2028
je case.0x484d73.999
sub ecx, 1
je case.0x484d73.999
lea eax, [esi + 1]
mov dword [edx], eax
jmp 0x479f61
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47d946
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47d931
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47d97a
cmp edx, 0xc0
jb 0x47d97a
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47d9a2
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebp - 4]
cmp edx, 0x85
ja 0x47da96
je case.0x47d56d.8203
add edx, 0xfffffff6
cmp edx, 3
ja case.0x484d73.999
jmp dword [edx*4 + 0x488ae4]
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47d9cb
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47d977
lea eax, [ecx + 3]
mov dword [ebp + 8], eax
test dl, 8
jne 0x47da0b
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, ecx
mov ecx, dword [ebp - 4]
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
mov dword [ecx + 0x38], eax
jmp 0x47d97d
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x2c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp + 0xc], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x47da61
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x2c]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x47d97d
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
jmp 0x47d97d
sub edx, 0x2028
je case.0x47d56d.8203
sub edx, 1
je case.0x47d56d.8203
jmp case.0x484d73.999
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47daee
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47dad9
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47dc06
cmp edx, 0xc0
jb 0x47dc06
lea edi, [ecx + 1]
test dl, 0x20
jne 0x47db2c
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47dc06
lea ebx, [ecx + 2]
test dl, 0x10
jne 0x47db58
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47dc06
lea eax, [ecx + 3]
mov dword [ebp + 0xc], eax
test dl, 8
jne 0x47db8f
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp + 0xc]
jmp 0x47dc00
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
mov dword [ebp - 0x2c], eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
mov dword [ebp + 0xc], eax
mov eax, dword [ebp - 0x2c]
test dl, 4
jne 0x47dbd9
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x28]
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 0xc]
jmp 0x47dc00
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 0xc]
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov eax, edx
xor ebx, ebx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
mov cl, byte [ebp + 0xb]
cmp cl, 0xf
lea edi, [eax + eax*2]
sete bl
movzx eax, byte [esi + 1]
cmp eax, 0xd
ja case.0x48547a.15
jmp dword [eax*4 + 0x488af4]
cmp cl, 0xf
jne 0x47de47
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov al, byte [edi*4 + 0x4e2981]
cmp al, 9
je 0x47dc6f
cmp al, 5
je 0x47dc6f
cmp al, 8
je 0x47dc6f
xor eax, eax
jmp 0x47dc74
mov eax, 1
cmp eax, ebx
jne 0x47de47
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
movzx ecx, byte [edi*4 + 0x4e2981]
xor edx, edx
movzx eax, byte [esi + 2]
cmp eax, dword [ecx*4 + 0x4dd928]
sete dl
cmp edx, ebx
jne 0x47de47
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov al, byte [esi + 2]
xor ecx, ecx
cmp al, byte [edi*4 + 0x4e2981]
sete cl
cmp ecx, ebx
jne 0x47de47
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov al, byte [esi + 2]
xor ecx, ecx
cmp al, byte [edi*4 + 0x4e2980]
jmp 0x47dcb8
mov al, byte [esi + 2]
cmp al, byte [edi*4 + 0x4e2980]
je 0x47dc6f
movzx edx, word [edi*4 + 0x4e2988]
movzx ecx, al
and edx, 0x3ff
mov eax, ecx
shr eax, 5
add edx, eax
and ecx, 0x8000001f
jns 0x47dd0a
dec ecx
or ecx, 0xffffffe0
inc ecx
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e2688], eax
jne 0x47dc6f
xor eax, eax
jmp 0x47dc74
movzx eax, byte [edi*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x47dc6f
cmp eax, 3
je 0x47dc6f
xor eax, eax
jmp 0x47dc74
cmp edx, 0x20
ja 0x47dd67
je case.0x47dc40.0
add edx, 0xfffffff7
cmp edx, 4
ja case.0x47dddc.8203
jmp dword [edx*4 + 0x488b2c]
cmp edx, 0x2000
ja 0x47ddbc
je case.0x47dc40.0
cmp edx, 0x1680
ja 0x47ddb4
je case.0x47dc40.0
sub edx, 0x85
je case.0x47dc40.0
sub edx, 0x1b
je case.0x47dc40.0
movzx eax, byte [edi*4 + 0x4e2981]
xor ecx, ecx
cmp dword [eax*4 + 0x4dd928], 6
sete cl
cmp ecx, ebx
jmp 0x47dc4a
cmp edx, 0x180e
jmp 0x47dd92
cmp edx, 0x3000
ja case.0x47dddc.8203
je case.0x47dc40.0
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x47dddc.8203
movzx eax, byte [edx + 0x488b48]
jmp dword [eax*4 + 0x488b40]
movzx eax, byte [edi*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x47de0a
cmp eax, 3
je 0x47de0a
cmp edx, 0x5f
je 0x47de0a
xor eax, eax
cmp eax, ebx
jmp 0x47dc4a
mov eax, 1
cmp eax, ebx
jmp 0x47dc4a
movzx eax, byte [esi + 2]
mov ecx, dword [eax*4 + 0x4e23b8]
lea eax, [eax*4 + 0x4e23b8]
cmp edx, ecx
jb 0x47de3d
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x47de4f
mov ecx, dword [eax]
cmp edx, ecx
jae 0x47de30
cmp byte [ebp + 0xb], 0xf
jne 0x47a18b
lea eax, [esi + 3]
jmp 0x479f59
cmp byte [ebp + 0xb], 0xf
jmp 0x47dc4a
cmp edx, 0x24
je 0x47de0a
cmp edx, 0x40
je 0x47de0a
cmp edx, 0x60
je 0x47de0a
cmp edx, 0xa0
jb 0x47de77
cmp edx, 0xd7ff
jbe 0x47de0a
cmp edx, 0xe000
jae 0x47de0a
xor eax, eax
cmp eax, ebx
jmp 0x47dc4a
mov ax, word [edi*4 + 0x4e2988]
xor ecx, ecx
shr ax, 0xb
cmp al, byte [esi + 2]
sete cl
cmp ecx, ebx
jmp 0x47dc4a
movzx ecx, byte [esi + 2]
movzx edx, word [edi*4 + 0x4e298a]
mov eax, ecx
and edx, 0xfff
shr eax, 5
add edx, eax
and ecx, 0x8000001f
jns 0x47dec9
dec ecx
or ecx, 0xffffffe0
inc ecx
mov eax, 1
shl eax, cl
mov ecx, dword [edx*4 + 0x4e1e30]
and ecx, eax
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, ebx
jmp 0x47dc4a
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x47df24
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47df0f
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov esi, ecx
mov dword [eax + 0x38], ecx
je 0x47e017
cmp edx, 0xc0
jb 0x47e017
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47df56
movzx eax, byte [ecx]
and edx, 0x1f
jmp 0x47e009
mov edi, esi
lea esi, [ecx + 2]
test dl, 0x10
jne 0x47df76
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
or edx, ecx
jmp 0x47e006
mov ebx, esi
lea esi, [ecx + 3]
test dl, 8
jne 0x47df9e
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
jmp 0x47e006
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
movzx esi, byte [esi]
and ebx, 0x3f
mov dword [ebp + 8], eax
and esi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47dfe8
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
mov esi, eax
jmp 0x47e017
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
lea esi, [ecx + 5]
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
push 0
push dword [ebp - 8]
push dword [edi + 0x54]
push dword [edi + 0x4c]
push esi
push edx
call fcn.004799c0
mov ecx, dword [ebp - 4]
add esp, 0x18
mov dword [ecx + 0x38], eax
cmp eax, dword [edi + 0x54]
jb case.0x47d324.10
movzx ecx, word [edi + 0x3c]
mov edx, ecx
test cx, cx
je case.0x47d324.10
cmp eax, dword [edi + 0x5c]
ja 0x47e04d
cmp dword [edi + 0x24], 0
je case.0x47d324.10
cmp edx, 1
mov dword [edi + 0x1c], 1
ja 0x47b9cf
mov eax, dword [ebp - 4]
inc dword [eax]
jmp 0x479f61
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov edx, eax
mov dword [eax + 0x24], ecx
mov dword [eax + 0x20], ecx
mov dword [eax], esi
jmp 0x47e177
mov eax, dword [ebp - 4]
xor ebx, ebx
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
mov edx, eax
mov dword [eax + 0x24], ecx
cmp byte [esi], 0x5c
setne bl
add esi, 3
mov dword [ebp - 0xc], ebx
mov dword [eax], esi
jmp 0x47e177
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0xc], 2
mov edx, eax
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 0xffffffff
mov dword [eax], esi
jmp 0x47e177
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0xc], 2
mov edx, eax
mov dword [eax + 0x20], 1
mov dword [eax + 0x24], 0xffffffff
mov dword [eax], esi
jmp 0x47e177
mov eax, dword [ebp - 4]
inc esi
mov dword [ebp - 0xc], 2
mov edx, eax
mov dword [eax + 0x20], 0
mov dword [eax + 0x24], 1
mov dword [eax], esi
jmp 0x47e177
mov eax, dword [ebp - 4]
mov dword [ebp - 0xc], 2
mov dword [eax + 0x20], 0
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 4]
add esi, 3
mov edx, eax
mov dword [eax + 0x24], ecx
mov dword [eax], esi
jmp 0x47e177
movzx ecx, byte [esi]
inc esi
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 4]
mov dword [eax], esi
mov eax, dword [ecx*4 + 0x4fda44]
mov dword [edx + 0x20], eax
mov eax, dword [ecx*4 + 0x4fda70]
mov dword [edx + 0x24], eax
mov eax, dword [ecx*4 + 0x4fda9c]
mov dword [ebp - 0xc], eax
mov cl, byte [esi]
inc esi
movzx eax, cl
mov dword [edx + 0x28], eax
mov eax, dword [ebp - 4]
mov dword [eax], esi
cmp cl, 0x10
je 0x47e194
cmp cl, 0xf
je 0x47e194
or edx, 0xffffffff
jmp 0x47e1ac
mov ebx, dword [ebp - 4]
lea ecx, [esi + 1]
movzx edx, byte [esi]
mov dword [eax], ecx
movzx eax, byte [ecx]
mov dword [ebx + 0x2c], eax
lea eax, [ecx + 1]
mov dword [ebx], eax
mov eax, ebx
mov edi, dword [eax + 0x20]
mov dword [ebp - 0x2c], edx
mov dword [ebp + 8], edi
test edi, edi
je 0x47e254
mov esi, dword [eax + 0x28]
mov dword [ebp - 0x10], esi
test edx, edx
js 0x47f8ba
xor eax, eax
cmp esi, 0xf
sete al
mov dword [ebp + 0xc], eax
cmp edx, 0xd
ja case.0x48547a.15
jmp dword [edx*4 + 0x488ba8]
cmp esi, 0xf
je 0x47a18b
mov esi, 1
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x38]
mov eax, dword [ebp + 0x1c]
cmp edx, dword [eax + 0x54]
jae 0x47e2a7
cmp dword [ebp - 8], 0
lea eax, [edx + 1]
mov ebx, dword [ebp - 4]
movzx ecx, byte [edx]
mov dword [ebx + 0x38], eax
je 0x47e24c
cmp ecx, 0xc0
jb 0x47e24c
test cl, 0x20
jne 0x47e22a
lea eax, [edx + 2]
jmp 0x47e249
test cl, 0x10
jne 0x47e234
lea eax, [edx + 3]
jmp 0x47e249
test cl, 8
jne 0x47e23e
lea eax, [edx + 4]
jmp 0x47e249
lea eax, [edx + 5]
test cl, 4
je 0x47e249
lea eax, [edx + 6]
mov dword [ebx + 0x38], eax
inc esi
cmp esi, edi
jbe 0x47e1f4
mov eax, dword [ebp - 4]
mov esi, dword [ebp - 8]
mov edi, dword [eax + 0x24]
mov edx, dword [eax + 0x20]
mov dword [ebp + 0xc], edi
mov dword [ebp + 8], edx
cmp edx, edi
je 0x479f5e
cmp dword [ebp - 0xc], 0
mov ecx, dword [ebp - 0x2c]
je 0x487f86
mov esi, dword [eax + 0x38]
mov dword [eax + 4], esi
mov ebx, dword [eax + 0x28]
mov dword [ebp - 0x28], ebx
test ecx, ecx
js 0x482511
xor eax, eax
cmp ebx, 0xf
sete al
mov dword [ebp - 0x10], eax
cmp ecx, 0xd
ja case.0x48547a.15
jmp dword [ecx*4 + 0x488be0]
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47e2c7
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x10], ebx
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [eax + 0x38]
cmp edx, dword [ecx + 0x54]
jae 0x47e46c
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], edx
je 0x47e405
cmp ecx, 0xc0
jb 0x47e405
lea esi, [edx + 1]
test cl, 0x20
jne 0x47e334
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47e405
lea edi, [edx + 2]
test cl, 0x10
jne 0x47e360
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47e402
lea ebx, [edx + 3]
test cl, 8
jne 0x47e394
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47e3ff
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x47e3d3
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x28]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x47e3f9
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov eax, ecx
test eax, eax
jns 0x47e40e
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x47e429
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov al, byte [eax*4 + 0x4e2981]
cmp al, 9
je 0x47e44d
cmp al, 5
je 0x47e44d
cmp al, 8
je 0x47e44d
xor eax, eax
jmp 0x47e452
mov eax, 1
cmp eax, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, edi
jbe 0x47e2e4
jmp 0x47e251
mov edi, ecx
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47e48c
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x10], ebx
nop dword [eax]
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47e636
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47e5d1
cmp edx, 0xc0
jb 0x47e5d1
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47e500
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47e5d1
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47e52c
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47e5ce
lea ebx, [ecx + 3]
test dl, 8
jne 0x47e560
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47e5cb
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47e59f
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x28]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47e5c5
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov eax, edx
test eax, eax
jns 0x47e5da
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x47e5f5
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [ebp - 4]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, edi
jbe 0x47e4b0
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47e656
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x10], ebx
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47e7f2
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47e794
cmp edx, 0xc0
jb 0x47e794
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47e6c3
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47e794
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47e6ef
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47e791
lea ebx, [ecx + 3]
test dl, 8
jne 0x47e723
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47e78e
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47e762
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x28]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47e788
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov eax, edx
test eax, eax
jns 0x47e79d
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x47e7b8
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [ebp - 4]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, edi
jbe 0x47e673
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47e812
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x10], ebx
nop
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47e9b2
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47e954
cmp edx, 0xc0
jb 0x47e954
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47e880
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47e954
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47e8ac
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47e951
lea ebx, [ecx + 3]
test dl, 8
jne 0x47e8e3
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47e94e
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47e922
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x28]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47e948
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov eax, edx
test eax, eax
jns 0x47e95d
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x47e978
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [ebp - 4]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2980]
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, edi
jbe 0x47e830
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47e9d2
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x10], ebx
nop
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [eax + 0x38]
cmp edx, dword [ecx + 0x54]
jae 0x47eba2
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], edx
je 0x47eb14
cmp ecx, 0xc0
jb 0x47eb14
lea esi, [edx + 1]
test cl, 0x20
jne 0x47ea40
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47eb14
lea edi, [edx + 2]
test cl, 0x10
jne 0x47ea6c
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47eb11
lea ebx, [edx + 3]
test cl, 8
jne 0x47eaa3
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47eb0e
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x47eae2
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x28]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x47eb08
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx + 0x38], eax
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov eax, ecx
test eax, eax
jns 0x47eb1d
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x47eb38
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea edx, [eax + eax*2]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x2c]
movzx eax, byte [edx*4 + 0x4e2980]
cmp eax, ecx
je 0x47eb83
movzx edx, word [edx*4 + 0x4e2988]
mov eax, ecx
shr eax, 5
and edx, 0x3ff
add edx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e2688], eax
jne 0x47eb83
xor eax, eax
jmp 0x47eb88
mov eax, 1
cmp eax, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, edi
jbe 0x47e9f0
jmp 0x47e251
mov edi, ecx
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47ebc2
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x10], ebx
nop
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47ed71
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47ed04
cmp edx, 0xc0
jb 0x47ed04
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47ec30
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47ed04
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47ec5c
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47ed01
lea ebx, [ecx + 3]
test dl, 8
jne 0x47ec93
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47ecfe
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x28], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47ecd2
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x28]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47ecf8
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
mov eax, edx
test eax, eax
jns 0x47ed0d
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x47ed28
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x47ed52
cmp eax, 3
je 0x47ed52
xor eax, eax
jmp 0x47ed57
mov eax, 1
cmp eax, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x10], ebx
cmp ebx, edi
jbe 0x47ebe0
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47ed91
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x28], ebx
nop
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47efbb
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47eed7
cmp edx, 0xc0
jb 0x47eed7
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47ee00
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47eed4
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47ee2c
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47eed1
lea ebx, [ecx + 3]
test dl, 8
jne 0x47ee63
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47eece
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x3c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47eea2
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x3c]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47eec8
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x10]
cmp edx, 0x20
ja 0x47eef1
je case.0x47efaf.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x47efaf.8203
jmp dword [eax*4 + 0x488c18]
cmp edx, 0x2000
ja 0x47ef93
je case.0x47efaf.8193
cmp edx, 0x1680
ja 0x47ef8b
je case.0x47efaf.8193
mov eax, edx
sub eax, 0x85
je case.0x47efaf.8193
sub eax, 0x1b
je case.0x47efaf.8193
mov eax, edx
test eax, eax
jns 0x47ef34
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x47ef4f
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
cmp dword [eax*4 + 0x4dd928], 6
sete cl
cmp ecx, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x28], ebx
cmp ebx, edi
jbe 0x47edb0
jmp 0x47e251
cmp edx, 0x180e
jmp 0x47ef25
cmp edx, 0x3000
ja case.0x47efaf.8203
je case.0x47efaf.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x47efaf.8203
movzx eax, byte [eax + 0x488c34]
jmp dword [eax*4 + 0x488c2c]
cmp esi, 0xf
jmp 0x47ef74
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47efdb
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x28], ebx
nop dword [eax + eax]
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47f187
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47f124
cmp edx, 0xc0
jb 0x47f124
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47f050
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47f124
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47f07c
movzx eax, byte [ecx]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47f121
lea ebx, [ecx + 3]
test dl, 8
jne 0x47f0b3
movzx eax, byte [ecx]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47f11e
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x3c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47f0f2
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x3c]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47f118
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp + 8]
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x47f168
cmp eax, 3
je 0x47f168
cmp edx, 0x5f
je 0x47f168
xor eax, eax
jmp 0x47f16d
mov eax, 1
cmp eax, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x28], ebx
cmp ebx, edi
jbe 0x47f000
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47f1a7
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp + 0xc], ebx
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47f335
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47f2ee
cmp edx, 0xc0
jb 0x47f2ee
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47f214
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47f2e8
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47f240
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47f2e5
lea ebx, [ecx + 3]
test dl, 8
jne 0x47f277
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47f2e2
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x3c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47f2b6
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x3c]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47f2dc
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
mov esi, dword [ebp - 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2c]
mov ecx, dword [eax*4 + 0x4e23b8]
lea eax, [eax*4 + 0x4e23b8]
cmp edx, ecx
jb 0x47f310
lea eax, [eax + 4]
cmp edx, ecx
je 0x47f32a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x47f303
cmp esi, 0xf
jne 0x47a18b
inc ebx
mov dword [ebp + 0xc], ebx
cmp ebx, edi
jbe 0x47f1c4
jmp 0x47e251
cmp esi, 0xf
je 0x47a18b
jmp 0x47f319
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47f355
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47f4e0
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47f496
cmp edx, 0xc0
jb 0x47f496
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47f3c2
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47f496
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47f3ee
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47f493
lea ebx, [ecx + 3]
test dl, 8
jne 0x47f425
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47f490
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x3c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47f464
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x3c]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47f48a
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp + 8]
cmp edx, 0x24
je 0x47f4c1
cmp edx, 0x40
je 0x47f4c1
cmp edx, 0x60
je 0x47f4c1
cmp edx, 0xa0
jb 0x47f4b5
cmp edx, 0xd7ff
jbe 0x47f4c1
cmp edx, 0xe000
jae 0x47f4c1
xor eax, eax
jmp 0x47f4c6
mov eax, 1
cmp eax, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x28], ebx
cmp ebx, edi
jbe 0x47f372
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47f500
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x28], ebx
nop dword [eax]
mov eax, dword [ebp - 4]
mov ecx, dword [ebp + 0x1c]
mov edx, dword [eax + 0x38]
cmp edx, dword [ecx + 0x54]
jae 0x47f6a5
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], edx
je 0x47f644
cmp ecx, 0xc0
jb 0x47f644
lea esi, [edx + 1]
test cl, 0x20
jne 0x47f570
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47f644
lea edi, [edx + 2]
test cl, 0x10
jne 0x47f59c
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47f641
lea ebx, [edx + 3]
test cl, 8
jne 0x47f5d3
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47f63e
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x3c], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x47f612
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 0x3c]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x47f638
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp + 8]
mov eax, ecx
test eax, eax
jns 0x47f64d
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x47f668
dec ecx
or ecx, 0xffffff80
inc ecx
mov edx, dword [ebp - 4]
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, word [eax*4 + 0x4e2988]
shr eax, 0xb
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x28], ebx
cmp ebx, edi
jbe 0x47f520
jmp 0x47e251
mov edi, ecx
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x47f6c5
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov ebx, 1
mov dword [ebp - 0x28], ebx
mov eax, dword [ebp - 4]
mov edx, dword [ebp + 0x1c]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edx + 0x54]
jae 0x47f885
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [eax + 0x38], ecx
je 0x47f809
cmp edx, 0xc0
jb 0x47f809
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47f732
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
jmp 0x47f806
lea edi, [ecx + 2]
test dl, 0x10
jne 0x47f75e
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
jmp 0x47f803
lea ebx, [ecx + 3]
test dl, 8
jne 0x47f795
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
jmp 0x47f800
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp - 0x3c], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x47f7d4
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x3c]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x47f7fa
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ecx, dword [ebp - 4]
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp - 0x28]
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x2c]
mov eax, edx
test eax, eax
jns 0x47f815
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x47f830
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx edx, word [eax*4 + 0x4e298a]
mov eax, ecx
shr eax, 5
and edx, 0xfff
add edx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
mov ecx, dword [edx*4 + 0x4e1e30]
and ecx, eax
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, dword [ebp + 0xc]
je 0x47a18b
inc ebx
mov dword [ebp - 0x28], ebx
cmp ebx, edi
jbe 0x47f6e2
jmp 0x47e251
mov edi, edx
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47f8a5
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
cmp esi, 0x16
jne 0x47fa6a
mov edi, dword [ebp + 0x1c]
mov ebx, 1
mov dword [ebp + 8], ebx
nop
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jae 0x47fa37
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov esi, ecx
mov dword [eax + 0x38], ecx
je 0x47f9dc
cmp edx, 0xc0
jb 0x47f9dc
lea esi, [ecx + 1]
test dl, 0x20
jne 0x47f90e
movzx eax, byte [ecx]
and edx, 0x1f
jmp 0x47f9ce
mov ebx, esi
lea esi, [ecx + 2]
test dl, 0x10
jne 0x47f92e
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [ebx]
and ecx, 0x3f
shl edx, 6
or edx, ecx
jmp 0x47f9cb
mov edi, esi
lea esi, [ecx + 3]
mov dword [ebp + 0xc], edi
test dl, 8
jne 0x47f95c
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [ebx]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
jmp 0x47f9c8
mov eax, dword [ebp + 0xc]
movzx edi, byte [ecx]
movzx ebx, byte [ebx]
and edi, 0x3f
movzx esi, byte [esi]
and ebx, 0x3f
movzx eax, byte [eax]
and esi, 0x3f
and eax, 0x3f
mov dword [ebp + 0xc], eax
lea eax, [ecx + 4]
test dl, 4
jne 0x47f9aa
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
mov dword [ecx + 0x38], eax
mov ebx, dword [ebp + 8]
shl edx, 6
or edx, dword [ebp + 0xc]
shl edx, 6
or edx, esi
mov esi, eax
jmp 0x47f9dc
movzx eax, byte [eax]
and edx, 1
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, dword [ebp + 0xc]
shl edx, 6
or edx, esi
lea esi, [ecx + 5]
mov edi, dword [ebp + 0x1c]
mov ebx, dword [ebp + 8]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
push 0
push dword [ebp - 8]
push dword [edi + 0x54]
push dword [edi + 0x4c]
push esi
push edx
call fcn.004799c0
mov esi, dword [ebp - 4]
add esp, 0x18
mov dword [esi + 0x38], eax
cmp eax, dword [edi + 0x54]
jb 0x47fa22
movzx ecx, word [edi + 0x3c]
mov edx, ecx
test cx, cx
je 0x47fa22
cmp eax, dword [edi + 0x5c]
ja 0x47fa12
cmp dword [edi + 0x24], 0
je 0x47fa22
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov eax, dword [ebp - 4]
inc ebx
mov dword [ebp + 8], ebx
cmp ebx, dword [esi + 0x20]
jbe 0x47f8d0
jmp 0x47e251
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x47fa55
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
lea eax, [esi - 6]
cmp eax, 0xf
ja case.0x48547a.15
mov esi, dword [ebp - 8]
test esi, esi
je 0x48096f
jmp dword [eax*4 + 0x488c94]
jmp dword [eax*4 + 0x488dd4]
cmp edx, edi
jae 0x481076
nop dword [eax + eax]
mov ecx, dword [ebp + 0x1c]
mov eax, 1
cmp esi, dword [ecx + 0x54]
jae 0x48108e
cmp dword [ebp - 8], 0
movzx ecx, byte [esi]
je 0x481064
cmp ecx, 0xc0
jb 0x481064
test cl, 0x20
jne 0x48103e
mov eax, 2
jmp 0x481064
test cl, 0x10
jne 0x48104a
mov eax, 3
jmp 0x481064
test cl, 8
jne 0x481056
mov eax, 4
jmp 0x481064
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp ebx, 0xf
je 0x481076
add esi, eax
inc edx
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
cmp edx, edi
jb 0x481010
mov edi, dword [ebp + 0x1c]
cmp dword [ebp - 0xc], 2
mov edx, dword [ebp - 8]
je 0x479f64
mov ebx, dword [ebp - 4]
jmp 0x4875b1
mov edi, ecx
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x4810a6
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
nop dword [eax]
mov eax, dword [ebp + 0x1c]
mov ecx, 1
cmp esi, dword [eax + 0x54]
jae 0x48122f
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x4811bd
cmp edx, 0xc0
jb 0x4811bd
test dl, 0x20
jne 0x481100
movzx eax, byte [esi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4811b5
test dl, 0x10
jne 0x481122
movzx eax, byte [esi + 1]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 3
movzx eax, byte [esi + 2]
jmp 0x4811b5
test dl, 8
jne 0x481150
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4811b5
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x481192
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0xc]
shl edx, 6
or edx, ebx
jmp 0x4811bd
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0xc]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
test eax, eax
jns 0x4811c6
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x4811e1
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov al, byte [eax*4 + 0x4e2981]
cmp al, 9
je 0x481205
cmp al, 5
je 0x481205
cmp al, 8
je 0x481205
xor eax, eax
jmp 0x48120a
mov eax, 1
cmp eax, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp - 4]
add esi, ecx
mov dword [eax + 0x38], esi
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, edi
jb 0x4810c0
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x48124f
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
nop dword [eax]
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x4813d5
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x481367
cmp edx, 0xc0
jb 0x481367
test dl, 0x20
jne 0x4812b0
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x48135f
test dl, 0x10
jne 0x4812d2
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x48135f
test dl, 8
jne 0x481300
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x48135f
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x48133f
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
jmp 0x481367
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
test eax, eax
jns 0x481370
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x48138b
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [ebp - 4]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp + 8]
add esi, edi
inc eax
mov dword [edx + 0x38], esi
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x481270
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x4813f5
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x481570
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x481509
cmp edx, 0xc0
jb 0x481509
test dl, 0x20
jne 0x481452
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x481501
test dl, 0x10
jne 0x481474
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x481501
test dl, 8
jne 0x4814a2
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x481501
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x4814e1
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
jmp 0x481509
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
test eax, eax
jns 0x481512
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x48152d
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [ebp - 4]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp + 8]
add esi, edi
inc eax
mov dword [edx + 0x38], esi
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x481412
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x481590
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov ebx, dword [ebp - 4]
mov eax, dword [ebp + 0x1c]
mov edx, 1
cmp esi, dword [eax + 0x54]
jae 0x481704
cmp dword [ebp - 8], 0
movzx ecx, byte [esi]
je 0x4816a1
cmp ecx, 0xc0
jb 0x4816a1
movzx eax, byte [esi + 1]
test cl, 0x20
jne 0x4815f0
and ecx, 0x1f
mov edx, 2
jmp 0x481699
and eax, 0x3f
test cl, 0x10
jne 0x48160e
and ecx, 0xf
mov edx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x481699
test cl, 8
jne 0x481635
and ecx, 7
mov edx, 4
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]
jmp 0x481699
movzx edx, byte [esi + 2]
movzx edi, byte [esi + 3]
and edx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x481673
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, edx
mov edx, 5
shl ecx, 6
or ecx, edi
mov edi, dword [ebp + 0xc]
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 4]
jmp 0x4816a1
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
or ecx, edx
mov edx, 6
shl ecx, 6
or ecx, edi
mov edi, dword [ebp + 0xc]
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp - 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, ecx
test eax, eax
jns 0x4816aa
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x4816c5
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2980]
cmp eax, dword [ebx + 0x2c]
sete cl
cmp ecx, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp + 8]
add esi, edx
inc eax
mov dword [ebx + 0x38], esi
mov dword [ebp + 8], eax
cmp eax, edi
jb 0x4815b0
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x481724
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], edx
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov ebx, dword [ebp - 4]
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x4818d1
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x48183d
cmp edx, 0xc0
jb 0x48183d
test dl, 0x20
jne 0x481780
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x481835
test dl, 0x10
jne 0x4817a2
movzx eax, byte [esi + 1]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
mov edi, 3
movzx eax, byte [esi + 2]
jmp 0x481835
test dl, 8
jne 0x4817d0
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x481835
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x481812
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 4]
jmp 0x48183d
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
test eax, eax
jns 0x481846
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x481861
dec edx
or edx, 0xffffff80
inc edx
mov ecx, dword [ebx + 0x2c]
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea edx, [eax + eax*2]
movzx eax, byte [edx*4 + 0x4e2980]
cmp eax, ecx
je 0x4818a9
movzx edx, word [edx*4 + 0x4e2988]
mov eax, ecx
shr eax, 5
and edx, 0x3ff
add edx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e2688], eax
jne 0x4818a9
xor eax, eax
jmp 0x4818ae
mov eax, 1
cmp eax, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp + 8]
add esi, edi
inc eax
mov dword [ebx + 0x38], esi
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x481740
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x4818f1
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
nop
mov eax, dword [ebp + 0x1c]
mov ecx, 1
cmp esi, dword [eax + 0x54]
jae 0x481a85
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x481a0d
cmp edx, 0xc0
jb 0x481a0d
test dl, 0x20
jne 0x481950
movzx eax, byte [esi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x481a05
test dl, 0x10
jne 0x481972
movzx eax, byte [esi + 1]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, 3
movzx eax, byte [esi + 2]
jmp 0x481a05
test dl, 8
jne 0x4819a0
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x481a05
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x4819e2
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0xc]
shl edx, 6
or edx, ebx
jmp 0x481a0d
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0xc]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
test eax, eax
jns 0x481a16
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x481a31
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x481a5b
cmp eax, 3
je 0x481a5b
xor eax, eax
jmp 0x481a60
mov eax, 1
cmp eax, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp - 4]
add esi, ecx
mov dword [eax + 0x38], esi
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, edi
jb 0x481910
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x481aa5
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x481cb3
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x481bbf
cmp edx, 0xc0
jb 0x481bbf
test dl, 0x20
jne 0x481b02
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x481bb7
test dl, 0x10
jne 0x481b24
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x481bb7
test dl, 8
jne 0x481b52
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x481bb7
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x481b94
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 0x28]
jmp 0x481bbf
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 0x28]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x20
ja 0x481bd9
je case.0x481ca7.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x481ca7.8203
jmp dword [eax*4 + 0x488fa8]
cmp edx, 0x2000
ja 0x481c87
je case.0x481ca7.8193
cmp edx, 0x1680
ja 0x481c7f
je case.0x481ca7.8193
mov eax, edx
sub eax, 0x85
je case.0x481ca7.8193
sub eax, 0x1b
je case.0x481ca7.8193
mov eax, edx
test eax, eax
jns 0x481c1c
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x481c37
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
cmp dword [eax*4 + 0x4dd928], 6
sete cl
cmp ecx, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp - 4]
add esi, edi
mov dword [eax + 0x38], esi
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x481ac2
jmp 0x481076
cmp edx, 0x180e
jmp 0x481c0d
cmp edx, 0x3000
ja case.0x481ca7.8203
je case.0x481ca7.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x481ca7.8203
movzx eax, byte [eax + 0x488fc4]
jmp dword [eax*4 + 0x488fbc]
cmp ebx, 0xf
jmp 0x481c5c
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x481cd3
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x481e56
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x481de7
cmp edx, 0xc0
jb 0x481de7
test dl, 0x20
jne 0x481d30
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x481ddf
test dl, 0x10
jne 0x481d52
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x481ddf
test dl, 8
jne 0x481d80
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x481ddf
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x481dbf
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
jmp 0x481de7
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x481e2b
cmp eax, 3
je 0x481e2b
cmp edx, 0x5f
je 0x481e2b
xor eax, eax
jmp 0x481e30
mov eax, 1
cmp eax, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp - 4]
add esi, edi
mov dword [eax + 0x38], esi
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x481cf0
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x481e76
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x481fe6
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x481f90
cmp edx, 0xc0
jb 0x481f90
test dl, 0x20
jne 0x481ed3
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x481f88
test dl, 0x10
jne 0x481ef5
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x481f88
test dl, 8
jne 0x481f23
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x481f88
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x481f65
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 0x28]
jmp 0x481f90
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 0x28]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x2c]
mov ecx, dword [eax*4 + 0x4e23b8]
lea eax, [eax*4 + 0x4e23b8]
cmp edx, ecx
jb 0x481fb5
lea eax, [eax + 4]
cmp edx, ecx
je 0x481fdb
mov ecx, dword [eax]
cmp edx, ecx
jae 0x481fa8
cmp ebx, 0xf
jne 0x481076
mov eax, dword [ebp - 4]
add esi, edi
mov dword [eax + 0x38], esi
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x481e93
jmp 0x481076
cmp ebx, 0xf
je 0x481076
jmp 0x481fbe
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x482006
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov eax, dword [ebp + 0x1c]
mov ecx, 1
cmp esi, dword [eax + 0x54]
jae 0x482175
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x482120
cmp edx, 0xc0
jb 0x482120
test dl, 0x20
jne 0x482063
movzx eax, byte [esi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x482118
test dl, 0x10
jne 0x482085
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x482118
test dl, 8
jne 0x4820b3
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x482118
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x4820f5
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0xc]
shl edx, 6
or edx, ebx
jmp 0x482120
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0xc]
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x24
je 0x48214b
cmp edx, 0x40
je 0x48214b
cmp edx, 0x60
je 0x48214b
cmp edx, 0xa0
jb 0x48213f
cmp edx, 0xd7ff
jbe 0x48214b
cmp edx, 0xe000
jae 0x48214b
xor eax, eax
jmp 0x482150
mov eax, 1
cmp eax, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp - 4]
add esi, ecx
mov dword [eax + 0x38], esi
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, edi
jb 0x482023
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x482195
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x482313
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x4822a9
cmp edx, 0xc0
jb 0x4822a9
test dl, 0x20
jne 0x4821f2
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4822a1
test dl, 0x10
jne 0x482214
movzx eax, byte [esi + 1]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
mov edi, 3
movzx eax, byte [esi + 2]
jmp 0x4822a1
test dl, 8
jne 0x482242
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4822a1
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x482281
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
jmp 0x4822a9
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
test eax, eax
jns 0x4822b2
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x4822cd
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
mov edx, dword [ebp - 4]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, word [eax*4 + 0x4e2988]
shr eax, 0xb
cmp eax, dword [edx + 0x2c]
sete cl
cmp ecx, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp + 8]
add esi, edi
inc eax
mov dword [edx + 0x38], esi
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x4821b2
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x482333
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp edx, edi
jae 0x481076
mov ebx, dword [ebp - 4]
mov eax, dword [ebp + 0x1c]
mov edi, 1
cmp esi, dword [eax + 0x54]
jae 0x4824dc
cmp dword [ebp - 8], 0
movzx edx, byte [esi]
je 0x482457
cmp edx, 0xc0
jb 0x482457
test dl, 0x20
jne 0x482393
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x48244f
test dl, 0x10
jne 0x4823b5
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
mov edi, 3
or edx, ecx
jmp 0x48244f
test dl, 8
jne 0x4823e7
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov edi, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x48244f
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x48242c
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 5
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 4]
jmp 0x482457
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, 6
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov ecx, dword [ebx + 0x2c]
mov eax, edx
test eax, eax
jns 0x482463
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x48247e
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx edx, word [eax*4 + 0x4e298a]
mov eax, ecx
shr eax, 5
and edx, 0xfff
add edx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
mov ecx, dword [edx*4 + 0x4e1e30]
and ecx, eax
neg ecx
sbb ecx, ecx
neg ecx
cmp ecx, dword [ebp - 0x10]
je 0x481076
mov eax, dword [ebp + 8]
add esi, edi
inc eax
mov dword [ebx + 0x38], esi
mov dword [ebp + 8], eax
cmp eax, dword [ebp + 0xc]
jb 0x482353
jmp 0x481076
mov edi, eax
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x481079
cmp esi, dword [edi + 0x5c]
ja 0x4824fc
cmp dword [edi + 0x24], 0
je 0x481079
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp 0x481079
cmp ebx, 0x16
jne 0x4826ca
cmp edx, edi
mov edi, dword [ebp + 0x1c]
jae 0x4826b8
jmp 0x48252a
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jae 0x482692
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov esi, ecx
mov dword [eax + 0x38], ecx
je 0x482633
cmp edx, 0xc0
jb 0x482633
lea esi, [ecx + 1]
test dl, 0x20
jne 0x482568
movzx eax, byte [ecx]
and edx, 0x1f
jmp 0x482625
mov edi, esi
lea esi, [ecx + 2]
test dl, 0x10
jne 0x482588
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
or edx, ecx
jmp 0x482622
mov ebx, esi
lea esi, [ecx + 3]
test dl, 8
jne 0x4825b3
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
jmp 0x482622
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
movzx esi, byte [esi]
and ebx, 0x3f
mov dword [ebp + 0xc], eax
and esi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x482604
mov ecx, dword [ebp - 4]
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 0xc]
shl edx, 6
or edx, edi
mov dword [ecx + 0x38], eax
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
mov esi, eax
jmp 0x482633
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
lea esi, [ecx + 5]
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], esi
push 0
push dword [ebp - 8]
push dword [edi + 0x54]
push dword [edi + 0x4c]
push esi
push edx
call fcn.004799c0
mov esi, dword [ebp - 4]
add esp, 0x18
mov dword [esi + 0x38], eax
cmp eax, dword [edi + 0x54]
jb 0x48267d
movzx ecx, word [edi + 0x3c]
mov edx, ecx
test cx, cx
je 0x48267d
cmp eax, dword [edi + 0x5c]
ja 0x48266d
cmp dword [edi + 0x24], 0
je 0x48267d
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov eax, dword [ebp + 8]
inc eax
mov dword [ebp + 8], eax
cmp eax, dword [esi + 0x24]
jb 0x482527
jmp 0x4826b8
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je 0x4826b8
cmp ecx, dword [edi + 0x5c]
ja 0x4826a8
cmp dword [edi + 0x24], 0
je 0x4826b8
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
cmp dword [ebp - 0xc], 2
mov edx, dword [ebp - 8]
je 0x479f64
jmp 0x487ef6
lea eax, [ebx - 6]
cmp eax, 0xf
ja case.0x48547a.15
mov ebx, dword [ebp - 8]
test ebx, ebx
je 0x4836f0
jmp dword [eax*4 + 0x489024]
jmp dword [eax*4 + 0x4890dc]
mov ecx, dword [ebp + 0x1c]
xor eax, eax
cmp bl, 0x74
mov ebx, dword [ebp - 4]
sete al
mov dword [ebx + 0x28], eax
movzx edi, byte [esi + 3]
movzx eax, byte [esi + 4]
movzx edx, byte [esi + 1]
shl edi, 8
or edi, eax
shl edx, 8
movzx eax, byte [esi + 2]
or edx, eax
movzx eax, word [ecx + 0x42]
imul edx, eax
lea eax, [esi + 5]
add edx, dword [ecx + 0x44]
mov dword [ebx], eax
test edi, edi
je 0x483db3
movzx ecx, byte [edx]
dec edi
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
lea ecx, [ecx*2 - 2]
mov dword [ebx + 0x14], ecx
cmp ecx, dword [ebx + 0x50]
jae 0x483d7a
cmp dword [ebx + ecx*4 + 0x54], 0xffffffff
jne 0x483db3
mov ecx, dword [ebp + 0x1c]
movzx eax, word [ecx + 0x42]
add edx, eax
test edi, edi
jg 0x483d57
jmp 0x483db3
xor eax, eax
cmp bl, 0x72
mov ebx, dword [ebp - 4]
sete al
mov dword [ebx + 0x28], eax
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
lea eax, [ecx*2 - 2]
mov dword [ebx + 0x14], eax
lea eax, [esi + 3]
mov dword [ebx], eax
mov edx, dword [ebx]
movzx ecx, byte [edx]
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x483dcb
movzx eax, byte [eax + 0x48922c]
jmp dword [eax*4 + 0x489224]
mov edi, dword [ecx*4 + 0x4fda10]
lea eax, [edx + 1]
mov edx, dword [ebp - 4]
mov esi, dword [ecx*4 + 0x4fda68]
lea ebx, [edx + 0x24]
mov dword [ebp - 0xc], esi
mov dword [edx], eax
mov eax, dword [ecx*4 + 0x4fda3c]
mov dword [edx + 0x20], edi
mov dword [ebx], eax
jmp 0x483e42
movzx edi, byte [edx + 1]
lea ebx, [ebx + 0x24]
movzx eax, byte [edx + 2]
shl edi, 8
or edi, eax
mov dword [ebx - 4], edi
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [ebx], ecx
movzx eax, byte [edx]
mov eax, dword [eax*4 + 0x4fda68]
mov dword [ebp - 0xc], eax
mov eax, ecx
mov ecx, 0xffffffff
cmove eax, ecx
mov dword [ebx], eax
lea eax, [edx + 5]
mov edx, dword [ebp - 4]
mov dword [edx], eax
mov ecx, dword [edx + 0x14]
mov eax, ebx
mov dword [ebp + 0xc], ecx
mov dword [ebp + 8], ebx
cmp ecx, dword [edx + 0x50]
jae 0x483e73
mov eax, dword [edx + ecx*4 + 0x54]
cmp eax, 0xffffffff
je 0x483e6d
cmp eax, dword [edx + ecx*4 + 0x58]
je 0x479f5e
lea eax, [edx + 0x24]
mov dword [ebp + 8], eax
jmp 0x483e8b
lea eax, [edx + 0x24]
mov dword [ebp + 8], eax
test edi, edi
je 0x479f5e
mov esi, dword [ebp + 0x1c]
test dword [esi + 0x7c], 0x200
jne 0x479f55
mov esi, 1
cmp edi, esi
jb 0x483ec9
lea eax, [ebp - 0x40]
push eax
push dword [ebp + 0x1c]
push edx
push dword [edx + 0x28]
push ecx
call fcn.00489870
add esp, 0x14
test eax, eax
jne 0x483f3a
mov edx, dword [ebp - 4]
inc esi
mov ecx, dword [ebp + 0xc]
mov eax, dword [edx + 0x38]
add eax, dword [ebp - 0x40]
mov dword [edx + 0x38], eax
cmp esi, edi
jbe 0x483e94
mov eax, ebx
mov dword [ebp + 8], eax
mov ebx, dword [eax]
cmp edi, ebx
je 0x479f5e
cmp dword [ebp - 0xc], 0
je 0x488055
mov eax, dword [edx + 0x38]
mov esi, 1
mov dword [edx + 4], eax
mov eax, dword [edx + ecx*4 + 0x58]
sub eax, dword [edx + ecx*4 + 0x54]
mov dword [edx + 0xc], eax
cmp edi, ebx
jae 0x483fba
nop dword [eax + eax]
lea eax, [ebp - 0x44]
push eax
push dword [ebp + 0x1c]
push edx
push dword [edx + 0x28]
push ecx
call fcn.00489870
add esp, 0x14
test eax, eax
jne 0x483f8a
mov edx, dword [ebp - 4]
xor ecx, ecx
mov eax, dword [ebp - 0x44]
cmp eax, dword [edx + 0xc]
cmovne esi, ecx
add dword [edx + 0x38], eax
mov ecx, dword [ebp + 0xc]
inc edi
cmp edi, ebx
jb 0x483f00
jmp 0x483fb2
mov edi, dword [ebp + 0x1c]
jle 0x483f48
mov ecx, dword [ebp - 4]
mov eax, dword [edi + 0x54]
mov dword [ecx + 0x38], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x38]
cmp ecx, dword [edi + 0x54]
jb case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x483f75
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
jle 0x483fb2
mov edx, dword [ebp + 0x1c]
movzx eax, word [edx + 0x3c]
mov ecx, eax
test ax, ax
je 0x483fb2
mov eax, dword [edx + 0x54]
cmp eax, dword [edx + 0x5c]
jbe 0x483fb2
mov dword [edx + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
test esi, esi
je 0x487fb7
mov edi, dword [ebp + 0x1c]
mov ebx, dword [ebp - 4]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jb case.0x484d73.999
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x15
jmp 0x488611
mov edi, dword [ebp + 0x1c]
lea eax, [ebp - 0x20]
push eax
push edi
push ebx
push dword [ebx + 0x28]
push dword [ebx + 0x14]
call fcn.00489870
add esp, 0x14
test eax, eax
je 0x48403d
jle 0x483ffe
mov eax, dword [edi + 0x54]
mov dword [ebx + 0x38], eax
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x484028
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
mov eax, dword [ebp - 0x20]
add dword [ebx + 0x38], eax
jmp 0x479f61
mov edx, dword [ebp - 4]
inc esi
mov dword [edx], esi
nop
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or eax, ecx
add eax, esi
mov esi, eax
mov dword [edx], eax
cmp byte [esi], 0x78
je 0x484050
add eax, 3
mov dword [edx], eax
jmp 0x479f61
cmp dword [edi + 0x20], 0
mov ebx, dword [ebp - 4]
jne 0x487fca
cmp dword [ebx + 0x18], 0
je 0x487fca
mov edx, esi
jmp 0x484c96
mov ebx, dword [ebp - 4]
lea eax, [ebp - 0x20]
push eax
push edi
push ebx
call fcn.00479d40
mov esi, eax
add esp, 0xc
test esi, esi
jg case.0x484d73.999
js case.0x484d73.998
mov eax, dword [ebp - 0x20]
add dword [ebx], eax
jmp 0x479f61
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
mov ebx, dword [ebp - 4]
shl ecx, 8
or ecx, eax
mov dword [ebx + 0xc], ecx
cmp byte [ecx + esi], 0x78
je 0x4840da
lea eax, [ecx - 3]
mov dword [ebx + 0xc], eax
lea edi, [esi + 3]
mov dword [ebx], edi
mov al, byte [edi]
cmp al, 0x76
je 0x4840e9
cmp al, 0x77
jne 0x484114
mov edi, dword [ebp + 0x1c]
lea eax, [ebp - 0x20]
push eax
push edi
push ebx
call fcn.00479d40
mov esi, eax
add esp, 0xc
test esi, esi
jg case.0x484d73.999
js case.0x484d73.998
mov eax, dword [ebp - 0x20]
add dword [ebx], eax
mov edi, dword [ebx]
sub dword [ebx + 0xc], eax
mov cl, byte [edi]
movzx eax, cl
add eax, 0xffffff70
cmp eax, 0x12
ja case.0x48412e.150
movzx eax, byte [eax + 0x489250]
jmp dword [eax*4 + 0x489234]
mov edx, dword [ebx + 0x44]
cmp edx, 0xffffffff
je case.0x48412e.148
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
mov edi, dword [ebp + 0x1c]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x487c6e
cmp ecx, edx
je 0x487c6e
jmp 0x4841e6
mov eax, dword [ebx + 0x44]
mov dword [ebp + 8], eax
cmp eax, 0xffffffff
je case.0x48412e.148
movzx esi, byte [edi + 3]
movzx eax, byte [edi + 4]
movzx edx, byte [edi + 1]
shl esi, 8
or esi, eax
shl edx, 8
mov eax, dword [ebp + 0x1c]
movzx ebx, word [eax + 0x42]
movzx eax, byte [edi + 2]
mov edi, dword [ebp + 0x1c]
or edx, eax
imul edx, ebx
add edx, dword [edi + 0x44]
test esi, esi
je 0x487c7f
mov edi, dword [ebp + 8]
nop
movzx eax, byte [edx]
dec esi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
cmp ecx, edi
je 0x48420b
add edx, ebx
test esi, esi
jg 0x4841b0
mov eax, dword [ebp - 0x14]
mov ebx, dword [ebp - 4]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0xc], eax
mov dword [ebp - 4], ebx
mov edi, dword [ebp + 0x1c]
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx]
lea esi, [ecx + eax]
mov dword [ebx], esi
cmp byte [ebx + 0x31], 0x8f
jne 0x479f61
mov eax, 0x2008f
mov byte [ebx + 0x30], 0x23
mov dword [ebp - 0x18], eax
jmp 0x488611
mov ebx, dword [ebp - 4]
mov eax, dword [ebp - 0x14]
mov edi, dword [ebp + 0x1c]
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x1c]
mov ecx, dword [ebx]
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0xc]
mov dword [ebp - 0xc], eax
movzx eax, byte [ecx]
mov dword [ebp - 4], ebx
movzx eax, byte [eax + 0x4dd7b0]
jmp 0x4841eb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
mov edi, dword [ebp + 0x1c]
shl ecx, 8
or ecx, eax
lea ecx, [ecx*2 - 2]
cmp ecx, dword [ebx + 0x50]
jae 0x4841e6
cmp dword [ebx + ecx*4 + 0x54], 0xffffffff
je 0x4841e6
mov ecx, dword [ebx]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4dd7b0]
jmp 0x4841eb
movzx esi, byte [edi + 3]
movzx eax, byte [edi + 4]
movzx edx, byte [edi + 1]
shl esi, 8
or esi, eax
shl edx, 8
mov eax, dword [ebp + 0x1c]
movzx ebx, word [eax + 0x42]
movzx eax, byte [edi + 2]
mov edi, dword [ebp + 0x1c]
or edx, eax
imul edx, ebx
add edx, dword [edi + 0x44]
test esi, esi
je 0x487c7f
mov eax, dword [ebp - 4]
mov edi, dword [eax + 0x50]
nop dword [eax]
movzx eax, byte [edx]
dec esi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
lea ecx, [ecx*2 - 2]
cmp ecx, edi
jae 0x4842c6
mov eax, dword [ebp - 4]
cmp dword [eax + ecx*4 + 0x54], 0xffffffff
jne 0x487c68
add edx, ebx
test esi, esi
jg 0x4842a0
mov ebx, dword [ebp - 4]
jmp case.0x48412e.148
movzx edx, byte [esi + 1]
movzx eax, byte [esi + 2]
mov ebx, dword [ebp - 4]
shl edx, 8
or edx, eax
cmp dword [ebp - 8], 0
je 0x484322
test edx, edx
je 0x484337
mov ecx, dword [ebx + 0x38]
dec edx
cmp ecx, dword [edi + 0x50]
jbe case.0x484d73.999
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x48431c
nop
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x484310
test edx, edx
jne 0x4842f6
jmp 0x484337
mov ecx, dword [ebx + 0x38]
mov eax, ecx
sub eax, dword [edi + 0x4c]
cmp edx, eax
jg case.0x484d73.999
sub ecx, edx
mov dword [ebx + 0x38], ecx
mov eax, dword [ebx + 0x38]
cmp eax, dword [edi + 0x5c]
jae 0x484342
mov dword [edi + 0x5c], eax
add dword [ebx], 3
jmp 0x479f61
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [ebp - 4]
add eax, esi
mov esi, eax
mov dword [ecx], esi
cmp byte [eax], 0x78
je case.0x479f87.120
jmp 0x479f64
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
sub esi, ecx
mov al, byte [esi]
cmp al, 0x86
je 0x4843f5
cmp al, 0x8a
je 0x4843f5
mov ebx, dword [ebp - 4]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebx + 0x4c]
add ecx, dword [eax + 0x18]
mov edi, ecx
mov dword [ebp - 0x14], ecx
sub edi, dword [ebp + 0x14]
mov eax, dword [edi + 0x4c]
mov dword [ebx + 0x4c], eax
mov eax, dword [ecx + 0x1c]
and eax, 0xffff0000
cmp eax, 0x30000
jne 0x4843fd
mov eax, dword [ebx + 0x50]
shl eax, 2
push eax
lea eax, [ebx + 0x54]
push eax
lea eax, [edi + 0x54]
push eax
call fcn.004a77d0
mov eax, dword [ebx + 0x50]
add esp, 0xc
mov dword [edi + 0x50], eax
mov eax, dword [ebx + 0x40]
mov dword [edi + 0x40], eax
mov eax, ebx
sub eax, edi
mov dword [ebx + 0x10], eax
mov edi, dword [ebp + 0x1c]
mov esi, 1
jmp case.0x484d73.998
mov ebx, dword [ebp - 4]
xor edi, edi
mov ecx, dword [ebp - 0x14]
movzx eax, byte [esi]
add eax, 0xffffff82
cmp eax, 0x10
ja case.0x484413.134
movzx eax, byte [eax + 0x489280]
jmp dword [eax*4 + 0x489264]
mov ecx, dword [ebp + 0x1c]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ecx + 0x60]
jbe 0x484428
mov dword [ecx + 0x60], eax
mov eax, dword [edi + 0x38]
mov dword [ebx + 0x38], eax
jmp case.0x484413.134
mov ecx, dword [ebp + 0x1c]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ecx + 0x60]
jbe 0x484441
mov dword [ecx + 0x60], eax
mov eax, dword [edi + 0x38]
mov dword [ebx + 0x38], eax
mov eax, ebx
sub eax, edi
mov dword [ebx + 0x10], eax
mov edx, dword [edi]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x78
jne case.0x484413.134
lea eax, [ecx + edx]
mov dword [edi], eax
mov edx, eax
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x78
je 0x484467
jmp case.0x484413.134
push edx
push dword [ebx + 0x38]
push dword [edi + 0x38]
call fcn.0046a900
add esp, 0xc
test eax, eax
jne case.0x484413.134
mov edi, dword [ebp + 0x1c]
xor esi, esi
jmp case.0x484d73.998
movzx edx, byte [esi + 3]
movzx eax, byte [esi + 4]
shl edx, 8
or edx, eax
cmp dword [ebx + 0x44], edx
jne 0x4844f7
mov esi, ecx
sub esi, dword [ebp + 0x14]
mov eax, dword [esi + 0x50]
shl eax, 2
push eax
lea eax, [esi + 0x54]
push eax
lea eax, [ebx + 0x54]
push eax
call fcn.004a77d0
mov eax, dword [esi + 0x50]
add esp, 0xc
mov dword [ebx + 0x50], eax
mov eax, dword [esi + 0x48]
mov dword [ebx + 0x48], eax
mov eax, dword [esi + 0x44]
mov dword [ebx + 0x44], eax
mov eax, dword [esi]
add eax, 3
mov dword [ebx], eax
jmp 0x479f5e
mov eax, dword [ebp - 4]
lea ebx, [edx + edx]
mov ecx, dword [ebp + 0x1c]
mov dword [eax + 0x48], edx
mov edx, dword [ebp + 0x1c]
mov eax, dword [edi + 0x38]
sub eax, dword [edx + 0x4c]
mov edx, dword [ebp - 4]
mov dword [edx + ebx*4 + 0x4c], eax
mov eax, dword [edx + 0x38]
sub eax, dword [ecx + 0x4c]
lea ecx, [ebx - 2]
mov dword [edx + ecx*4 + 0x58], eax
cmp ecx, dword [edx + 0x50]
jb case.0x484413.134
mov dword [edx + 0x50], ebx
mov ebx, dword [ebp - 4]
mov edx, dword [ebx]
cmp byte [edx], 0x7c
jne 0x484552
push dword [ebp - 0x38]
lea eax, [ebx + 0x38]
push eax
lea eax, [edi + 0x38]
push eax
call fcn.004a77d0
mov edi, dword [ebp + 0x1c]
add esp, 0xc
mov esi, 0xfffffc1a
jmp case.0x484d73.998
mov cl, byte [ebx + 0x31]
cmp cl, 0x79
je 0x48456e
test edi, edi
je 0x48800f
mov eax, dword [ebx + 0x38]
cmp eax, dword [edi + 0x38]
jne 0x48800f
mov edi, dword [ebp + 0x1c]
add dword [ebx], 3
jmp 0x479f61
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x38]
cmp eax, dword [edi + 0x4c]
jne case.0x484d73.999
test byte [edi + 0x78], 1
jne case.0x484d73.999
lea eax, [esi + 1]
mov dword [ecx], eax
jmp 0x479f64
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x38]
cmp eax, dword [edi + 0x4c]
je 0x484592
jmp case.0x484d73.999
test byte [edi + 0x78], 2
jne case.0x484d73.999
test byte [edi + 0x7c], 0x10
je case.0x479f87.23
mov edx, dword [ebp - 4]
mov eax, dword [edx + 0x38]
cmp eax, dword [edi + 0x54]
jb case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x4845ea
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
inc dword [edx]
jmp 0x479f61
mov ebx, dword [ebp - 4]
mov eax, dword [edi + 0x54]
mov ecx, dword [ebx + 0x38]
cmp ecx, eax
jae 0x4846a6
mov edx, dword [edi + 0x88]
lea esi, [edi + 0x8c]
test edx, edx
je 0x48462f
push dword [ebp - 8]
push esi
push eax
push edx
push ecx
call fcn.0046b140
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x48465f
jmp 0x484651
mov edx, dword [esi]
sub eax, edx
cmp ecx, eax
ja 0x48465f
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne 0x48465f
cmp edx, 1
je 0x484651
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x91]
jne 0x48465f
mov eax, dword [edi + 0x54]
sub eax, dword [esi]
cmp dword [ebx + 0x38], eax
je 0x4846a6
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
mov ecx, dword [ebx + 0x38]
lea eax, [ecx + 1]
cmp eax, dword [edi + 0x54]
jb case.0x484d73.999
cmp dword [edi + 0x88], 0
jne case.0x484d73.999
cmp dword [esi], 2
jne case.0x484d73.999
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne case.0x484d73.999
jmp 0x47d931
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je 0x4846c1
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
inc dword [ebx]
jmp 0x479f61
test byte [edi + 0x78], 1
mov ebx, dword [ebp - 4]
je 0x4846dd
mov eax, dword [ebx + 0x38]
cmp eax, dword [edi + 0x4c]
je case.0x484d73.999
mov ecx, dword [ebx + 0x38]
mov esi, dword [edi + 0x4c]
cmp ecx, esi
je 0x4846c1
cmp ecx, dword [edi + 0x54]
jne 0x4846f9
test dword [edi + 0x7c], 0x200000
je case.0x484d73.999
mov edx, dword [edi + 0x88]
test edx, edx
je 0x484736
cmp ecx, esi
jbe 0x48472b
push dword [ebp - 8]
lea eax, [edi + 0x8c]
push eax
push esi
push edx
push ecx
call fcn.0046b2e0
add esp, 0x14
test eax, eax
je 0x48472b
mov eax, 1
jmp 0x48472d
xor eax, eax
test eax, eax
jne 0x4846c1
jmp case.0x484d73.999
mov edx, dword [edi + 0x8c]
lea eax, [edx + esi]
cmp ecx, eax
jb case.0x484d73.999
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne case.0x484d73.999
cmp edx, 1
je 0x4846c1
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x91]
je 0x4846c1
jmp case.0x484d73.999
mov ebx, dword [ebp - 4]
mov eax, dword [edi + 0x54]
mov ecx, dword [ebx + 0x38]
cmp ecx, eax
jae 0x4847ec
mov edx, dword [edi + 0x88]
lea esi, [edi + 0x8c]
test edx, edx
je 0x4847b5
push dword [ebp - 8]
push esi
push eax
push edx
push ecx
call fcn.0046b140
add esp, 0x14
neg eax
sbb eax, eax
neg eax
jne 0x4846c1
jmp 0x48465f
mov edx, dword [esi]
sub eax, edx
cmp ecx, eax
ja 0x48465f
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne 0x48465f
cmp edx, 1
je 0x4846c1
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x91]
je 0x4846c1
jmp 0x48465f
test byte [edi + 0x78], 2
jne case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je 0x4846c1
cmp ecx, dword [edi + 0x5c]
ja 0x484814
cmp dword [edi + 0x24], 0
je 0x4846c1
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
inc dword [ebx]
jmp 0x479f61
mov ecx, dword [ebp - 4]
mov eax, dword [edi + 0x4c]
add eax, dword [edi + 0x34]
cmp dword [ecx + 0x38], eax
je 0x484592
jmp case.0x484d73.999
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x38]
mov dword [ecx + 0x3c], eax
lea eax, [esi + 1]
mov dword [ecx], eax
jmp 0x479f64
mov eax, dword [ebp - 4]
mov ebx, dword [eax + 0x38]
mov dword [ebp + 8], ebx
cmp ebx, dword [edi + 0x50]
jne 0x48486e
mov esi, dword [ebp + 0x1c]
add edi, 0x5c
jmp 0x484a2c
mov cl, byte [ebx - 1]
lea esi, [ebx - 1]
test edx, edx
je 0x4849aa
mov al, cl
and al, 0xc0
cmp al, 0x80
jne 0x484890
mov cl, byte [esi - 1]
dec esi
mov al, cl
and al, 0xc0
cmp al, 0x80
je 0x484884
movzx edx, cl
cmp edx, 0xc0
jb 0x4848d7
test dl, 0x20
jne 0x4848b3
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
jmp 0x4848d5
test dl, 0x10
jne 0x484911
movzx ecx, byte [esi + 1]
and edx, 0xf
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
or edx, ecx
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, dword [ebp - 4]
add edi, 0x5c
mov dword [ebp + 8], ebx
cmp esi, dword [edi]
jae 0x4848ec
mov dword [edi], esi
mov ebx, dword [eax + 0x38]
mov dword [ebp + 8], ebx
mov esi, dword [ebp + 0x1c]
test dword [esi + 0x7c], 0x20000
je 0x484a0c
cmp edx, 0x5f
jne 0x4849b2
mov dword [ebp + 0xc], 1
jmp 0x484a33
test dl, 8
jne 0x48493e
movzx ecx, byte [esi + 1]
and edx, 7
movzx eax, byte [esi + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
jmp 0x4848d2
movzx eax, byte [esi + 1]
movzx ecx, byte [esi + 2]
and eax, 0x3f
movzx edi, byte [esi + 3]
and ecx, 0x3f
movzx ebx, byte [esi + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x484981
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
mov ebx, dword [ebp + 8]
jmp 0x4848d7
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
mov ebx, dword [ebp + 8]
shl edx, 6
jmp 0x4848d2
movzx edx, cl
jmp 0x4848da
mov eax, edx
test eax, eax
jns 0x4849bb
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x4849d6
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x484a00
cmp eax, 3
jne 0x484a2c
mov dword [ebp + 0xc], 1
jmp 0x484a33
cmp edx, 0xff
ja 0x484a29
mov eax, dword [esi + 0x30]
test byte [edx + eax], 0x10
je 0x484a29
mov dword [ebp + 0xc], 1
mov dword [ebp + 8], ebx
jmp 0x484a33
mov dword [ebp + 8], ebx
mov dword [ebp + 0xc], 0
mov ecx, dword [esi + 0x54]
cmp ebx, ecx
jb 0x484ad9
movzx eax, word [esi + 0x3c]
mov ecx, eax
test ax, ax
je 0x484ad4
cmp ebx, dword [edi]
mov edi, dword [ebp + 0x1c]
ja 0x484a5a
cmp dword [edi + 0x24], 0
je 0x484a6a
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
xor edx, edx
mov ebx, dword [ebp - 4]
xor edx, dword [ebp + 0xc]
mov eax, dword [ebx]
mov cl, byte [eax]
inc eax
mov dword [ebx], eax
cmp cl, 5
jne 0x484a81
xor edx, 1
test edx, edx
je 0x479f61
xor esi, esi
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
cmp eax, dword [edi + 0x60]
jbe 0x484a99
mov dword [edi + 0x60], eax
mov ebx, dword [ebp - 4]
cmp dword [ebx + 0x18], 0
je 0x488780
sub ebx, dword [ebx + 0x10]
mov eax, dword [edi + 0x94]
mov dword [ebp - 4], ebx
or dword [eax + 0x3c], 2
movzx eax, byte [ebx + 0x30]
dec eax
cmp eax, 0xe0
ja case.0x48547a.15
movzx eax, byte [eax + 0x48938c]
jmp dword [eax*4 + 0x489294]
mov edi, dword [ebp + 0x1c]
jmp 0x484a6a
cmp dword [ebp - 8], 0
lea esi, [ebx + 1]
je 0x484be4
cmp esi, ecx
jae 0x484afd
nop word [eax + eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x484afd
inc esi
cmp esi, ecx
jb 0x484af0
movzx edx, byte [ebx]
cmp edx, 0xc0
jb 0x484be7
test dl, 0x20
jne 0x484b25
movzx eax, byte [ebx + 1]
and edx, 0x1f
shl edx, 6
and eax, 0x3f
or edx, eax
jmp 0x484be7
test dl, 0x10
jne 0x484b4a
movzx eax, byte [ebx + 1]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ebx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
jmp 0x484be7
test dl, 8
jne 0x484b7f
movzx ecx, byte [ebx + 1]
and edx, 7
movzx eax, byte [ebx + 2]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [ebx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
jmp 0x484be7
movzx eax, byte [ebx + 1]
movzx ecx, byte [ebx + 2]
and eax, 0x3f
movzx edi, byte [ebx + 3]
and ecx, 0x3f
movzx ebx, byte [ebx + 4]
and edi, 0x3f
and ebx, 0x3f
test dl, 4
jne 0x484bbc
and edx, 3
shl edx, 6
or edx, eax
shl edx, 6
or edx, ecx
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x484be7
and edx, 1
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, ecx
shl edx, 6
movzx eax, byte [eax + 5]
or edx, edi
shl edx, 6
and eax, 0x3f
or edx, ebx
shl edx, 6
or edx, eax
jmp 0x484be7
movzx edx, byte [ebx]
mov edi, dword [ebp + 0x1c]
cmp esi, dword [edi + 0x60]
jbe 0x484bf2
mov dword [edi + 0x60], esi
test dword [edi + 0x7c], 0x20000
je 0x484c66
cmp edx, 0x5f
jne 0x484c0e
mov edx, 1
jmp 0x484a6c
mov eax, edx
test eax, eax
jns 0x484c17
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x484c32
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x484c5c
cmp eax, 3
jne 0x484a6a
mov edx, 1
jmp 0x484a6c
cmp edx, 0xff
ja 0x484a6a
mov eax, dword [edi + 0x30]
test byte [edx + eax], 0x10
je 0x484a6a
mov edx, 1
jmp 0x484a6c
test esi, esi
jne case.0x484d73.998
mov edx, dword [ebx + 4]
mov dword [ebx], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [ebx + 4], ecx
mov eax, dword [ebx]
cmp byte [ecx], 0x78
movzx eax, byte [eax]
mov al, byte [eax + 0x4dd7b0]
je 0x48802c
movzx eax, al
add eax, edx
mov dword [ebx], eax
jmp 0x479f61
cmp esi, 0xfffffc1f
jne 0x484cf4
mov edx, dword [ebx]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
cmp dword [edi + 0x6c], ecx
jae case.0x484d73.998
cmp byte [edx], 0x78
je 0x484cfc
cmp byte [ecx], 0x78
jmp 0x484cf6
test esi, esi
jne case.0x484d73.998
mov edx, dword [ebx]
movzx esi, byte [edx + 1]
movzx eax, byte [edx + 2]
shl esi, 8
or esi, eax
add esi, edx
mov dword [ebx], esi
cmp byte [esi], 0x78
je 0x48840d
jmp case.0x484d73.999
cmp esi, 0xfffffc19
je 0x487b7e
test esi, esi
je 0x484d39
cmp esi, 0xfffffc1f
jne case.0x484d73.998
mov edx, dword [ebx]
movzx esi, byte [edx + 1]
movzx eax, byte [edx + 2]
shl esi, 8
or esi, eax
add esi, edx
mov dword [ebx], esi
cmp byte [esi], 0x78
je 0x4884d8
jmp case.0x484d73.999
test esi, esi
jg 0x484d7a
je case.0x484d73.993
lea eax, [esi + 0x3e7]
cmp eax, 6
ja case.0x484d73.998
jmp dword [eax*4 + 0x489470]
mov eax, esi
sub eax, 1
mov eax, dword [ebp - 4]
jne 0x484a8e
jmp case.0x484d73.999
test esi, esi
jg 0x484dad
je case.0x484da6.993
lea eax, [esi + 0x3e7]
cmp eax, 6
ja case.0x484d73.998
jmp dword [eax*4 + 0x48948c]
mov eax, esi
sub eax, 1
jne case.0x484d73.998
mov eax, dword [ebx + 0x20]
test eax, eax
je 0x4841e6
mov edx, dword [ebx]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebx], edx
cmp byte [edx], 0x78
je 0x484dc5
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4dd7b0]
jmp 0x4841eb
test esi, esi
jne case.0x484d73.998
mov edx, dword [ebx]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [ebx], edx
jmp 0x479f61
test esi, esi
je 0x484571
jmp case.0x484d73.998
cmp esi, 0xfffffc1a
jne 0x484e5b
mov dword [ebx + 0x24], 1
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jne 0x48803a
mov edx, dword [ebx]
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebx], edx
cmp byte [edx], 0x78
je 0x484e40
jmp 0x484eab
cmp esi, 0xfffffc1f
jne 0x484e87
mov edx, dword [ebx]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
cmp dword [edi + 0x6c], ecx
jae case.0x484d73.998
cmp byte [edx], 0x78
je 0x484e8f
cmp byte [ecx], 0x78
jmp 0x484e89
test esi, esi
jne case.0x484d73.998
mov edx, dword [ebx]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebx], edx
cmp byte [edx], 0x78
je 0x4883c9
cmp dword [ebx + 0x24], 0
jne 0x484ee7
cmp dword [ebx + 0x28], 0
jne 0x484ee7
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov edx, dword [ebx + 4]
nop
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebx + 4], edx
cmp byte [edx], 0x78
je 0x484ed0
lea eax, [edx + 3]
mov dword [ebx], eax
jmp 0x479f61
test esi, esi
je 0x4846c1
jmp case.0x484d73.998
mov edx, dword [ebx + 4]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
lea eax, [esi + 0x3e5]
add ecx, edx
cmp eax, 4
ja 0x484f50
mov eax, dword [ebx + 0x20]
xor eax, 0x40000
cmp dword [edi + 0x74], eax
jne 0x484f50
cmp esi, 0xfffffc1f
jne case.0x484d73.999
cmp dword [edi + 0x6c], ecx
jae case.0x484d73.999
cmp byte [edx], 0x78
je 0x484f58
cmp byte [ecx], 0x78
je 0x484f58
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov dword [ebx + 4], ecx
cmp byte [ecx], 0x78
je 0x4884ae
jmp case.0x484d73.999
cmp esi, 0xfffffc1e
jne case.0x484d73.998
mov eax, dword [ebx]
push dword [edi + 0x70]
add eax, 2
push eax
call fcn.0046aed0
add esp, 8
test eax, eax
jne case.0x484d73.998
mov eax, dword [ebx + 0x38]
mov esi, 0xfffffc1d
mov dword [edi + 0x70], eax
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx + 0x44]
mov esi, 0xfffffc1c
mov dword [edi + 0x74], eax
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx + 0x38]
mov esi, 0xfffffc1d
mov dword [edi + 0x70], eax
mov eax, dword [ebx + 0x44]
mov dword [edi + 0x74], eax
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx]
mov esi, 0xfffffc1e
add eax, 2
mov dword [edi + 0x70], eax
mov eax, dword [ebx + 0x44]
mov dword [edi + 0x74], eax
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx]
mov esi, 0xfffffc1f
mov dword [edi + 0x6c], eax
mov eax, dword [ebx + 0x44]
mov dword [edi + 0x74], eax
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
lea eax, [ebp - 0x48]
push eax
push edi
push ebx
push dword [ebx + 0x28]
push dword [ebx + 0x14]
call fcn.00489870
add esp, 0x14
test eax, eax
je 0x488044
jle 0x48504f
mov eax, dword [edi + 0x54]
mov dword [ebx + 0x38], eax
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x485079
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx + 0xc]
sub dword [ebx + 0x38], eax
jmp 0x483fc0
test esi, esi
jne case.0x484d73.998
mov esi, dword [ebx + 4]
mov eax, dword [ebp - 4]
cmp dword [ebx + 0x38], esi
jne 0x488063
xor esi, esi
jmp 0x484a8e
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x485117
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x485102
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
lea eax, [edx + 1]
mov dword [ebx + 0x38], eax
mov esi, ecx
mov edx, dword [ebx + 8]
and ecx, 7
shr esi, 3
mov eax, 1
shl eax, cl
test byte [esi + edx], al
je case.0x484d73.999
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x17
jmp 0x488611
test esi, esi
jne case.0x484d73.998
dec dword [ebx + 0x38]
jmp 0x47c480
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x4851ae
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x485199
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx eax, byte [ecx]
cmp dword [ebx + 0x28], eax
je 0x4851bf
cmp dword [ebx + 0x2c], eax
jne case.0x484d73.999
lea eax, [ecx + 1]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0x19
jmp 0x488611
dec dword [ebx + 0x38]
test esi, esi
je 0x47b30f
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov esi, dword [ebx + 0x38]
cmp esi, dword [edi + 0x54]
jb 0x48523c
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp esi, dword [edi + 0x5c]
ja 0x485227
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [esi]
lea eax, [esi + 1]
mov dword [ebx + 0x38], eax
cmp dword [ebx + 0x28], ecx
je 0x4880a6
jmp case.0x484d73.999
dec dword [ebx + 0x38]
test esi, esi
je 0x47b42a
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x4852bb
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4852a6
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx eax, byte [ecx]
cmp dword [ebx + 0x28], eax
je case.0x484d73.999
cmp dword [ebx + 0x2c], eax
je case.0x484d73.999
lea eax, [ecx + 1]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0x1d
jmp 0x488611
test esi, esi
jne case.0x484d73.998
dec dword [ebx + 0x38]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
je 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x1e
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov esi, dword [ebx + 0x38]
cmp esi, dword [edi + 0x54]
jb 0x48535f
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp esi, dword [edi + 0x5c]
ja 0x48534a
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [esi]
lea eax, [esi + 1]
mov dword [ebx + 0x38], eax
cmp dword [ebx + 0x28], ecx
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0x1f
jmp 0x488611
test esi, esi
jne case.0x484d73.998
dec dword [ebx + 0x38]
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
je 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x20
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
mov eax, dword [edi + 0x54]
cmp ecx, eax
jb 0x4853fb
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4853e6
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
cmp dword [ebx + 0x28], 0xc
jne 0x48545f
mov edx, dword [edi + 0x88]
lea esi, [edi + 0x8c]
test edx, edx
je 0x485435
push dword [ebp - 8]
push esi
push eax
push edx
push ecx
call fcn.0046b140
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x48545f
jmp case.0x484d73.999
mov edx, dword [esi]
sub eax, edx
cmp ecx, eax
ja 0x48545f
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne 0x48545f
cmp edx, 1
je case.0x484d73.999
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x91]
je case.0x484d73.999
mov eax, dword [ebx + 0x38]
movzx ecx, byte [eax]
lea esi, [eax + 1]
mov dword [ebx + 0x38], esi
mov eax, dword [ebx + 0x28]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x48547a.15
jmp dword [eax*4 + 0x4894a8]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x484d73.999
movzx eax, byte [ecx + 0x4894f8]
jmp dword [eax*4 + 0x4894e8]
cmp word [edi + 0x3e], 2
jne case.0x48547a.13
jmp case.0x484d73.999
cmp ecx, 9
je case.0x484d73.999
cmp ecx, 0x20
je case.0x484d73.999
cmp ecx, 0xa0
jne case.0x48547a.13
jmp case.0x484d73.999
cmp ecx, 9
je case.0x48547a.13
cmp ecx, 0x20
je case.0x48547a.13
cmp ecx, 0xa0
je case.0x48547a.13
jmp case.0x484d73.999
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x48547a.13
movzx eax, byte [ecx + 0x48957c]
jmp dword [eax*4 + 0x489574]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x484d73.999
movzx eax, byte [ecx + 0x489600]
jmp dword [eax*4 + 0x4895f8]
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 8
mov eax, dword [ebp - 4]
je 0x48811f
xor esi, esi
jmp 0x484a8e
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 8
mov eax, dword [ebp - 4]
jne 0x48811f
xor esi, esi
jmp 0x484a8e
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 1
mov eax, dword [ebp - 4]
je 0x48811f
xor esi, esi
jmp 0x484a8e
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 1
mov eax, dword [ebp - 4]
jne 0x48811f
xor esi, esi
jmp 0x484a8e
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 0x10
mov eax, dword [ebp - 4]
je 0x48811f
xor esi, esi
jmp 0x484a8e
mov eax, dword [edi + 0x30]
test byte [ecx + eax], 0x10
mov eax, dword [ebp - 4]
jne 0x48811f
xor esi, esi
jmp 0x484a8e
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx + 0x38]
dec eax
mov dword [ebx + 0x38], eax
cmp dword [ebx + 0x28], 0x11
jne 0x4855db
cmp eax, dword [ebx + 4]
jbe 0x4855db
cmp byte [eax], 0xa
jne 0x4855db
mov ecx, dword [ebx + 0x38]
dec eax
cmp byte [eax], 0xd
cmove ecx, eax
mov dword [ebx + 0x38], ecx
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
je 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x22
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov eax, dword [ebx + 0x44]
mov esi, 0xfffffc1b
mov dword [edi + 0x74], eax
jmp case.0x484d73.998
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x485662
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x48564d
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x485774
cmp edx, 0xc0
jb 0x485774
lea esi, [ecx + 1]
test dl, 0x20
jne 0x48569d
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x485774
lea edi, [ecx + 2]
test dl, 0x10
jne 0x4856c6
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x485771
lea ebx, [ecx + 3]
test dl, 8
jne 0x485703
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x485771
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x485745
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x48576b
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
push dword [ebp - 8]
push dword [ebx + 8]
push edx
call fcn.0046b490
add esp, 0xc
test eax, eax
jne 0x48812d
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
lea edx, [ecx - 1]
mov dword [ebx + 0x38], edx
cmp ecx, dword [ebx + 4]
jbe case.0x484d73.999
cmp dword [ebp - 8], esi
je 0x47c84b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x47c84b
nop
dec edx
mov dword [ebx + 0x38], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x4857c0
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x65
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x48582f
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x48581a
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ebx, byte [ecx]
inc ecx
mov edi, dword [ebp - 4]
mov dword [edi + 0x38], ecx
cmp ebx, 0xc0
jb 0x485937
lea edx, [ecx + 1]
test bl, 0x20
jne 0x485863
movzx eax, byte [ecx]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov dword [edi + 0x38], edx
jmp 0x485937
lea esi, [ecx + 2]
test bl, 0x10
jne 0x48588c
movzx ecx, byte [ecx]
and ebx, 0xf
movzx eax, byte [edx]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
mov dword [edi + 0x38], esi
shl ebx, 6
or ebx, eax
jmp 0x485937
lea edi, [ecx + 3]
test bl, 8
jne 0x4858c9
movzx ecx, byte [ecx]
and ebx, 7
movzx eax, byte [edx]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], edi
mov edi, eax
jmp 0x485937
movzx edx, byte [edx]
lea eax, [ecx + 4]
movzx esi, byte [esi]
and edx, 0x3f
movzx edi, byte [edi]
and esi, 0x3f
mov dword [ebp + 8], eax
and edi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 4
jne 0x48590b
and ebx, 3
shl ebx, 6
or ebx, eax
mov eax, dword [ebp + 8]
shl ebx, 6
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
jmp 0x485931
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, edx
shl ebx, 6
or ebx, esi
shl ebx, 6
or ebx, edi
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov edi, dword [ebp - 4]
mov dword [edi + 0x38], eax
cmp ebx, 0xff
jbe 0x485951
cmp byte [edi + 0x31], 0x6e
jne 0x488138
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
mov edx, dword [edi + 8]
mov esi, ebx
and ebx, 7
shr esi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [esi + edx], al
jne 0x488138
mov edi, dword [ebp + 0x1c]
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
lea edx, [ecx - 1]
mov dword [ebx + 0x38], edx
cmp ecx, dword [ebx + 4]
jbe case.0x484d73.999
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x47c3f3
nop dword [eax]
dec edx
mov dword [ebx + 0x38], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x4859a0
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xc9
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov eax, dword [ebp + 0x1c]
mov edi, dword [ebx + 0xc]
mov ebx, dword [ebx + 0x38]
mov ecx, dword [eax + 0x54]
mov eax, ecx
sub eax, edi
mov dword [ebp + 8], ecx
cmp ebx, eax
ja 0x485a62
mov eax, dword [ebp - 4]
mov esi, edi
mov ecx, ebx
mov edx, dword [eax + 8]
sub esi, 4
jb 0x485a11
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x485a1a
add ecx, 4
add edx, 4
sub esi, 4
jae 0x485a00
cmp esi, 0xfffffffc
je 0x488143
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x485a5f
cmp esi, 0xfffffffd
je 0x488143
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x485a5f
cmp esi, 0xfffffffe
je 0x488143
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x485a5f
cmp esi, 0xffffffff
je 0x488143
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x488143
mov ecx, dword [ebp + 8]
mov edx, dword [ebp - 4]
mov edi, dword [edx + 0x14]
test edi, edi
je 0x485ae7
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x485ae7
mov esi, edi
add edx, 0x32
mov ecx, ebx
sub esi, 4
jb 0x485a99
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x485aa2
add ecx, 4
add edx, 4
sub esi, 4
jae 0x485a88
cmp esi, 0xfffffffc
je 0x488143
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x485ae7
cmp esi, 0xfffffffd
je 0x488143
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x485ae7
cmp esi, 0xfffffffe
je 0x488143
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x485ae7
cmp esi, 0xffffffff
je 0x488143
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x488143
mov edi, dword [ebp + 0x1c]
cmp ebx, dword [edi + 0x54]
jb case.0x484d73.999
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp ebx, dword [edi + 0x5c]
ja 0x485b11
cmp dword [edi + 0x24], 0
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x485b4c
nop dword [eax]
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x485b40
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jbe 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xcb
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x485bbb
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x485ba6
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
mov dword [ebx + 0x38], edx
cmp ecx, 0xc0
jb 0x485cc3
lea esi, [edx + 1]
test cl, 0x20
jne 0x485bec
movzx eax, byte [edx]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], esi
jmp 0x485cc3
lea edi, [edx + 2]
test cl, 0x10
jne 0x485c15
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], edi
jmp 0x485cc0
lea ebx, [edx + 3]
test cl, 8
jne 0x485c52
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x485cc0
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x485c94
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x485cba
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
cmp dword [ebx + 0x28], ecx
je case.0x484d73.999
cmp dword [ebx + 0x2c], ecx
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xcc
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x485d0c
nop word [eax + eax]
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x485d00
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jbe 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xcd
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x485d7b
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x485d66
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
mov dword [ebx + 0x38], edx
cmp ecx, 0xc0
jb 0x485e83
lea esi, [edx + 1]
test cl, 0x20
jne 0x485dac
movzx eax, byte [edx]
and ecx, 0x1f
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], esi
jmp 0x485e83
lea edi, [edx + 2]
test cl, 0x10
jne 0x485dd5
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], edi
jmp 0x485e80
lea ebx, [edx + 3]
test cl, 8
jne 0x485e12
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x485e80
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x485e54
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x485e7a
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
cmp dword [ebx + 0x28], ecx
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xce
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x485ebd
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x485eb1
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jbe 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xcf
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x485f2c
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x485f17
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
cmp dword [ebp - 8], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [ebx + 0x38], edx
je 0x485f72
cmp eax, 0xc0
jb 0x485f72
test al, 0x20
jne 0x485f53
lea eax, [edx + 1]
jmp 0x485f6f
test al, 0x10
jne 0x485f5c
lea eax, [ecx + 3]
jmp 0x485f6f
test al, 8
jne 0x485f65
lea eax, [ecx + 4]
jmp 0x485f6f
test al, 4
lea eax, [ecx + 5]
je 0x485f6f
lea eax, [ecx + 6]
mov dword [ebx + 0x38], eax
cmp dword [ebx + 0x28], 0xf
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd0
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x485fe2
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x485fcd
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], edx
je 0x4860f4
cmp ecx, 0xc0
jb 0x4860f4
lea esi, [edx + 1]
test cl, 0x20
jne 0x48601d
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [ebx + 0x38], esi
jmp 0x4860f4
lea edi, [edx + 2]
test cl, 0x10
jne 0x486046
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], edi
jmp 0x4860f1
lea ebx, [edx + 3]
test cl, 8
jne 0x486083
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x4860f1
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x4860c5
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x4860eb
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, ecx
test eax, eax
jns 0x4860fd
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x486118
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
mov al, byte [eax*4 + 0x4e2981]
cmp al, 9
je 0x48613c
cmp al, 5
je 0x48613c
cmp al, 8
je 0x48613c
xor ecx, ecx
jmp 0x486141
mov ecx, 1
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd1
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x4861b8
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4861a3
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x4862ca
cmp edx, 0xc0
jb 0x4862ca
lea esi, [ecx + 1]
test dl, 0x20
jne 0x4861f3
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x4862ca
lea edi, [ecx + 2]
test dl, 0x10
jne 0x48621c
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x4862c7
lea ebx, [ecx + 3]
test dl, 8
jne 0x486259
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x4862c7
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x48629b
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x4862c1
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, edx
test eax, eax
jns 0x4862d3
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x4862ee
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, dword [ebx + 0x2c]
sete cl
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd2
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x486389
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x486374
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x48649b
cmp edx, 0xc0
jb 0x48649b
lea esi, [ecx + 1]
test dl, 0x20
jne 0x4863c4
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x48649b
lea edi, [ecx + 2]
test dl, 0x10
jne 0x4863ed
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x486498
lea ebx, [ecx + 3]
test dl, 8
jne 0x48642a
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x486498
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x48646c
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x486492
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, edx
test eax, eax
jns 0x4864a4
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x4864bf
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
cmp eax, dword [ebx + 0x2c]
sete cl
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd3
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x486553
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x48653e
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x486665
cmp edx, 0xc0
jb 0x486665
lea esi, [ecx + 1]
test dl, 0x20
jne 0x48658e
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x486665
lea edi, [ecx + 2]
test dl, 0x10
jne 0x4865b7
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x486662
lea ebx, [ecx + 3]
test dl, 8
jne 0x4865f4
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x486662
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x486636
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x48665c
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, edx
test eax, eax
jns 0x48666e
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x486689
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2980]
cmp eax, dword [ebx + 0x2c]
sete cl
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd4
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x48671d
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x486708
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], edx
je 0x48682f
cmp ecx, 0xc0
jb 0x48682f
lea esi, [edx + 1]
test cl, 0x20
jne 0x486758
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [ebx + 0x38], esi
jmp 0x48682f
lea edi, [edx + 2]
test cl, 0x10
jne 0x486781
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], edi
jmp 0x48682c
lea ebx, [edx + 3]
test cl, 8
jne 0x4867be
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x48682c
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x486800
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x486826
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, ecx
test eax, eax
jns 0x486838
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x486853
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x48687d
cmp eax, 3
je 0x48687d
xor ecx, ecx
jmp 0x486882
mov ecx, 1
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd5
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x4868f9
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4868e4
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x486a0b
cmp edx, 0xc0
jb 0x486a0b
lea esi, [ecx + 1]
test dl, 0x20
jne 0x486934
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x486a0b
lea edi, [ecx + 2]
test dl, 0x10
jne 0x48695d
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x486a08
lea ebx, [ecx + 3]
test dl, 8
jne 0x48699a
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x486a08
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x4869dc
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x486a02
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
cmp edx, 0x20
ja 0x486a29
je case.0x486af0.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x486af0.8203
jmp dword [eax*4 + 0x48967c]
cmp edx, 0x2000
ja 0x486ad0
je case.0x486af0.8193
cmp edx, 0x1680
ja 0x486ac8
je case.0x486af0.8193
mov eax, edx
sub eax, 0x85
je case.0x486af0.8193
sub eax, 0x1b
je case.0x486af0.8193
mov eax, edx
test eax, eax
jns 0x486a6c
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x486a87
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
cmp dword [eax*4 + 0x4dd928], 6
sete cl
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd6
jmp 0x488611
cmp edx, 0x180e
jmp 0x486a5d
cmp edx, 0x3000
ja case.0x486af0.8203
je case.0x486af0.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x486af0.8203
movzx eax, byte [eax + 0x489698]
jmp dword [eax*4 + 0x489690]
cmp dword [ebx + 0x28], 0xf
jne 0x486aba
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x486b5a
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x486b45
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x486c6c
cmp edx, 0xc0
jb 0x486c6c
lea esi, [ecx + 1]
test dl, 0x20
jne 0x486b95
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x486c6c
lea edi, [ecx + 2]
test dl, 0x10
jne 0x486bbe
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x486c69
lea ebx, [ecx + 3]
test dl, 8
jne 0x486bfb
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x486c69
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x486c3d
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x486c63
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, edx
shr eax, 7
movzx ecx, word [eax*2 + 0x4e6b90]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2981]
mov eax, dword [eax*4 + 0x4dd928]
cmp eax, 1
je 0x486cb0
cmp eax, 3
je 0x486cb0
cmp edx, 0x5f
je 0x486cb0
xor ecx, ecx
jmp 0x486cb5
mov ecx, 1
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd7
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x486d2c
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x486d17
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x486e3e
cmp edx, 0xc0
jb 0x486e3e
lea esi, [ecx + 1]
test dl, 0x20
jne 0x486d67
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x486e3e
lea edi, [ecx + 2]
test dl, 0x10
jne 0x486d90
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x486e3b
lea ebx, [ecx + 3]
test dl, 8
jne 0x486dcd
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x486e3b
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x486e0f
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x486e35
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, dword [ebx + 0x2c]
mov ecx, dword [eax*4 + 0x4e23b8]
lea eax, [eax*4 + 0x4e23b8]
cmp edx, ecx
jb 0x486e60
lea eax, [eax + 4]
cmp edx, ecx
je 0x486e78
mov ecx, dword [eax]
cmp edx, ecx
jae 0x486e53
cmp dword [ebx + 0x28], 0xf
jne case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd8
jmp 0x488611
cmp dword [ebx + 0x28], 0xf
jne 0x486e6a
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov edx, dword [ebx + 0x38]
cmp edx, dword [edi + 0x54]
jb 0x486edb
movzx eax, word [edi + 0x3c]
mov ecx, eax
test ax, ax
je case.0x484d73.999
cmp edx, dword [edi + 0x5c]
ja 0x486ec6
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp ecx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx ecx, byte [edx]
inc edx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], edx
je 0x486fed
cmp ecx, 0xc0
jb 0x486fed
lea esi, [edx + 1]
test cl, 0x20
jne 0x486f16
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [ebx + 0x38], esi
jmp 0x486fed
lea edi, [edx + 2]
test cl, 0x10
jne 0x486f3f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [ebx + 0x38], edi
jmp 0x486fea
lea ebx, [edx + 3]
test cl, 8
jne 0x486f7c
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x486fea
movzx esi, byte [esi]
lea eax, [edx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [edx]
and eax, 0x3f
test cl, 4
jne 0x486fbe
and ecx, 3
shl ecx, 6
or ecx, eax
mov eax, dword [ebp + 8]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
jmp 0x486fe4
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, esi
shl ecx, 6
or ecx, edi
shl ecx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
cmp ecx, 0x24
je 0x48701c
cmp ecx, 0x40
je 0x48701c
cmp ecx, 0x60
je 0x48701c
cmp ecx, 0xa0
jb 0x487010
cmp ecx, 0xd7ff
jbe 0x48701c
cmp ecx, 0xe000
jae 0x48701c
xor ecx, ecx
jmp 0x487021
mov ecx, 1
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xd9
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x488159
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x487083
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
mov eax, dword [edi + 0x54]
cmp ecx, eax
jb 0x4870f2
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4870dd
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
cmp dword [ebx + 0x28], 0xc
jne 0x48715a
mov edx, dword [edi + 0x88]
lea esi, [edi + 0x8c]
test edx, edx
je 0x48712c
push dword [ebp - 8]
push esi
push eax
push edx
push ecx
call fcn.0046b140
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x48715a
jmp case.0x484d73.999
mov edx, dword [esi]
sub eax, edx
cmp ecx, eax
ja 0x48715a
mov al, byte [ecx]
cmp al, byte [edi + 0x90]
jne 0x48715a
cmp edx, 1
je case.0x484d73.999
mov al, byte [ecx + 1]
cmp al, byte [edi + 0x91]
je case.0x484d73.999
mov eax, dword [ebx + 0x38]
movzx edx, byte [eax]
lea ecx, [eax + 1]
mov dword [ebx + 0x38], ecx
cmp edx, 0xc0
jb 0x487283
lea esi, [ecx + 1]
test dl, 0x20
jne 0x487192
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
mov ecx, esi
jmp 0x487283
lea edi, [ecx + 2]
test dl, 0x10
jne 0x4871bd
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
mov ecx, edi
or edx, eax
jmp 0x487280
lea ebx, [ecx + 3]
mov dword [ebp + 8], ebx
test dl, 8
jne 0x4871ff
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ecx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x487280
movzx ebx, byte [ecx]
lea eax, [ecx + 4]
movzx esi, byte [esi]
and ebx, 0x3f
movzx edi, byte [edi]
and esi, 0x3f
mov dword [ebp + 0xc], eax
and edi, 0x3f
mov eax, dword [ebp + 8]
movzx eax, byte [eax]
and eax, 0x3f
mov dword [ebp + 8], eax
mov eax, dword [ebp + 0xc]
test dl, 4
jne 0x487254
and edx, 3
mov ecx, eax
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 4]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
mov dword [ebx + 0x38], eax
shl edx, 6
or edx, dword [ebp + 8]
jmp 0x487280
movzx eax, byte [eax]
and edx, 1
shl edx, 6
and eax, 0x3f
or edx, ebx
mov ebx, dword [ebp - 4]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, dword [ebp + 8]
shl edx, 6
or edx, eax
add ecx, 5
mov dword [ebx + 0x38], ecx
mov edi, dword [ebp + 0x1c]
mov eax, dword [ebx + 0x28]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x48547a.15
jmp dword [eax*4 + 0x4896f8]
cmp edx, 0x85
ja 0x4872ba
je case.0x4872b3.11
add edx, 0xfffffff6
cmp edx, 3
ja case.0x484d73.999
jmp dword [edx*4 + 0x489738]
sub edx, 0x2028
je case.0x4872b3.11
sub edx, 1
jne case.0x484d73.999
cmp word [edi + 0x3e], 2
jne case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x2000
ja 0x48732f
je case.0x484d73.999
cmp edx, 0xa0
ja 0x487312
je case.0x484d73.999
cmp edx, 9
je case.0x484d73.999
cmp edx, 0x20
jne case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x1680
je case.0x484d73.999
cmp edx, 0x180e
jne case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x3000
ja case.0x487292.13
je case.0x484d73.999
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x487292.13
movzx eax, byte [edx + 0x489750]
jmp dword [eax*4 + 0x489748]
cmp edx, 0x2000
ja 0x4873b2
je case.0x487292.13
cmp edx, 0xa0
ja 0x487395
je case.0x487292.13
cmp edx, 9
je case.0x487292.13
cmp edx, 0x20
je case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x1680
je case.0x487292.13
cmp edx, 0x180e
je case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x3000
ja case.0x484d73.999
je case.0x487292.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x484d73.999
movzx eax, byte [edx + 0x4897b8]
jmp dword [eax*4 + 0x4897b0]
cmp edx, 0x85
ja 0x487402
je case.0x484d73.999
add edx, 0xfffffff6
cmp edx, 3
ja case.0x487292.13
jmp dword [edx*4 + 0x489818]
sub edx, 0x2028
je case.0x484d73.999
sub edx, 1
jne case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x85
ja 0x48743d
je case.0x487292.13
add edx, 0xfffffff6
cmp edx, 3
ja case.0x484d73.999
jmp dword [edx*4 + 0x489828]
sub edx, 0x2028
je case.0x487292.13
sub edx, 1
je case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x100
jae case.0x487292.13
mov eax, dword [edi + 0x30]
test byte [edx + eax], 8
je case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x100
jae case.0x484d73.999
mov eax, dword [edi + 0x30]
test byte [edx + eax], 8
jne case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x100
jae case.0x487292.13
mov eax, dword [edi + 0x30]
test byte [edx + eax], 1
je case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x100
jae case.0x484d73.999
mov eax, dword [edi + 0x30]
test byte [edx + eax], 1
jne case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x100
jae case.0x487292.13
mov eax, dword [edi + 0x30]
test byte [edx + eax], 0x10
je case.0x487292.13
jmp case.0x484d73.999
cmp edx, 0x100
jae case.0x484d73.999
mov eax, dword [edi + 0x30]
test byte [edx + eax], 0x10
jne case.0x487292.13
jmp case.0x484d73.999
test esi, esi
jne case.0x484d73.998
mov edx, dword [ebx + 0x38]
mov esi, dword [ebp - 8]
dec edx
mov dword [ebx + 0x38], edx
test esi, esi
jne 0x487c87
movzx ebx, byte [edx]
jmp 0x487d65
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x487550
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x487544
cmp dword [ebx + 0x28], 0x11
jne 0x487570
cmp ecx, dword [ebx + 4]
jbe 0x487570
cmp byte [ecx], 0xa
jne 0x487570
cmp byte [ecx - 1], 0xd
lea eax, [ecx - 1]
mov ecx, dword [ebx + 0x38]
cmove ecx, eax
mov dword [ebx + 0x38], ecx
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jbe 0x479f61
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xdd
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x38]
mov edx, dword [ebp - 8]
dec ecx
mov dword [ebx + 0x38], ecx
test edx, edx
je 0x4875b1
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4875b1
dec ecx
mov dword [ebx + 0x38], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4875a5
mov eax, dword [ebx + 0x38]
cmp eax, dword [ebx + 4]
jbe 0x479f64
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0xde
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x487620
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x48760b
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x487732
cmp edx, 0xc0
jb 0x487732
lea esi, [ecx + 1]
test dl, 0x20
jne 0x48765b
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x487732
lea edi, [ecx + 2]
test dl, 0x10
jne 0x487684
movzx eax, byte [ecx]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [ebx + 0x38], edi
jmp 0x48772f
lea ebx, [ecx + 3]
test dl, 8
jne 0x4876c1
movzx eax, byte [ecx]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x48772f
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x487703
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x487729
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebx + 0x2c]
mov eax, edx
test eax, eax
jns 0x48773e
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x487759
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx edx, word [eax*4 + 0x4e298a]
mov eax, ecx
shr eax, 5
and edx, 0xfff
add edx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
mov ecx, dword [edx*4 + 0x4e1e30]
and ecx, eax
neg ecx
sbb ecx, ecx
xor eax, eax
neg ecx
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xdf
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x48780b
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4877f6
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x48791d
cmp edx, 0xc0
jb 0x48791d
lea esi, [ecx + 1]
test dl, 0x20
jne 0x487846
movzx eax, byte [ecx]
and edx, 0x1f
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x48791d
lea edi, [ecx + 2]
test dl, 0x10
jne 0x48786f
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x48791a
lea ebx, [ecx + 3]
test dl, 8
jne 0x4878ac
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x48791a
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x4878ee
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x487914
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, edx
test eax, eax
jns 0x487926
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x487941
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx eax, word [eax*4 + 0x4e2988]
shr eax, 0xb
cmp eax, dword [ebx + 0x2c]
sete cl
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xe0
jmp 0x488611
test esi, esi
jne case.0x484d73.998
mov ecx, dword [ebx + 0x20]
lea eax, [ecx + 1]
mov dword [ebx + 0x20], eax
cmp ecx, dword [ebx + 0x24]
jae case.0x484d73.999
mov ecx, dword [ebx + 0x38]
cmp ecx, dword [edi + 0x54]
jb 0x4879d8
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x484d73.999
cmp ecx, dword [edi + 0x5c]
ja 0x4879c3
cmp dword [edi + 0x24], esi
je case.0x484d73.999
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
jmp case.0x484d73.999
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov dword [ebx + 0x38], ecx
je 0x487aea
cmp edx, 0xc0
jb 0x487aea
lea esi, [ecx + 1]
test dl, 0x20
jne 0x487a13
movzx eax, byte [ecx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov dword [ebx + 0x38], esi
jmp 0x487aea
lea edi, [ecx + 2]
test dl, 0x10
jne 0x487a3c
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
mov dword [ebx + 0x38], edi
shl edx, 6
or edx, eax
jmp 0x487ae7
lea ebx, [ecx + 3]
test dl, 8
jne 0x487a79
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [esi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x38], ebx
mov ebx, eax
jmp 0x487ae7
movzx esi, byte [esi]
lea eax, [ecx + 4]
movzx edi, byte [edi]
and esi, 0x3f
movzx ebx, byte [ebx]
and edi, 0x3f
mov dword [ebp + 8], eax
and ebx, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x487abb
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
jmp 0x487ae1
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, esi
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x38], eax
mov edi, dword [ebp + 0x1c]
mov eax, edx
test eax, eax
jns 0x487af3
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and edx, 0x8000007f
jns 0x487b0e
dec edx
or edx, 0xffffff80
inc edx
mov ecx, dword [ebx + 0x2c]
add eax, edx
movzx eax, word [eax*2 + 0x4eaf90]
lea edx, [eax + eax*2]
movzx eax, byte [edx*4 + 0x4e2980]
cmp eax, ecx
je 0x487b5a
movzx edx, word [edx*4 + 0x4e2988]
mov eax, ecx
shr eax, 5
and edx, 0x3ff
add edx, eax
and ecx, 0x1f
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e2688], eax
jne 0x487b5a
xor ecx, ecx
jmp 0x487b5f
mov ecx, 1
xor eax, eax
cmp dword [ebx + 0x28], 0xf
sete al
cmp ecx, eax
je case.0x484d73.999
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xe1
jmp 0x488611
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi + 0x50]
shl eax, 2
push eax
lea eax, [esi + 0x54]
push eax
lea eax, [ebx + 0x54]
push eax
call fcn.004a77d0
mov eax, dword [esi + 0x50]
add esp, 0xc
mov dword [ebx + 0x50], eax
mov eax, dword [esi + 0x40]
mov dword [ebx + 0x40], eax
mov edx, dword [ebx]
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [ebx], edx
cmp byte [edx], 0x78
je 0x487bb0
lea eax, [edx + 3]
mov dword [ebx], eax
jmp 0x479f61
mov esi, dword [ebx]
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
add esi, ecx
mov dword [ebx], esi
cmp byte [esi], 0x78
je 0x487bd2
lea eax, [esi + 3]
mov dword [ebx], eax
jmp 0x479f61
mov edx, dword [ebx]
movzx esi, byte [edx + 1]
movzx eax, byte [edx + 2]
shl esi, 8
or esi, eax
add esi, edx
mov dword [ebx], esi
cmp byte [esi], 0x78
je 0x488501
lea eax, [esi + 3]
mov dword [ebx], eax
jmp 0x479f61
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi + 0x50]
shl eax, 2
push eax
lea eax, [esi + 0x54]
push eax
lea eax, [ebx + 0x54]
push eax
call fcn.004a77d0
mov eax, dword [esi + 0x50]
add esp, 0xc
mov dword [ebx + 0x50], eax
jmp 0x484db8
mov edx, dword [ebx + 4]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [ebx + 4], eax
cmp byte [eax], 0x78
je 0x487fea
xor eax, eax
cmp dword [ebx + 0x20], eax
sete al
jmp 0x484dbb
mov ebx, dword [ebp - 4]
mov edi, dword [ebp + 0x1c]
mov ecx, dword [ebx]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4dd7b0]
jmp 0x4841eb
mov ebx, dword [ebp - 4]
jmp 0x4841e6
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x487c9c
nop
dec edx
mov dword [ebx + 0x38], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x487c90
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x487d65
test bl, 0x20
jne 0x487cbc
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x487d5d
test bl, 0x10
jne 0x487cd9
movzx ecx, byte [edx + 1]
and ebx, 0xf
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
jmp 0x487d5d
test bl, 8
jne 0x487d02
movzx ecx, byte [edx + 1]
and ebx, 7
movzx eax, byte [edx + 2]
and ecx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x487d5d
movzx eax, byte [edx + 1]
movzx ecx, byte [edx + 2]
and eax, 0x3f
movzx esi, byte [edx + 3]
and ecx, 0x3f
movzx edi, byte [edx + 4]
and esi, 0x3f
and edi, 0x3f
test bl, 4
jne 0x487d3f
and ebx, 3
shl ebx, 6
or ebx, eax
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, esi
mov esi, dword [ebp - 8]
shl ebx, 6
or ebx, edi
jmp 0x487d65
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, esi
mov esi, dword [ebp - 8]
shl ebx, 6
or ebx, edi
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
test eax, eax
jns 0x487d6e
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ebx, 0x8000007f
jns 0x487d89
dec ebx
or ebx, 0xffffff80
inc ebx
mov edi, dword [ebp - 4]
add eax, ebx
movzx eax, word [eax*2 + 0x4eaf90]
mov ebx, dword [edi + 4]
mov dword [ebp + 8], ebx
lea eax, [eax + eax*2]
movzx eax, byte [eax*4 + 0x4e2982]
mov dword [ebp + 0xc], eax
cmp edx, ebx
jbe 0x487ef6
mov cl, byte [edx - 1]
dec edx
test esi, esi
jne 0x487dc2
movzx ecx, cl
jmp 0x487e99
mov al, cl
and al, 0xc0
cmp al, 0x80
jne 0x487ddc
nop word [eax + eax]
mov cl, byte [edx - 1]
dec edx
mov al, cl
and al, 0xc0
cmp al, 0x80
je 0x487dd0
movzx ecx, cl
cmp ecx, 0xc0
jb 0x487e99
movzx eax, byte [edx + 1]
test cl, 0x20
jne 0x487dfc
and ecx, 0x1f
jmp 0x487e91
and eax, 0x3f
test cl, 0x10
jne 0x487e15
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x487e91
test cl, 8
jne 0x487e37
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x487e91
movzx esi, byte [edx + 2]
movzx edi, byte [edx + 3]
and esi, 0x3f
movzx ebx, byte [edx + 4]
and edi, 0x3f
and ebx, 0x3f
test cl, 4
jne 0x487e70
and ecx, 3
shl ecx, 6
or ecx, eax
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 4]
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp + 8]
jmp 0x487e99
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
or ecx, esi
shl ecx, 6
or ecx, edi
mov edi, dword [ebp - 4]
shl ecx, 6
or ecx, ebx
mov ebx, dword [ebp + 8]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, ecx
test eax, eax
jns 0x487ea2
add eax, 0x7f
sar eax, 7
movzx eax, word [eax*2 + 0x4e6b90]
shl eax, 7
and ecx, 0x8000007f
jns 0x487ebd
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
mov ecx, dword [ebp + 0xc]
movzx eax, word [eax*2 + 0x4eaf90]
lea eax, [eax + eax*2]
movzx esi, byte [eax*4 + 0x4e2982]
mov eax, 1
shl eax, cl
test dword [esi*4 + 0x4dd87c], eax
je 0x487ef6
mov dword [ebp + 0xc], esi
mov esi, dword [ebp - 8]
mov dword [edi + 0x38], edx
cmp edx, ebx
ja 0x487db2
mov ecx, dword [ebp - 4]
mov eax, dword [ecx + 0x38]
cmp eax, dword [ecx + 4]
jbe 0x479f5e
mov esi, dword [ecx]
mov byte [ecx + 0x30], 0xdc
jmp 0x488611
inc dword [edi + 0x80]
mov eax, dword [edi + 0x80]
cmp eax, dword [edi + 0x84]
ja 0x48831c
mov ebx, dword [ebp - 4]
mov edx, dword [ebx]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
movzx eax, byte [eax + 0x4dd7b0]
add eax, edx
add ecx, eax
mov dword [ebx], ecx
jmp 0x479f61
cmp dword [ebp - 8], 0
jne 0x485cd8
mov esi, dword [eax]
mov byte [eax + 0x30], 0x1d
jmp 0x488611
test ecx, ecx
jne 0x485e8f
mov esi, dword [eax]
mov byte [eax + 0x30], 0x1f
jmp 0x488611
cmp dword [ebp - 8], 0
jne 0x488138
mov ebx, dword [ebp - 4]
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x17
jmp 0x488611
test ecx, ecx
js 0x487f9a
cmp ecx, 0xd
ja case.0x48547a.15
jmp dword [ecx*4 + 0x489838]
cmp dword [eax + 0x28], 0x16
je 0x488298
test esi, esi
jne 0x488311
mov esi, dword [eax]
mov byte [eax + 0x30], 0x21
jmp 0x488611
mov eax, dword [ebp + 8]
mov dword [eax], edi
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0x16
jmp 0x488611
xor ecx, ecx
jmp 0x48840a
cmp cl, 0x7e
je 0x487fdf
cmp cl, 0x80
je 0x487fdf
xor eax, eax
jmp 0x487fe4
mov eax, 1
mov dword [ebx + 0x20], eax
mov dword [ebx + 4], edi
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
movzx eax, byte [eax]
or eax, 0x30000
mov dword [ebp - 0x18], eax
movzx eax, byte [ecx]
movzx esi, byte [eax + 0x4dd7b0]
add esi, ecx
mov byte [ebx + 0x30], 5
jmp 0x488611
mov eax, dword [ebp - 4]
cmp cl, 0x7b
jne 0x488023
lea esi, [edx + 3]
mov byte [ebx + 0x30], 6
jmp 0x488614
mov byte [ebx + 0x30], 7
jmp 0x488614
movzx esi, al
add esi, edx
mov byte [ebx + 0x30], 1
jmp 0x488611
mov eax, dword [ebx + 8]
mov dword [ebx], eax
jmp 0x4883c9
mov eax, dword [ebp - 0x48]
add dword [ebx + 0x38], eax
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x14
jmp 0x488611
mov ebx, dword [ebp - 4]
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x14
jmp 0x488611
mov dword [ebx + 0x38], esi
mov ebx, dword [ebx + 0x24]
dec ebx
mov dword [eax + 0x24], ebx
mov edi, dword [eax + 0x20]
cmp edi, ebx
jae 0x488098
lea ecx, [ebp - 0x4c]
push ecx
push dword [ebp + 0x1c]
push eax
push dword [eax + 0x28]
push dword [eax + 0x14]
call fcn.00489870
mov eax, dword [ebp - 4]
inc edi
add esi, dword [ebp - 0x4c]
add esp, 0x14
mov dword [eax + 0x38], esi
cmp edi, ebx
jb 0x488074
mov esi, dword [eax]
mov byte [eax + 0x30], 0x16
jmp 0x488611
mov ebx, dword [ebp - 4]
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x1b
jmp 0x488611
cmp esi, dword [edi + 0x54]
jae case.0x48547a.13
cmp byte [esi], 0xa
jne case.0x48547a.13
lea eax, [esi + 1]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0x21
jmp 0x488611
movzx eax, word [edi + 0x3c]
mov edx, eax
test ax, ax
je case.0x48547a.13
cmp esi, dword [edi + 0x54]
jb case.0x48547a.13
cmp dword [edi + 0x88], 0
jne case.0x48547a.13
cmp dword [edi + 0x8c], 2
jne case.0x48547a.13
movzx eax, byte [edi + 0x90]
cmp ecx, eax
jne case.0x48547a.13
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0x21
jmp 0x488611
mov ebx, dword [ebp - 4]
mov esi, dword [ebx]
mov byte [ebx + 0x30], 0x64
jmp 0x488611
mov esi, dword [edi]
mov byte [edi + 0x30], 0xc8
jmp 0x488611
mov ecx, dword [ebp - 4]
lea eax, [ebx + edi]
mov dword [ecx + 0x38], eax
mov eax, ecx
mov esi, dword [eax]
mov byte [eax + 0x30], 0xca
jmp 0x488614
movzx edx, byte [ecx]
inc ecx
cmp dword [ebp - 8], 0
mov esi, ecx
mov dword [ebx + 0x38], ecx
je 0x488252
cmp edx, 0xc0
jb 0x488252
lea esi, [ecx + 1]
test dl, 0x20
jne 0x48818b
movzx eax, byte [ecx]
and edx, 0x1f
jmp 0x488247
mov edi, esi
lea esi, [ecx + 2]
test dl, 0x10
jne 0x4881ab
movzx ecx, byte [ecx]
and edx, 0xf
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
or edx, ecx
jmp 0x488244
mov ebx, esi
lea esi, [ecx + 3]
test dl, 8
jne 0x4881d6
movzx ecx, byte [ecx]
and edx, 7
movzx eax, byte [edi]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [ebx]
jmp 0x488241
movzx edi, byte [edi]
lea eax, [ecx + 4]
movzx ebx, byte [ebx]
and edi, 0x3f
movzx esi, byte [esi]
and ebx, 0x3f
mov dword [ebp + 8], eax
and esi, 0x3f
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 4
jne 0x488223
and edx, 3
shl edx, 6
or edx, eax
mov eax, dword [ebp + 8]
shl edx, 6
or edx, edi
mov edi, dword [ebp + 0x1c]
shl edx, 6
or edx, ebx
mov ebx, dword [ebp - 4]
shl edx, 6
or edx, esi
mov esi, eax
mov dword [ebx + 0x38], eax
jmp 0x488252
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
or edx, edi
shl edx, 6
or edx, ebx
shl edx, 6
or edx, esi
lea esi, [ecx + 5]
mov ebx, dword [ebp - 4]
mov edi, dword [ebp + 0x1c]
and eax, 0x3f
shl edx, 6
mov dword [ebx + 0x38], esi
or edx, eax
push 0
push dword [ebp - 8]
push dword [edi + 0x54]
push dword [edi + 0x4c]
push esi
push edx
call fcn.004799c0
add esp, 0x18
mov dword [ebx + 0x38], eax
cmp eax, dword [edi + 0x54]
jb 0x488295
movzx ecx, word [edi + 0x3c]
mov edx, ecx
test cx, cx
je 0x488295
cmp eax, dword [edi + 0x5c]
ja 0x488285
cmp dword [edi + 0x24], 0
je 0x488295
mov dword [edi + 0x1c], 1
cmp edx, 1
ja 0x47b9cf
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xda
jmp 0x488611
cmp ecx, dword [edi + 0x54]
jae case.0x487292.13
cmp byte [ecx], 0xa
jne case.0x487292.13
lea eax, [ecx + 1]
mov dword [ebx + 0x38], eax
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xdb
jmp 0x488611
movzx eax, word [edi + 0x3c]
mov esi, eax
test ax, ax
je case.0x487292.13
cmp ecx, dword [edi + 0x54]
jb case.0x487292.13
cmp dword [edi + 0x88], 0
jne case.0x487292.13
cmp dword [edi + 0x8c], 2
jne case.0x487292.13
movzx eax, byte [edi + 0x90]
cmp edx, eax
jne case.0x487292.13
mov dword [edi + 0x1c], 1
cmp esi, 1
ja 0x47b9cf
mov eax, dword [ebp - 4]
mov esi, dword [eax]
mov byte [eax + 0x30], 0xdb
jmp 0x488611
mov edx, dword [ebp - 4]
mov ecx, dword [edx]
movzx eax, byte [ecx]
movzx esi, byte [ecx + 1]
movzx eax, byte [eax + 0x4dd7b0]
mov byte [edx + 0x30], 0x11
jmp 0x48860d
mov eax, dword [ebp - 4]
inc esi
mov dword [eax + 4], esi
mov byte [eax + 0x30], 9
jmp 0x488611
mov edx, dword [ebp - 4]
inc esi
mov dword [edx + 4], esi
nop
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or eax, ecx
add eax, esi
mov esi, eax
mov dword [edx + 4], eax
cmp byte [esi], 0x78
je 0x488350
lea esi, [eax + 3]
mov byte [edx + 0x30], 0xa
jmp 0x488611
mov ebx, dword [ebp - 4]
inc esi
mov dword [ebx + 0x28], 1
mov dword [ebx], esi
mov al, byte [esi]
cmp al, 0x89
je 0x4883a9
cmp al, 0x8e
jne 0x488398
jmp 0x4883a9
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x28], 0
mov ecx, 0x20000
jmp 0x4883bc
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x28], 0
movzx ecx, byte [esi + 3]
movzx eax, byte [esi + 4]
or ecx, 0x100
shl ecx, 8
or ecx, eax
mov dword [ebx + 0x20], ecx
mov dword [ebx + 0x24], 0
mov dword [ebx + 8], esi
mov eax, dword [ebx + 0x38]
mov dword [ebx + 4], eax
mov ecx, dword [ebx]
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x18], eax
movzx eax, byte [ecx]
movzx esi, byte [eax + 0x4dd7b0]
add esi, ecx
mov byte [ebx + 0x30], 8
jmp 0x488611
movzx ecx, byte [esi + 3]
movzx eax, byte [esi + 4]
or ecx, 0x100
shl ecx, 8
or ecx, eax
jmp 0x488407
or ecx, 0x20000
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x20], ecx
mov eax, dword [ebx + 0x20]
mov ecx, esi
mov dword [ebp - 0x18], eax
movzx eax, byte [ecx]
movzx esi, byte [eax + 0x4dd7b0]
add esi, ecx
mov byte [ebx + 0x30], 2
jmp 0x488611
movzx ebx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ebx, 8
or ebx, eax
add ebx, dword [edi + 0x48]
cmp ebx, dword [edi + 0x48]
jne 0x488443
xor edi, edi
jmp 0x488450
movzx edi, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl edi, 8
or edi, eax
mov ecx, dword [ebp - 4]
cmp dword [ecx + 0x44], 0xffffffff
je 0x48849f
mov eax, dword [ecx + 0x4c]
cmp eax, 0xffffffff
je 0x48849f
mov ecx, dword [ebp + 0x18]
mov edx, edi
or edx, 0x40000
mov esi, dword [ecx + 0x18]
add eax, esi
mov ecx, eax
sub ecx, dword [ebp + 0x14]
cmp dword [eax + 0x1c], edx
je 0x48848d
mov eax, dword [ecx + 0x4c]
cmp eax, 0xffffffff
jne 0x488477
jmp 0x48849c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
cmp eax, dword [ecx + 0x38]
je 0x488789
mov ecx, dword [ebp - 4]
mov dword [ecx + 4], ebx
or edi, 0x40000
mov ebx, dword [ebp - 4]
mov dword [ebx + 0x20], edi
mov ecx, dword [ebx + 4]
mov eax, dword [ebx + 0x20]
mov dword [ebp - 0x18], eax
movzx eax, byte [ecx]
movzx esi, byte [eax + 0x4dd7b0]
add esi, ecx
mov byte [ebx + 0x30], 0xb
jmp 0x488611
mov ebx, dword [ebp - 4]
or ecx, 0x20000
mov dword [ebx + 0x20], ecx
mov eax, dword [ebx + 0x20]
mov ecx, esi
mov dword [ebp - 0x18], eax
movzx eax, byte [ecx]
movzx esi, byte [eax + 0x4dd7b0]
add esi, ecx
mov byte [ebx + 0x30], 3
jmp 0x488611
mov ebx, dword [ebp - 4]
or ecx, 0x20000
mov dword [ebx + 0x20], ecx
mov eax, dword [ebx + 0x20]
mov ecx, esi
mov dword [ebp - 0x18], eax
movzx eax, byte [ecx]
movzx esi, byte [eax + 0x4dd7b0]
add esi, ecx
mov byte [ebx + 0x30], 4
jmp 0x488611
mov edx, dword [ebp - 4]
lea eax, [esi + 2]
mov dword [edi + 0x68], eax
mov dword [edx + 0x40], eax
mov ecx, dword [edx]
movzx eax, byte [ecx]
movzx esi, byte [ecx + 1]
movzx eax, byte [eax + 0x4dd7b0]
mov byte [edx + 0x30], 0xc
jmp 0x48860d
movzx eax, byte [esi]
movzx eax, byte [eax + 0x4dd7b0]
add esi, eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x30], 0xd
jmp 0x488611
mov edx, dword [ebp - 4]
lea eax, [esi + 2]
mov dword [edi + 0x68], eax
mov dword [edx + 0x40], eax
mov ecx, dword [edx]
movzx eax, byte [ecx]
movzx esi, byte [ecx + 1]
movzx eax, byte [eax + 0x4dd7b0]
mov byte [edx + 0x30], 0x24
jmp 0x48860d
movzx eax, byte [esi]
movzx eax, byte [eax + 0x4dd7b0]
add esi, eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x30], 0xe
jmp 0x488611
mov edx, dword [ebp - 4]
lea eax, [esi + 2]
mov dword [edi + 0x68], eax
mov dword [edx + 0x40], eax
mov ecx, dword [edx]
movzx eax, byte [ecx]
movzx esi, byte [ecx + 1]
movzx eax, byte [eax + 0x4dd7b0]
mov byte [edx + 0x30], 0xf
jmp 0x48860d
movzx eax, byte [esi]
movzx eax, byte [eax + 0x4dd7b0]
add esi, eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x30], 0x10
jmp 0x488611
movzx eax, byte [esi]
movzx eax, byte [eax + 0x4dd7b0]
add esi, eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x30], 0x12
jmp 0x488611
mov edx, dword [ebp - 4]
lea eax, [esi + 2]
mov dword [edi + 0x68], eax
mov dword [edx + 0x40], eax
mov ecx, dword [edx]
movzx eax, byte [ecx]
movzx esi, byte [ecx + 1]
movzx eax, byte [eax + 0x4dd7b0]
mov byte [edx + 0x30], 0x13
add eax, ecx
add esi, eax
mov eax, dword [ebp - 4]
mov ebx, dword [ebp + 0x14]
add ebx, eax
mov dword [ebp - 0x14], ebx
cmp ebx, dword [ebp - 0x34]
jb 0x4886bb
mov eax, dword [ebp + 0x18]
mov ebx, dword [eax + 0x1c]
mov eax, dword [ebp + 0x1c]
lea edi, [ebx + ebx]
mov ecx, dword [eax + 0xc]
cmp edi, ecx
jbe 0x48864b
xor edx, edx
mov eax, ecx
div dword [ebp + 0x14]
mov edi, ecx
sub edi, edx
cmp ebx, edi
jae 0x488795
mov eax, dword [ebp + 0x18]
push dword [eax + 8]
mov eax, dword [eax]
push edi
call eax
mov ebx, eax
add esp, 8
test ebx, ebx
je 0x4887a1
mov eax, dword [ebp + 0x18]
push dword [ebp - 0x30]
push dword [eax + 0x18]
push ebx
call fcn.004a77d0
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 4]
mov ecx, dword [eax + 0x18]
mov eax, ebx
sub eax, ecx
add edx, eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 4], edx
add edx, dword [ebp + 0x14]
mov dword [ebp - 0x14], edx
push dword [eax + 8]
mov eax, dword [eax + 4]
push ecx
call eax
mov eax, dword [ebp + 0x18]
xor edx, edx
add esp, 0x14
mov dword [eax + 0x18], ebx
mov dword [eax + 0x1c], edi
mov eax, edi
div dword [ebp + 0x14]
mov eax, edi
sub eax, edx
mov dword [ebp - 0x30], eax
add eax, ebx
mov ebx, dword [ebp - 0x14]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 4]
push dword [ebp - 0x38]
add eax, 0x38
push eax
lea eax, [ebx + 0x38]
push eax
call fcn.004a77d0
mov eax, dword [ebp - 4]
add esp, 0xc
mov edi, dword [ebp + 0x18]
mov edx, dword [ebp - 0x18]
mov dword [ebp - 4], ebx
mov eax, dword [eax + 0x18]
inc eax
mov dword [ebx + 0x18], eax
mov eax, ebx
mov ebx, dword [ebp + 0x14]
jmp 0x479ef6
mov eax, edi
mov ebx, dword [ebp - 4]
mov dword [eax + 0x58], ecx
mov ecx, dword [ebp + 0x1c]
mov eax, dword [ebx + 0x50]
mov dword [ecx + 0x38], eax
mov eax, dword [ebx + 0x40]
mov dword [ecx + 0x64], eax
mov eax, dword [ebx + 0x38]
cmp eax, dword [ecx + 0x60]
jbe 0x48870d
mov dword [ecx + 0x60], eax
mov edi, dword [ebp + 0x18]
mov eax, dword [ebx + 0x3c]
sub eax, dword [ecx + 0x4c]
mov dword [edi + 0x34], eax
mov eax, dword [ebx + 0x38]
sub eax, dword [ecx + 0x4c]
mov dword [edi + 0x38], eax
movzx esi, word [edi + 0x2e]
movzx eax, word [ebp + 0x10]
inc eax
cmp eax, esi
cmovbe esi, eax
add esi, esi
lea eax, [esi*4 - 8]
push eax
lea eax, [ebx + 0x54]
push eax
lea eax, [edi + 0x3c]
push eax
call fcn.004a77d0
mov eax, dword [ebx + 0x50]
dec esi
add eax, 2
add esp, 0xc
cmp esi, eax
jb 0x488774
lea edx, [edi + 0x34]
lea edx, [edx + esi*4]
nop dword [eax + eax]
mov dword [edx], 0xffffffff
lea edx, [edx - 4]
mov ecx, dword [ebx + 0x50]
dec esi
add ecx, 2
cmp esi, ecx
jae 0x488760
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffcc
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffc1
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffd0
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffd4
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0xffffffd1
pop ebx
mov esp, ebp
pop ebp
ret