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

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x170
call fcn.005dfa60
mov eax, dword [0x6a704c]
xor eax, ebp
mov dword [ebp - 8], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [ebp - 0x140], eax
mov esi, ecx
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 0x14]
push edi
mov edi, edx
mov dword [ebp - 0x138], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x11c], edi
mov dword [ebp - 0x118], eax
mov dword [ebp - 0x148], ecx
test edi, edi
jne 0x468b10
cmp dword [ebp + 0x18], edx
jne 0x468af3
push 1
push edx
push edx
push edx
push edx
lea ecx, [ebp + 0x18]
call fcn.00468a80
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
lea eax, [ebp + 0x18]
sub eax, esi
cdq
xor eax, edx
sub eax, edx
neg eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp - 0x118]
mov edx, dword [eax + 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x154], 0
mov dword [ebp - 0x160], 0
mov dword [ebp - 0x12c], edx
cmp eax, dword [ebx + 4]
jae 0x476c04
mov dword [ebp - 0x168], 0xffffffff
mov dword [ebp - 0x15c], 1
mov dword [ebp - 0x16c], bind
nop dword [eax]
inc eax
mov dword [ebx], eax
mov eax, dword [ebp + 0x18]
cmp eax, dword [ebx + 8]
jae 0x476bee
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x98], 2
jne 0x468ba0
mov dword [ebp - 0xac], ecx
lea ecx, [ebp - 0xac]
mov dword [ebp - 0xa8], esi
mov dword [ebp - 0x148], ecx
mov dword [eax + 0x98], 0
mov ebx, eax
jmp 0x468bbc
je case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x12c]
mov cl, byte [edi]
movzx edi, cl
mov dword [ebp - 0x158], 0
mov dword [ebp - 0x144], 0
mov dword [ebp - 0x124], edi
cmp edi, 0xa1
ja case.0x468bee.98
movzx eax, byte [edi + 0x476d6c]
jmp dword [eax*4 + 0x476c20]
mov eax, dword [ebp - 0x118]
mov ebx, dword [ebp - 0x118]
inc dword [eax + 0x28]
mov eax, dword [eax + 0x28]
cmp eax, dword [ebx + 0x2c]
ja 0x473505
mov edx, dword [ebp - 0x11c]
movzx eax, byte [edx]
movzx edi, byte [edx + 1]
add edi, edx
movzx ecx, byte [eax + 0x624e60]
add edi, ecx
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
mov dword [ebp - 0x128], edi
mov dword [ebp - 0x14c], esi
mov ebx, dword [eax + 0xac]
nop
mov eax, dword [ebp + 0x18]
lea edx, [edi + 3]
inc eax
mov ecx, esi
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 1
je 0x468d63
cmp edi, 0xfffffc20
jne 0x468cc1
mov eax, dword [ebp - 0x11c]
movzx edx, byte [eax + 1]
movzx ecx, byte [eax + 2]
shl edx, 8
or edx, ecx
mov ecx, dword [ebp - 0x118]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae case.default.0x4694ab
mov ecx, dword [ebp - 0x11c]
cmp byte [ecx], 0x77
je 0x468cc9
cmp byte [eax], 0x77
jmp 0x468cc3
test edi, edi
jne case.default.0x4694ab
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x118]
add edi, ecx
mov dword [ebp - 0x11c], edi
mov dword [eax + 0xac], ebx
cmp byte [edi], 0x77
je 0x468c50
mov edx, dword [ebp - 0x140]
mov al, byte [edi]
cmp al, 0x82
je 0x468d10
cmp al, 0x77
jne case.default.0x46af0a
nop dword [eax]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x468d10
cmp byte [edi], 0x78
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x11c], edi
mov ecx, dword [eax + 0x8c]
mov esi, dword [eax + 0x80]
mov dword [ebp - 0x138], ecx
je 0x468d53
cmp esi, dword [ebp - 0x14c]
jne 0x473017
add edi, 3
mov ebx, eax
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
mov edx, dword [eax + 0x7c]
mov dword [ebp - 0x140], edx
jmp 0x468cff
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x13c], 0
jmp 0x469a12
mov ecx, dword [ebp - 0x11c]
mov dword [ebp - 0x13c], 0
jmp 0x469a37
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
add edx, 3
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x11c], edx
mov dword [ebp - 0x144], ecx
cmp byte [edx], 0x76
mov dword [ebp - 0x13c], edx
jne 0x468ed6
mov edi, dword [0x6ac7fc]
test edi, edi
je 0x468ebe
mov dword [ebp - 0xe0], 2
movzx eax, byte [edx + 1]
mov dword [ebp - 0xdc], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebx + 0x78]
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0x140]
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0xcc], eax
mov eax, esi
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0xc8], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xb8], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x138]
cdq
sub eax, edx
mov dword [ebp - 0xb4], ecx
sar eax, 1
mov dword [ebp - 0xc4], eax
mov eax, dword [ebx + 0x90]
and eax, 0xffff
cmove eax, dword [ebp - 0x168]
mov dword [ebp - 0xc0], eax
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0xbc], eax
mov eax, dword [ebx + 0xb0]
mov dword [ebp - 0xb0], eax
lea eax, [ebp - 0xe0]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.default.0x46af0a
js case.default.0x4694ab
mov ecx, dword [ebp - 0x144]
mov edx, dword [ebp - 0x11c]
add edx, 6
add ecx, 0xfffffffa
mov dword [ebp - 0x11c], edx
mov dword [ebp - 0x144], ecx
mov dword [ebp - 0x13c], edx
movzx eax, byte [edx]
xor ebx, ebx
mov dword [ebp - 0x128], eax
add eax, 0xffffff73
cmp eax, 0x10
ja case.0x468ef6.146
movzx eax, byte [eax + 0x476e28]
jmp dword [eax*4 + 0x476e10]
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0xa4]
test edx, edx
je case.0x468ef6.145
mov eax, dword [ebp - 0x11c]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x468f35
cmp ecx, dword [edx + 4]
jne 0x469195
mov ecx, dword [ebp - 0x128]
mov ebx, 1
movzx ecx, byte [ecx + 0x624e60]
jmp case.0x468ef6.145
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0xa4], ebx
je case.0x468ef6.145
movzx edi, byte [edx + 3]
movzx eax, byte [edx + 4]
movzx ecx, byte [edx + 1]
movzx edx, byte [edx + 2]
shl edi, 8
or edi, eax
shl ecx, 8
mov eax, dword [ebp - 0x118]
or edx, ecx
imul edx, dword [eax + 0x24]
mov eax, dword [eax + 0x30]
add edx, eax
test edi, edi
je 0x469195
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x150], edx
mov eax, dword [eax + 0xa4]
mov eax, dword [eax + 4]
mov dword [ebp - 0x14c], eax
nop word [eax + eax]
movzx eax, byte [edx]
xor ebx, ebx
movzx ecx, byte [edx + 1]
dec edi
shl eax, 8
or ecx, eax
cmp ecx, dword [ebp - 0x14c]
sete bl
je 0x469015
mov eax, dword [ebp - 0x118]
mov edx, dword [ebp - 0x150]
mov eax, dword [eax + 0x24]
add edx, eax
mov dword [ebp - 0x150], edx
test edi, edi
jg 0x468fb0
jmp 0x469015
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x138]
jge 0x469013
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x469013
mov ebx, 1
jmp 0x469015
xor ebx, ebx
test ebx, ebx
je 0x469195
mov ecx, dword [ebp - 0x128]
movzx ecx, byte [ecx + 0x624e60]
jmp case.0x468ef6.145
mov edi, dword [ebp - 0x11c]
movzx edx, byte [edx + 3]
shl edx, 8
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 1]
or edx, eax
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x118]
imul ecx, dword [eax + 0x24]
mov eax, dword [eax + 0x30]
add eax, ecx
test edx, edx
je 0x469195
mov edi, eax
movzx ecx, byte [eax]
dec edx
movzx eax, byte [eax + 1]
shl ecx, 8
or ecx, eax
add ecx, ecx
cmp ecx, dword [ebp - 0x138]
jge 0x469092
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0xc]
cmp dword [eax + ecx*4], 0
jge 0x468f35
mov eax, dword [ebp - 0x118]
xor ebx, ebx
mov eax, dword [eax + 0x24]
add eax, edi
mov edi, eax
test edx, edx
jg 0x469068
jmp 0x469195
mov ecx, dword [ebp - 0x118]
mov dword [ecx + 0x98], 1
mov eax, dword [ebp + 0x18]
inc eax
push eax
push 0
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 1
jne 0x469185
mov eax, dword [ebp - 0x118]
mov ebx, edi
mov ecx, dword [ebp - 0x138]
mov dword [ebp - 0x14c], ebx
mov eax, dword [eax + 0x8c]
cmp eax, ecx
cmovg ecx, eax
mov eax, dword [ebp - 0x11c]
mov dword [ebp - 0x138], ecx
cmp byte [eax], 0x92
jne 0x469120
mov eax, dword [ebp - 0x13c]
inc eax
mov dword [ebp - 0x13c], eax
movzx edi, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edi, 8
or edi, eax
add edi, dword [ebp - 0x13c]
mov edx, edi
cmp byte [edx], 0x77
jne 0x469164
nop word [eax + eax]
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
add ebx, edx
mov edx, ebx
mov dword [ebp - 0x11c], ebx
cmp byte [edx], 0x77
je 0x469140
mov ebx, dword [ebp - 0x14c]
mov edi, edx
mov ecx, dword [ebp - 0x128]
movzx eax, byte [ecx + 0x624e60]
movzx ecx, byte [ecx + 0x624e60]
sub edi, eax
add edi, 3
mov dword [ebp - 0x11c], edi
jmp case.0x468ef6.145
test edi, edi
je 0x469195
cmp edi, 0xfffffc20
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x144]
mov edi, dword [ebp - 0x11c]
add edi, ecx
mov dword [ebp - 0x11c], edi
test ebx, ebx
jne 0x4691b7
cmp byte [edi - 3], 0x77
jne 0x469dec
cmp dword [ebp - 0x124], 0x8c
jne 0x46d414
mov ecx, dword [ebp - 0x118]
mov edx, edi
mov dword [ecx + 0x98], 2
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x118]
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
mov eax, dword [ecx + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [ecx + 0x90], eax
lea ebx, [edx + edx]
cmp ebx, dword [ecx + 0x14]
jl 0x46925b
mov ebx, ecx
or eax, 0x10000
add edi, 3
mov dword [ebp - 0x11c], edi
mov dword [ebx + 0x90], eax
jmp 0x468bb6
mov eax, ecx
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [ebp - 0x138]
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [ebp - 0x118]
sub ecx, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov dword [eax + ebx*4 + 4], ecx
cmp ebx, edx
jl 0x46b676
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ebx*4]
cmp edi, ecx
jae 0x4692ad
mov eax, dword [ebp - 0x168]
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x11c]
lea eax, [ebx + 2]
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x138], eax
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x98], 1
mov ebx, dword [eax + 0xac]
jne 0x4692fb
mov dword [eax + 0x98], 0
mov dword [ebp - 0x150], 1
jmp 0x469305
mov dword [ebp - 0x150], 0
mov edi, dword [ebp - 0x11c]
nop dword [eax + eax]
mov eax, dword [ebp + 0x18]
lea edx, [edi + 3]
inc eax
mov ecx, esi
push eax
push 0
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 1
je 0x4693b5
cmp edi, 0xfffffc19
je 0x4693b5
mov eax, dword [ebp - 0x118]
mov dword [eax + 0xac], ebx
cmp edi, 0xfffffc20
jne 0x469387
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [ebp - 0x118]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae case.default.0x4694ab
cmp byte [edx], 0x77
je 0x46938f
cmp byte [eax], 0x77
jmp 0x469389
test edi, edi
jne case.default.0x4694ab
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [ebp - 0x11c], edi
cmp byte [edi], 0x77
je 0x469310
jmp 0x4693ca
mov eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
mov eax, dword [eax + 0x7c]
mov dword [ebp - 0x140], eax
cmp byte [edi], 0x78
je case.default.0x46af0a
cmp dword [ebp - 0x150], 0
jne 0x473776
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x4693e0
mov eax, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
mov eax, dword [eax + 0x8c]
mov dword [ebp - 0x138], eax
nop
mov ebx, dword [ebp - 0x118]
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x98], 1
mov ebx, dword [eax + 0xac]
jne 0x469446
mov dword [eax + 0x98], 0
mov dword [ebp - 0x150], 1
jmp 0x469450
mov dword [ebp - 0x150], 0
mov edi, dword [ebp - 0x11c]
mov eax, dword [ebp + 0x18]
lea edx, [edi + 3]
inc eax
mov ecx, esi
push eax
push 0
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
mov eax, dword [ebp - 0x118]
mov dword [eax + 0xac], ebx
cmp edi, 0xfffffc1c
jle 0x469504
test edi, edi
jg 0x47356b
je 0x4694de
lea eax, [edi + 0x3e3]
cmp eax, 3
ja case.default.0x4694ab
jmp dword [eax*4 + 0x476e3c]
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [ebp - 0x118]
add eax, edi
cmp dword [ecx + 0x7c], eax
jae 0x469510
cmp byte [edi], 0x77
je 0x4694e4
cmp byte [eax], 0x77
jne 0x469510
jmp 0x4694e4
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [ebp - 0x11c], edi
cmp byte [edi], 0x77
je 0x469456
jmp 0x469524
jne 0x473589
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x469510
cmp dword [ebp - 0x150], 0
jne 0x473776
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
test edx, edx
je 0x469596
or ecx, eax
mov eax, dword [ebp - 0x118]
jbe 0x4695a9
mov edx, dword [eax + 0x74]
dec esi
dec ecx
cmp esi, edx
jb case.default.0x46af0a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x46958a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x469580
test ecx, ecx
jg 0x469567
mov eax, dword [ebp - 0x118]
jmp 0x4695a9
or ecx, eax
mov eax, dword [ebp - 0x118]
sub esi, ecx
cmp esi, dword [eax + 0x74]
jb case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
cmp esi, dword [eax + 0x84]
jae 0x46b67c
add edi, 3
mov dword [eax + 0x84], esi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edi, dword [0x6ac7fc]
test edi, edi
je 0x4696b2
mov edx, dword [ebp - 0x11c]
mov dword [ebp - 0x114], 2
movzx eax, byte [edx + 1]
mov dword [ebp - 0x110], eax
mov eax, dword [ebx + 0xc]
mov dword [ebp - 0x10c], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0x108], eax
mov eax, dword [ebx + 0x78]
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0x104], eax
mov eax, dword [ebp - 0x140]
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0x100], eax
mov eax, esi
sub eax, dword [ebx + 0x74]
mov dword [ebp - 0xfc], eax
movzx ecx, byte [edx + 2]
movzx eax, byte [edx + 3]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0xec], ecx
movzx ecx, byte [edx + 4]
movzx eax, byte [edx + 5]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x138]
cdq
sub eax, edx
mov dword [ebp - 0xe8], ecx
sar eax, 1
mov dword [ebp - 0xf8], eax
mov eax, dword [ebx + 0x90]
and eax, 0xffff
cmove eax, dword [ebp - 0x168]
mov dword [ebp - 0xf4], eax
mov eax, dword [ebx + 0xa8]
mov dword [ebp - 0xf0], eax
mov eax, dword [ebx + 0xb0]
mov dword [ebp - 0xe4], eax
lea eax, [ebp - 0x114]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.default.0x46af0a
js case.default.0x4694ab
mov edi, dword [ebp - 0x11c]
add edi, 6
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x11c]
mov edx, dword [ebx + 0x70]
movzx ebx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ebx, 8
or ebx, eax
add ebx, edx
cmp ebx, edx
jne 0x4696e6
xor ecx, ecx
jmp 0x4696f3
movzx ecx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
shl ecx, 8
or ecx, eax
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0xa4]
mov eax, edx
test edx, edx
je 0x469719
cmp ecx, dword [eax + 4]
jne 0x469713
cmp esi, dword [eax + 0x14]
je 0x4735a8
mov eax, dword [eax]
test eax, eax
jne 0x469705
add dword [ebp - 0x11c], 3
mov dword [ebp - 0xa0], ecx
lea ecx, [ebp - 0xa4]
mov eax, dword [edi + 0x90]
mov dword [ebp - 0x94], eax
mov eax, edi
mov dword [ebp - 0x90], esi
mov dword [ebp - 0xa4], edx
mov dword [eax + 0xa4], ecx
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x98], ecx
cmp ecx, 0x1e
jg 0x469768
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x9c], eax
jmp 0x46978c
lea eax, [ecx*4]
push eax
call fcn.0045eaf0
add esp, 4
mov dword [ebp - 0x9c], eax
test eax, eax
je 0x47362a
mov ecx, dword [ebp - 0x98]
shl ecx, 2
push ecx
mov ecx, edi
push dword [ecx + 0xc]
push eax
call fcn.005e1be0
add esp, 0xc
mov edx, edi
cmp byte [ebx], 0x88
sbb eax, eax
inc eax
mov dword [ebp - 0x14c], eax
nop dword [eax]
test eax, eax
je 0x4697c6
mov eax, dword [ebp - 0x118]
mov edx, eax
mov dword [eax + 0x98], 2
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ebx]
push edx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ebx
call fcn.00468a80
mov edi, eax
add esp, 0x14
mov eax, dword [ebp - 0x98]
shl eax, 2
push eax
mov eax, dword [ebp - 0x118]
push dword [ebp - 0x9c]
push dword [eax + 0xc]
call fcn.005e1be0
mov edx, dword [ebp - 0x118]
add esp, 0xc
mov eax, dword [ebp - 0x94]
mov dword [edx + 0x90], eax
mov eax, dword [ebp - 0xa4]
mov dword [edx + 0xa4], eax
cmp edi, 1
je 0x46988d
cmp edi, 0xfffffc19
je 0x46988d
cmp edi, 0xfffffc1c
jl 0x469856
cmp edi, 0xfffffc20
jle 0x4735ca
test edi, edi
jne 0x4735fa
lea eax, [ebp - 0xa4]
mov dword [edx + 0xa4], eax
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
jne 0x4735be
mov eax, dword [ebp - 0x14c]
jmp 0x4697b0
mov eax, dword [ebp - 0x9c]
lea ecx, [ebp - 0x8c]
cmp eax, ecx
je 0x4698a6
push eax
call fcn.0045eb00
add esp, 4
mov eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
mov esi, dword [eax + 0x80]
mov eax, dword [eax + 0x7c]
mov dword [ebp - 0x140], eax
mov ebx, dword [ebp - 0x118]
jmp 0x468bb6
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x4698d2
mov dword [ebp - 0x11c], edi
jmp 0x468bbc
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov ebx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push dword [ebp - 0x118]
mov edx, ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax + eax]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, ecx
cmp byte [ebx], 0x77
je 0x469930
lea edi, [ebx + 3]
mov dword [ebp - 0x11c], edi
mov ebx, dword [ebp - 0x118]
jmp 0x468bb6
mov eax, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x11c], eax
mov edx, eax
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x469970
mov eax, dword [ebp + 0x18]
add edx, 3
inc eax
mov ecx, esi
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
jmp 0x468bb0
mov edx, dword [ebp - 0x11c]
inc edx
nop
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x4699c0
lea edi, [edx + 3]
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov ecx, dword [ebp - 0x11c]
inc ecx
mov dword [ebp - 0x13c], 1
mov dword [ebp - 0x11c], ecx
movzx edi, byte [ecx]
mov dword [ebp - 0x124], edi
cmp edi, 0x86
je 0x469a12
cmp edi, 0x8b
jne 0x469a37
movzx edi, byte [ecx + 3]
movzx eax, byte [ecx + 4]
shl edi, 8
or edi, eax
mov dword [ebp - 0x128], edi
lea eax, [edi + edi]
cmp eax, dword [ebx + 0x14]
jl 0x469bd1
mov edi, dword [ebp - 0x124]
xor eax, eax
mov ebx, ecx
mov dword [ebp - 0x150], eax
mov eax, dword [ebp - 0x118]
sub ebx, dword [eax + 0x70]
mov eax, dword [eax + 0x90]
mov dword [ebp - 0x14c], eax
mov edx, dword [ebp - 0x118]
nop dword [eax]
cmp edi, 0x88
jb 0x469a7a
mov eax, dword [ebp - 0x118]
mov edx, eax
mov dword [eax + 0x98], 2
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push edx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc1a
jne 0x469b03
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x150], 1
mov ecx, dword [eax + 0x8c]
mov edi, dword [eax + 0x70]
mov dword [ebp - 0x138], ecx
add edi, ebx
mov ecx, dword [eax + 0x7c]
mov eax, dword [eax + 0x80]
mov dword [ebp - 0x11c], edi
mov dword [ebp - 0x140], ecx
cmp esi, eax
je 0x469b90
mov edi, dword [ebp - 0x124]
mov esi, eax
mov ecx, dword [ebp - 0x11c]
jmp 0x469a56
cmp edi, 0xfffffc20
jne 0x469b45
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, dword [ebp - 0x118]
cmp dword [edx + 0x7c], eax
jae case.default.0x4694ab
mov ecx, dword [ebp - 0x11c]
cmp byte [ecx], 0x77
je 0x469b53
cmp byte [eax], 0x77
jne case.default.0x4694ab
jmp 0x469b53
test edi, edi
jne case.default.0x4694ab
mov edx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [ebp - 0x11c], edi
cmp byte [edi], 0x77
jne 0x469bb8
mov eax, dword [ebp - 0x14c]
mov edi, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x11c]
mov dword [edx + 0x90], eax
jmp 0x469a60
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x469b90
add edi, 3
mov dword [ebp - 0x11c], edi
mov ebx, dword [ebp - 0x118]
jmp 0x468bb6
cmp dword [ebp - 0x150], 0
jne 0x469de3
cmp dword [ebp - 0x13c], 0
jmp 0x469ddd
sub ecx, dword [ebx + 0x70]
shl eax, 2
mov dword [ebp - 0x14c], ecx
mov ecx, dword [ebx + 0xc]
mov dword [ebp - 0x164], eax
mov dword [ebp - 0x150], 0
mov edx, dword [ecx + eax]
mov eax, dword [ecx + eax + 4]
mov dword [ebp - 0x158], eax
mov eax, dword [ebx + 0x10]
sub eax, edi
mov dword [ebp - 0x144], edx
mov eax, dword [ecx + eax*4]
mov dword [ebp - 0x130], eax
mov eax, dword [ebp - 0x118]
mov ebx, dword [eax + 0x90]
nop dword [eax]
mov ecx, dword [eax + 0x10]
mov edx, esi
sub edx, dword [eax + 0x74]
sub ecx, edi
cmp dword [ebp - 0x124], 0x88
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edx
jb 0x469c4c
mov eax, dword [ebp - 0x118]
mov dword [eax + 0x98], 2
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc1a
jne 0x469ceb
mov eax, dword [ebp - 0x118]
mov edx, 1
mov dword [ebp - 0x150], edx
mov ecx, dword [eax + 0x8c]
mov edi, dword [eax + 0x70]
add edi, dword [ebp - 0x14c]
mov ebx, dword [eax + 0x90]
mov dword [ebp - 0x138], ecx
mov ecx, dword [eax + 0x7c]
mov eax, dword [eax + 0x80]
mov dword [ebp - 0x11c], edi
mov dword [ebp - 0x140], ecx
cmp esi, eax
je 0x469d70
mov edi, dword [ebp - 0x128]
mov esi, eax
mov eax, dword [ebp - 0x118]
jmp 0x469c20
cmp edi, 0xfffffc20
jne 0x469d21
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [ebp - 0x118]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae case.default.0x4694ab
cmp byte [edx], 0x77
je 0x469d29
cmp byte [eax], 0x77
jmp 0x469d23
test edi, edi
jne case.default.0x4694ab
mov edi, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x118]
mov dword [eax + 0x90], ebx
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
mov dword [ebp - 0x11c], edi
cmp byte [edi], 0x77
jne 0x469d86
mov edi, dword [ebp - 0x128]
mov eax, dword [ebp - 0x118]
jmp 0x469c20
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, ecx
cmp byte [edi], 0x77
je 0x469d70
jmp 0x469dd2
mov edx, dword [ebp - 0x150]
test edx, edx
jne 0x469dd2
mov ebx, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x164]
mov edi, dword [ebp - 0x144]
mov eax, dword [ebx + 0xc]
mov dword [ecx + eax], edi
mov eax, dword [ebx + 0xc]
mov edi, dword [ebp - 0x158]
mov dword [eax + ecx + 4], edi
mov eax, ebx
mov edi, dword [ebp - 0x130]
mov ecx, dword [eax + 0x10]
sub ecx, dword [ebp - 0x128]
mov eax, dword [eax + 0xc]
mov dword [eax + ecx*4], edi
mov edi, dword [ebp - 0x11c]
cmp dword [ebp - 0x13c], 0
jne 0x469de3
test edx, edx
je case.default.0x46af0a
add edi, 3
mov dword [ebp - 0x11c], edi
mov ebx, dword [ebp - 0x118]
jmp 0x468bb6
mov edi, dword [ebp - 0x11c]
mov ebx, edi
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
sub ebx, ecx
mov dword [ebp - 0x128], ebx
mov cl, byte [ebx]
cmp cl, 0x88
jae 0x469e2c
cmp cl, 0x81
je 0x469e2c
mov dword [ebp - 0x150], 0
jmp 0x469e45
mov edx, dword [ebp - 0x148]
lea eax, [edx + 4]
mov edx, dword [edx]
mov eax, dword [eax]
mov dword [ebp - 0x148], edx
mov dword [ebp - 0x150], eax
cmp cl, 0x7d
jb 0x469e53
cmp cl, 0x80
jbe 0x473755
cmp cl, 0x82
je 0x473755
cmp cl, 0x85
je 0x469e74
cmp cl, 0x8a
je 0x469e74
cmp cl, 0x86
je 0x469e74
cmp cl, 0x8b
jne 0x469f43
movzx edx, byte [ebx + 3]
movzx eax, byte [ebx + 4]
mov ecx, dword [ebp - 0x118]
shl edx, 8
or edx, eax
mov eax, dword [ecx + 0xa4]
lea ebx, [edx + edx]
test eax, eax
je 0x469e9d
cmp dword [eax + 4], edx
je 0x473640
mov eax, ecx
mov eax, dword [eax + 0x90]
and eax, 0xffff0000
or eax, edx
mov dword [ecx + 0x90], eax
cmp ebx, dword [ecx + 0x14]
jl 0x469eca
mov ebx, dword [ebp - 0x128]
or eax, 0x10000
mov dword [ecx + 0x90], eax
jmp 0x469f49
mov ecx, dword [ebp - 0x138]
cmp ebx, ecx
jle 0x469efc
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0xc]
lea edi, [eax + ecx*4]
lea ecx, [eax + ebx*4]
cmp edi, ecx
jae 0x469ef6
mov eax, dword [ebp - 0x168]
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
rep stosd dword es:[edi], eax
mov edi, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [ebp - 0x138]
mov eax, dword [ecx + eax*4]
mov dword [ecx + ebx*4], eax
mov ecx, esi
mov eax, dword [ebp - 0x118]
sub ecx, dword [eax + 0x74]
mov eax, dword [eax + 0xc]
mov dword [eax + ebx*4 + 4], ecx
mov ecx, dword [ebp - 0x118]
cmp edx, ebx
jg 0x469f3b
lea edx, [ebx + 2]
mov dword [ebp - 0x138], edx
mov ebx, dword [ebp - 0x128]
jmp 0x469f4f
mov ecx, dword [ebp - 0x118]
mov edx, dword [ebp - 0x138]
mov al, byte [edi]
cmp al, 0x7b
je 0x47372a
cmp al, 0x78
je 0x469f69
cmp esi, dword [ebp - 0x150]
jne 0x473090
cmp byte [ebx], 0x81
jne 0x46b676
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push edx
push dword [ebp - 0x140]
lea edx, [edi + 3]
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov eax, dword [ebp - 0x118]
mov dword [eax + 0xb4], ebx
mov eax, 0xfffffc1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x44], 0
je 0x469fe8
cmp esi, dword [eax + 0x74]
jne 0x469fe8
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x118]
cmp esi, dword [eax + 0x74]
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
mov ebx, dword [ebp - 0x118]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x44], 0
je 0x46a016
cmp esi, dword [eax + 0x74]
je case.default.0x46af0a
mov ecx, dword [eax + 0x74]
cmp esi, ecx
je 0x46bc14
cmp esi, dword [eax + 0x78]
je case.default.0x46af0a
mov edx, dword [eax + 0x18]
test edx, edx
je 0x46a062
cmp esi, ecx
jbe case.default.0x46af0a
push dword [ebp - 0x12c]
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.00479120
add esp, 0xc
test eax, eax
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
mov ebx, dword [ebp - 0x118]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edx, dword [eax + 0x1c]
lea eax, [ecx + edx]
cmp esi, eax
jb case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
mov ecx, esi
sub ecx, edx
mov al, byte [ecx]
cmp al, byte [ebx + 0x34]
jne case.default.0x46af0a
cmp edx, 1
je case.0x46af0a.10
mov al, byte [ecx + 1]
cmp al, byte [ebx + 0x35]
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
mov ebx, dword [ebp - 0x118]
mov eax, dword [eax + 0x94]
add eax, dword [ebx + 0x74]
cmp esi, eax
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x140], esi
mov dword [ebp - 0x11c], edi
jmp 0x468bbc
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x46a172
mov edx, dword [eax + 0x18]
test edx, edx
je 0x46a13c
push dword [ebp - 0x12c]
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.00478f90
add esp, 0xc
test eax, eax
je 0x47378d
mov edi, dword [ebp - 0x11c]
mov ebx, dword [ebp - 0x118]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edx, dword [eax + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x473793
mov ebx, dword [ebp - 0x118]
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x46a16b
cmp edx, 1
je case.0x46af0a.10
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.0x46af0a.10
mov eax, ebx
jmp 0x473793
cmp dword [eax + 0x48], 0
jne case.default.0x46af0a
jmp 0x46a259
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x48], 0
jne case.default.0x46af0a
cmp dword [eax + 0x58], 0
je 0x46a1b3
jmp 0x46a19f
mov eax, dword [ebp - 0x118]
cmp esi, dword [eax + 0x78]
jb case.default.0x46af0a
jmp 0x46a259
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x78]
cmp esi, eax
jae 0x46a253
mov ebx, dword [ebp - 0x118]
mov edx, dword [ebx + 0x18]
lea edi, [ebx + 0x1c]
test edx, edx
je 0x46a22c
push dword [ebp - 0x12c]
mov ecx, esi
push edi
push eax
call fcn.00478f90
add esp, 0xc
test eax, eax
jne 0x46a248
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je case.default.0x46af0a
lea eax, [esi + 1]
cmp eax, dword [ebx + 0x78]
jb case.default.0x46af0a
cmp dword [ebx + 0x18], 0
jne case.default.0x46af0a
cmp dword [ebx + 0x1c], 2
jne case.default.0x46af0a
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne case.default.0x46af0a
mov dword [ebx + 0x64], 1
cmp ecx, 1
jmp 0x4739c9
mov ecx, dword [edi]
sub eax, ecx
cmp esi, eax
ja 0x46a1e4
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x46a1e4
cmp ecx, 1
je 0x46a248
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
jne 0x46a1e4
mov eax, ebx
mov eax, dword [eax + 0x78]
sub eax, dword [edi]
cmp esi, eax
jne 0x46a1e4
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x88]
mov ebx, dword [ebp - 0x118]
test eax, eax
je case.0x46af0a.10
cmp esi, dword [ebx + 0x84]
jbe case.0x46af0a.10
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x74]
test edx, edx
je 0x46a4f2
cmp esi, eax
je 0x46a3f2
mov al, byte [esi - 1]
lea edx, [esi - 1]
and al, 0xc0
mov ecx, edx
cmp al, 0x80
jne 0x46a2ce
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
je 0x46a2c2
mov edi, dword [ebp - 0x118]
cmp ecx, dword [edi + 0x84]
jae 0x46a2e2
mov dword [edi + 0x84], edx
movzx ebx, byte [edx]
mov ecx, ebx
cmp ebx, 0xc0
jb 0x46a393
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x46a30e
mov eax, ebx
mov ebx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x46a38f
movzx eax, byte [edx + 2]
test bl, 0x10
jne 0x46a321
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x46a389
and eax, 0x3f
test bl, 8
jne 0x46a33c
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x46a389
test bl, 4
jne 0x46a360
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
jmp 0x46a389
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov ecx, ebx
cmp dword [edi + 0x54], 0
je 0x46a3da
cmp ecx, 0x5f
je 0x46a3d3
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46a3d3
cmp eax, 3
jne 0x46a3f2
mov edi, 1
jmp 0x46a3f4
cmp ecx, 0x100
jae 0x46a3f2
mov eax, dword [edi + 0x40]
test byte [ebx + eax], 0x10
je 0x46a3f2
mov edi, 1
jmp 0x46a3f4
xor edi, edi
mov ebx, dword [ebp - 0x118]
cmp esi, dword [ebx + 0x78]
jae 0x46a5eb
movzx edx, byte [esi]
mov ecx, edx
cmp edx, 0xc0
jb 0x46a4b4
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x46a42f
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x46a4b0
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x46a442
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x46a4aa
and eax, 0x3f
test dl, 8
jne 0x46a45d
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x46a4aa
test dl, 4
jne 0x46a481
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x46a4aa
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
cmp dword [ebx + 0x54], 0
je 0x46a4da
cmp ecx, 0x5f
je 0x46a5d4
mov eax, ecx
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
and ecx, 0x7f
jmp 0x46a5b1
cmp ecx, 0x100
jae 0x46a60d
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 0x10
jmp 0x46a5e2
mov ebx, dword [ebp - 0x118]
cmp esi, eax
je 0x46a579
cmp esi, dword [ebx + 0x84]
ja 0x46a50d
lea eax, [esi - 1]
mov dword [ebx + 0x84], eax
cmp dword [ebx + 0x54], 0
movzx ecx, byte [esi - 1]
je 0x46a569
cmp ecx, 0x5f
je 0x46a562
mov eax, ecx
test eax, eax
jns 0x46a525
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
and ecx, reloc.WLDAP32.dll_Ordinal_127
jns 0x46a53f
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46a562
cmp eax, 3
jne 0x46a579
mov edi, 1
jmp 0x46a57b
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je 0x46a579
mov edi, 1
jmp 0x46a57b
xor edi, edi
cmp esi, dword [ebx + 0x78]
jae 0x46a5eb
cmp dword [ebx + 0x54], 0
movzx ecx, byte [esi]
je 0x46a5db
cmp ecx, 0x5f
je 0x46a5d4
mov eax, ecx
test eax, eax
jns 0x46a597
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
and ecx, reloc.WLDAP32.dll_Ordinal_127
jns 0x46a5b1
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46a5d4
cmp eax, 3
jne 0x46a60d
mov ecx, 1
jmp 0x46a60f
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je 0x46a60d
mov ecx, 1
jmp 0x46a60f
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x46a60d
cmp esi, dword [ebx + 0x84]
jbe 0x46a60d
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x4739cf
xor ecx, ecx
mov edx, dword [ebp - 0x11c]
mov al, byte [edx]
inc edx
mov dword [ebp - 0x11c], edx
cmp al, 5
jne 0x46a62b
xor eax, eax
cmp ecx, edi
sete al
jmp 0x46a632
xor eax, eax
cmp ecx, edi
setne al
test eax, eax
jne case.default.0x46af0a
jmp 0x468bb0
mov edx, dword [ebx + 0x18]
test edx, edx
je 0x46a66c
mov ecx, dword [ebx + 0x78]
cmp esi, ecx
jae 0x46a694
push dword [ebp - 0x12c]
lea eax, [ebx + 0x1c]
push eax
push ecx
mov ecx, esi
call fcn.00478f90
add esp, 0xc
test eax, eax
jne case.default.0x46af0a
jmp 0x46a694
mov eax, dword [ebx + 0x78]
mov ecx, dword [ebx + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x46a694
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne 0x46a694
cmp ecx, 1
je case.default.0x46af0a
mov al, byte [esi + 1]
cmp al, byte [ebx + 0x35]
je case.default.0x46af0a
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je case.0x468bee.13
mov eax, dword [ebx + 0x78]
dec eax
cmp esi, eax
jne case.0x468bee.13
cmp dword [ebx + 0x18], 0
jne case.0x468bee.13
cmp dword [ebx + 0x1c], 2
jne case.0x468bee.13
mov al, byte [esi]
cmp al, byte [ebx + 0x34]
jne case.0x468bee.13
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x4737da
inc esi
cmp dword [ebp - 0x12c], 0
je case.0x46af0a.10
cmp esi, edx
jae case.0x46af0a.10
mov ecx, esi
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne case.0x46af0a.10
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x46a6f0
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
mov edi, dword [ebp - 0x11c]
inc esi
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bbc
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov eax, edx
je 0x46a81f
cmp edx, 0xc0
jb 0x46a81f
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x46a776
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x46a81d
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x46a797
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x46a81d
test dl, 8
jne 0x46a7ba
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x46a81d
test dl, 4
jne 0x46a7e9
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x46a81d
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov eax, edx
cmp eax, 0x100
jae case.0x46af0a.10
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 4
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test edx, edx
je 0x46a943
cmp ecx, 0xc0
jb 0x46a943
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46a885
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46a941
test cl, 0x10
jne 0x46a8a6
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46a941
test cl, 8
jne 0x46a8d0
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46a941
test cl, 4
jne 0x46a906
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46a941
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0xff
ja case.default.0x46af0a
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test edx, edx
je 0x46aa67
cmp ecx, 0xc0
jb 0x46aa67
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46a9a9
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46aa65
test cl, 0x10
jne 0x46a9ca
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46aa65
test cl, 8
jne 0x46a9f4
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46aa65
test cl, 4
jne 0x46aa2a
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46aa65
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0x100
jae case.0x46af0a.10
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test edx, edx
je 0x46ab8b
cmp ecx, 0xc0
jb 0x46ab8b
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46aacd
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46ab89
test cl, 0x10
jne 0x46aaee
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46ab89
test cl, 8
jne 0x46ab18
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46ab89
test cl, 4
jne 0x46ab4e
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46ab89
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0xff
ja case.default.0x46af0a
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
mov eax, ecx
test edx, edx
je 0x46acaf
cmp ecx, 0xc0
jb 0x46acaf
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46abf1
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46acad
test cl, 0x10
jne 0x46ac12
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46acad
test cl, 8
jne 0x46ac3c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46acad
test cl, 4
jne 0x46ac72
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46acad
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, ecx
cmp eax, 0x100
jae case.0x46af0a.10
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov eax, edx
je 0x46adc5
cmp edx, 0xc0
jb 0x46adc5
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x46ad1c
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x46adc3
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x46ad3d
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x46adc3
test dl, 8
jne 0x46ad60
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x46adc3
test dl, 4
jne 0x46ad8f
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x46adc3
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov eax, edx
cmp eax, 0xff
ja case.default.0x46af0a
mov eax, dword [ebx + 0x40]
test byte [edx + eax], 0x10
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edx, dword [ebx + 0x78]
cmp esi, edx
jae 0x4737da
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov eax, esi
je 0x46aef0
cmp ecx, 0xc0
jb 0x46aef0
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46ae32
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46aeee
test cl, 0x10
jne 0x46ae53
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46aeee
test cl, 8
jne 0x46ae7d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46aeee
test cl, 4
jne 0x46aeb3
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46aeee
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, esi
cmp ecx, 0x85
ja 0x46af6f
je case.0x46af0a.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x46af0a
jmp dword [ecx*4 + 0x476e4c]
cmp eax, edx
jb 0x46af51
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je case.0x46af0a.10
cmp eax, dword [ebx + 0x84]
jbe case.0x46af0a.10
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp byte [esi], 0xa
jne case.0x46af0a.10
mov edi, dword [ebp - 0x11c]
lea esi, [eax + 1]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
sub ecx, 0x2028
je case.0x46af0a.11
sub ecx, 1
jne case.default.0x46af0a
cmp dword [ebx + 0x68], 0
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
test edx, edx
je 0x46b092
cmp ecx, 0xc0
jb 0x46b092
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46afd6
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46b092
test cl, 0x10
jne 0x46aff7
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46b092
test cl, 8
jne 0x46b021
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46b092
test cl, 4
jne 0x46b057
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46b092
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x2000
ja 0x46b0fc
je case.default.0x46af0a
cmp ecx, 0xa0
ja 0x46b0d2
je case.default.0x46af0a
cmp ecx, 9
je case.default.0x46af0a
cmp ecx, 0x20
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp ecx, 0x1680
je case.default.0x46af0a
cmp ecx, 0x180e
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp ecx, 0x3000
ja case.0x46af0a.10
je case.default.0x46af0a
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x46af0a.10
movzx eax, byte [ecx + 0x476e64]
jmp dword [eax*4 + 0x476e5c]
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
test edx, edx
je 0x46b221
cmp ecx, 0xc0
jb 0x46b221
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46b165
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46b221
test cl, 0x10
jne 0x46b186
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46b221
test cl, 8
jne 0x46b1b0
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46b221
test cl, 4
jne 0x46b1e6
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46b221
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x2000
ja 0x46b28b
je case.0x46af0a.10
cmp ecx, 0xa0
ja 0x46b261
je case.0x46af0a.10
cmp ecx, 9
je case.0x46af0a.10
cmp ecx, 0x20
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp ecx, 0x1680
je case.0x46af0a.10
cmp ecx, 0x180e
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp ecx, 0x3000
ja case.default.0x46af0a
je case.0x46af0a.10
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x46af0a
movzx eax, byte [ecx + 0x476ecc]
jmp dword [eax*4 + 0x476ec4]
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ecx, byte [esi]
inc esi
test edx, edx
je 0x46b3b0
cmp ecx, 0xc0
jb 0x46b3b0
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46b2f4
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46b3b0
test cl, 0x10
jne 0x46b315
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46b3b0
test cl, 8
jne 0x46b33f
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46b3b0
test cl, 4
jne 0x46b375
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46b3b0
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x85
ja 0x46b3d1
je case.default.0x46af0a
add ecx, 0xfffffff6
cmp ecx, 3
ja case.0x46af0a.10
jmp dword [ecx*4 + 0x476f2c]
sub ecx, 0x2028
je case.default.0x46af0a
sub ecx, 1
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
je 0x46b4e4
cmp edx, 0xc0
jb 0x46b4e4
test dl, 0x20
jne 0x46b437
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x46b4e4
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x46b45e
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x46b4e4
test dl, 8
jne 0x46b481
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x46b4e4
test dl, 4
jne 0x46b4b0
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x46b4e4
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
cmp edx, 0x85
ja 0x46b505
je case.0x46af0a.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x46af0a
jmp dword [edx*4 + 0x476f3c]
sub edx, 0x2028
je case.0x46af0a.10
sub edx, 1
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov edi, edx
je 0x46b62b
cmp edx, 0xc0
jb 0x46b62b
movzx eax, byte [esi]
and eax, 0x3f
test dl, 0x20
jne 0x46b56d
and edx, 0x1f
shl edx, 6
or edx, eax
inc esi
jmp 0x46b629
test dl, 0x10
jne 0x46b58e
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 2
jmp 0x46b629
test dl, 8
jne 0x46b5b8
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x46b629
test dl, 4
jne 0x46b5ee
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x46b629
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [esi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov edi, edx
mov eax, edi
shr eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, edi
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx ebx, word [ecx*2 + 0x628de8]
mov ecx, dword [ebp - 0x11c]
movzx eax, byte [ecx + 1]
cmp eax, 0xa
ja case.default.0x46b65c
jmp dword [eax*4 + 0x476f4c]
cmp dword [ebp - 0x124], 0xf
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov al, byte [ebx*8 + 0x627629]
cmp al, 9
je 0x46b6af
cmp al, 5
je 0x46b6af
cmp al, 8
je 0x46b6af
xor eax, eax
xor ecx, ecx
cmp dword [ebp - 0x124], 0xf
sete al
cmp ecx, eax
jmp 0x46b66a
xor eax, eax
mov ecx, 1
cmp dword [ebp - 0x124], 0xf
sete al
cmp ecx, eax
jmp 0x46b66a
mov edi, dword [ebp - 0x11c]
xor edx, edx
movzx ecx, byte [ebx*8 + 0x627629]
movzx eax, byte [edi + 2]
cmp eax, dword [ecx*4 + 0x624478]
setne dl
xor eax, eax
cmp dword [ebp - 0x124], 0x10
sete al
cmp edx, eax
je case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edi, dword [ebp - 0x11c]
xor ecx, ecx
mov al, byte [edi + 2]
cmp al, byte [ebx*8 + 0x627629]
setne cl
xor eax, eax
cmp dword [ebp - 0x124], 0x10
sete al
cmp ecx, eax
je case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov edi, dword [ebp - 0x11c]
xor ecx, ecx
mov al, byte [edi + 2]
cmp al, byte [ebx*8 + 0x627628]
setne cl
xor eax, eax
cmp dword [ebp - 0x124], 0x10
sete al
cmp ecx, eax
je case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
movzx eax, byte [ebx*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46b6af
cmp eax, 3
je 0x46b6af
xor eax, eax
xor ecx, ecx
cmp dword [ebp - 0x124], 0xf
sete al
cmp ecx, eax
jmp 0x46b66a
cmp edx, 0x20
ja 0x46b7d4
je case.0x46b65c.0
add edx, 0xfffffff7
cmp edx, 4
ja case.0x46b855.8203
jmp dword [edx*4 + 0x476f78]
cmp edx, 0x2000
ja 0x46b835
je case.0x46b65c.0
cmp edx, 0x1680
ja 0x46b82d
je case.0x46b65c.0
sub edx, 0x85
je case.0x46b65c.0
sub edx, 0x1b
je case.0x46b65c.0
movzx eax, byte [ebx*8 + 0x627629]
xor ecx, ecx
cmp dword [eax*4 + 0x624478], 6
sete cl
xor eax, eax
cmp dword [ebp - 0x124], 0xf
sete al
cmp ecx, eax
jmp 0x46b66a
cmp edx, 0x180e
jmp 0x46b7ff
cmp edx, 0x3000
ja case.0x46b855.8203
je case.0x46b65c.0
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x46b855.8203
movzx eax, byte [edx + 0x476f94]
jmp dword [eax*4 + 0x476f8c]
movzx eax, byte [ebx*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46b6af
cmp eax, 3
je 0x46b6af
cmp edi, 0x5f
je 0x46b6af
xor eax, eax
xor ecx, ecx
cmp dword [ebp - 0x124], 0xf
sete al
cmp ecx, eax
jmp 0x46b66a
movzx eax, byte [ecx + 2]
mov ecx, dword [eax*4 + 0x628ca8]
lea eax, [eax*4 + 0x628ca8]
cmp edi, ecx
jb 0x46b8be
lea eax, [eax + 4]
cmp edx, ecx
je 0x46b8ca
mov ecx, dword [eax]
cmp edx, ecx
jae 0x46b8b1
cmp dword [ebp - 0x124], 0x10
jmp 0x46b66a
cmp dword [ebp - 0x124], 0x10
jne case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
mov ebx, dword [ebp - 0x118]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
cmp edi, 0x24
je 0x46b91c
cmp edi, 0x40
je 0x46b91c
cmp edi, 0x60
je 0x46b91c
cmp edi, 0xa0
jb 0x46b910
cmp edi, 0xd7ff
jbe 0x46b91c
cmp edi, 0xe000
jae 0x46b91c
xor ecx, ecx
jmp 0x46b921
mov ecx, 1
xor eax, eax
cmp dword [ebp - 0x124], 0xf
sete al
cmp ecx, eax
jne 0x46b670
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x78]
mov dword [ebp - 0x128], eax
cmp esi, eax
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x13c], edx
mov ecx, esi
je 0x46baa8
cmp edx, 0xc0
jb 0x46baa8
mov al, byte [esi]
test dl, 0x20
jne 0x46b99b
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x46baa6
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46b9c1
mov ebx, edx
movzx eax, al
and ebx, 0xf
and eax, 0x3f
shl ebx, 6
add esi, 2
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46baa1
test dl, 8
jne 0x46b9f6
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x13c]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46baa1
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test dl, 4
lea edx, [esi + 2]
jne 0x46ba36
mov ebx, dword [ebp - 0x13c]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46baa1
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x13c]
mov dword [ebp - 0x144], ebx
and dword [ebp - 0x144], 1
shl dword [ebp - 0x144], 6
or dword [ebp - 0x144], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x144], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x144]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x144], ecx
mov ebx, ecx
and eax, 0x3f
or ebx, eax
mov ecx, esi
mov edx, dword [ebp - 0x128]
mov eax, ebx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx ebx, byte [eax*8 + 0x62762a]
cmp ecx, edx
jae 0x46bbfb
nop word [eax + eax]
cmp dword [ebp - 0x12c], 0
mov edi, 1
movzx edx, byte [esi]
je 0x46bbb4
cmp edx, 0xc0
jb 0x46bbb4
test dl, 0x20
jne 0x46bb17
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x46bbac
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x46bb36
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x46bbac
and eax, 0x3f
test dl, 8
jne 0x46bb56
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x46bbac
test dl, 4
jne 0x46bb7f
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x46bbac
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
mov edx, dword [ebp - 0x128]
movzx eax, word [eax*2 + 0x628de8]
movzx ecx, byte [eax*8 + 0x62762a]
mov eax, dword [ebp - 0x15c]
shl eax, cl
test dword [ebx*4 + 0x624f48], eax
je 0x46bbfb
add esi, edi
mov ebx, ecx
cmp esi, edx
jb 0x46bae0
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx + 0x88]
test eax, eax
je case.0x46af0a.10
cmp esi, edx
jb case.0x46af0a.10
jmp 0x46a26d
mov ebx, eax
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
xor eax, eax
cmp edi, 0x74
mov edi, dword [ebp - 0x11c]
sete al
mov dword [ebp - 0x13c], eax
movzx edx, byte [edi + 3]
movzx eax, byte [edi + 4]
movzx ecx, byte [edi + 1]
shl edx, 8
or edx, eax
shl ecx, 8
movzx eax, byte [edi + 2]
add edi, 5
or ecx, eax
mov dword [ebp - 0x11c], edi
imul ecx, dword [ebx + 0x24]
mov eax, dword [ebx + 0x30]
mov ebx, dword [ebx + 0x50]
add eax, ecx
neg ebx
sbb ebx, ebx
xor edi, edi
neg ebx
mov dword [ebp - 0x164], edi
dec ebx
mov dword [ebp - 0x144], ebx
test edx, edx
je 0x46bd36
mov dword [ebp - 0x150], eax
nop
movzx ecx, byte [eax]
dec edx
movzx eax, byte [eax + 1]
shl ecx, 8
or ecx, eax
lea edi, [ecx + ecx]
mov ecx, dword [ebp - 0x118]
mov dword [ebp - 0x164], edi
cmp edi, dword [ebp - 0x138]
jge 0x46bcbd
mov eax, dword [ecx + 0xc]
cmp dword [eax + edi*4], 0
jge 0x46bcd2
mov eax, dword [ecx + 0x24]
add eax, dword [ebp - 0x150]
mov dword [ebp - 0x150], eax
test edx, edx
jg 0x46bc90
jmp 0x46bd36
mov ebx, dword [eax + edi*4 + 4]
sub ebx, dword [eax + edi*4]
jmp 0x46bd30
xor eax, eax
cmp edi, 0x72
sete al
mov dword [ebp - 0x13c], eax
mov eax, dword [ebp - 0x11c]
add dword [ebp - 0x11c], 3
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
lea edi, [ecx + ecx]
mov dword [ebp - 0x164], edi
cmp edi, dword [ebp - 0x138]
jge 0x46bd26
mov eax, dword [ebx + 0xc]
mov ecx, dword [eax + edi*4]
test ecx, ecx
js 0x46bd26
mov ebx, dword [eax + edi*4 + 4]
sub ebx, ecx
jmp 0x46bd30
mov ebx, dword [ebx + 0x50]
neg ebx
sbb ebx, ebx
neg ebx
dec ebx
mov dword [ebp - 0x144], ebx
mov ecx, dword [ebp - 0x11c]
mov dl, byte [ecx]
movzx ecx, dl
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x46bd54
movzx eax, byte [eax + 0x476ffc]
jmp dword [eax*4 + 0x476ff4]
inc dword [ebp - 0x11c]
lea eax, [ecx - 0x62]
movsx ebx, byte [eax + 0x62446c]
mov ecx, eax
movsx eax, byte [eax + 0x6243d4]
and ecx, 1
test eax, eax
mov dword [ebp - 0x14c], ecx
cmove eax, dword [ebp - 0x16c]
mov dword [ebp - 0x128], eax
jmp 0x46bdd6
xor eax, eax
cmp dl, 0x69
mov edx, dword [ebp - 0x11c]
sete al
mov dword [ebp - 0x14c], eax
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
movzx edx, byte [edx + 3]
shl ebx, 8
or ebx, eax
shl edx, 8
mov eax, dword [ebp - 0x11c]
movzx eax, byte [eax + 4]
or edx, eax
cmove edx, dword [ebp - 0x16c]
add dword [ebp - 0x11c], 5
mov dword [ebp - 0x128], edx
mov edx, dword [ebp - 0x144]
mov ecx, ebx
test edx, edx
je 0x468baa
jns 0x46bdf0
test ebx, ebx
je 0x468baa
mov dword [ebp - 0x150], 1
cmp ecx, 1
jl 0x46be3a
nop
push dword [ebp - 0x13c]
mov ecx, edi
push dword [ebp - 0x118]
push edx
mov edx, esi
call fcn.00468760
add esp, 0xc
test eax, eax
js 0x473803
mov edx, dword [ebp - 0x144]
add esi, eax
mov eax, dword [ebp - 0x150]
inc eax
mov dword [ebp - 0x150], eax
cmp eax, ebx
jle 0x46be00
mov eax, dword [ebp - 0x128]
cmp ebx, eax
je 0x468baa
cmp dword [ebp - 0x14c], 0
je 0x47387d
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax]
cmp ebx, dword [ebp - 0x128]
jge case.default.0x46af0a
push dword [ebp - 0x13c]
mov edi, dword [ebp - 0x118]
mov edx, esi
mov ecx, dword [ebp - 0x164]
push edi
push dword [ebp - 0x144]
call fcn.00468760
add esp, 0xc
test eax, eax
js 0x473843
mov edx, dword [ebp - 0x11c]
add esi, eax
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
inc ebx
push eax
push dword [ebp - 0x148]
push edi
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x46be90
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x13c]
mov edx, esi
mov ecx, edi
push dword [ebp - 0x118]
push ebx
call fcn.00468760
add esp, 0xc
test eax, eax
js 0x473962
add esi, eax
jmp 0x468baa
mov ebx, dword [ebp - 0x11c]
mov cl, byte [ebx + 0x21]
lea edi, [ebx + 1]
add ebx, 0x21
movzx edx, cl
mov dword [ebp - 0x128], edi
mov dword [ebp - 0x11c], ebx
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x46bf62
movzx eax, byte [eax + 0x47700c]
jmp dword [eax*4 + 0x477004]
lea eax, [edx - 0x62]
inc ebx
mov dword [ebp - 0x11c], ebx
cmp eax, 8
jae 0x46bf8b
mov ebx, eax
and ebx, 1
mov dword [ebp - 0x144], ebx
mov ebx, dword [ebp - 0x11c]
jmp 0x46bf95
mov dword [ebp - 0x158], 1
movsx ecx, byte [eax + 0x62446c]
movsx eax, byte [eax + 0x6243d4]
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x134], eax
test eax, eax
jne 0x46c02e
mov dword [ebp - 0x134], bind
jmp 0x46c02e
xor eax, eax
cmp cl, 0x69
sete al
mov dword [ebp - 0x144], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [ebx + 1]
sete al
shl ecx, 8
mov dword [ebp - 0x158], eax
movzx eax, byte [ebx + 2]
movzx ebx, byte [ebx + 3]
or ecx, eax
mov eax, dword [ebp - 0x11c]
shl ebx, 8
movzx eax, byte [eax + 4]
or ebx, eax
cmove ebx, dword [ebp - 0x16c]
mov dword [ebp - 0x134], ebx
mov ebx, dword [ebp - 0x11c]
add ebx, 5
mov dword [ebp - 0x11c], ebx
jmp 0x46c028
mov dword [ebp - 0x134], 1
mov ecx, 1
mov dword [ebp - 0x130], ecx
cmp dword [ebp - 0x12c], 0
mov edx, 1
mov dword [ebp - 0x13c], edx
je 0x46c1cb
cmp ecx, edx
jl 0x46c21c
nop
mov ebx, dword [ebp - 0x118]
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x120], ebx
cmp ebx, 0xc0
jb 0x46c184
test bl, 0x20
jne 0x46c08e
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x46c184
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test bl, 0x10
jne 0x46c0b4
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46c179
lea edx, [esi + 2]
test bl, 8
jne 0x46c0dd
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46c173
lea edi, [esi + 3]
test bl, 4
jne 0x46c10e
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46c16d
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x120]
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
mov dword [ebp - 0x120], ebx
and eax, 0x3f
shl dword [ebp - 0x120], 6
mov ecx, dword [ebp - 0x120]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x120], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x128]
mov edx, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x130]
and eax, 0x3f
or ebx, eax
cmp ebx, 0xff
jbe 0x46c19b
cmp dword [ebp - 0x124], 0x6e
je case.default.0x46af0a
jmp 0x46c1ba
mov eax, dword [ebp - 0x15c]
mov ecx, ebx
and ecx, 7
shr ebx, 3
shl eax, cl
test byte [ebx + edi], al
je case.default.0x46af0a
mov ecx, dword [ebp - 0x130]
inc edx
mov dword [ebp - 0x13c], edx
cmp edx, ecx
jle 0x46c050
jmp 0x46c216
cmp ecx, 1
jl 0x46c21c
mov edx, dword [ebp - 0x118]
mov ebx, dword [ebp - 0x13c]
mov edi, dword [edx + 0x78]
nop
cmp esi, edi
jae 0x47399f
movzx edx, byte [esi]
inc esi
mov eax, dword [ebp - 0x15c]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x128]
test byte [edx + ecx], al
je case.default.0x46af0a
mov ecx, dword [ebp - 0x130]
inc ebx
cmp ebx, ecx
jle 0x46c1e0
mov ebx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x134]
cmp ecx, eax
je 0x468baa
cmp dword [ebp - 0x144], 0
jne 0x473a3e
mov edx, dword [ebp - 0x12c]
mov ebx, esi
mov dword [ebp - 0x144], ebx
test edx, edx
je 0x46c461
mov edx, dword [ebp - 0x118]
cmp ecx, eax
jge 0x46c3bc
mov ebx, dword [edx + 0x78]
nop
cmp esi, ebx
jae 0x46c38e
movzx edx, byte [esi]
mov edi, 1
cmp edx, 0xc0
jb 0x46c33b
test dl, 0x20
jne 0x46c292
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x46c32d
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x46c2b1
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x46c327
and eax, 0x3f
test dl, 8
jne 0x46c2d1
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x46c327
test dl, 4
jne 0x46c2fa
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x46c327
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
mov ecx, dword [ebp - 0x130]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, dword [ebp - 0x134]
cmp edx, 0xff
jbe 0x46c34e
cmp dword [ebp - 0x124], 0x6e
je 0x46c386
jmp 0x46c375
mov eax, dword [ebp - 0x15c]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x128]
test byte [edx + ecx], al
je 0x46c386
mov ecx, dword [ebp - 0x130]
mov eax, dword [ebp - 0x134]
inc ecx
add esi, edi
mov dword [ebp - 0x130], ecx
cmp ecx, eax
jl 0x46c260
mov edx, dword [ebp - 0x118]
jmp 0x46c3b6
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x46c3b6
cmp esi, dword [edx + 0x84]
jbe 0x46c3b6
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x144]
cmp dword [ebp - 0x158], 0
jne 0x468baa
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax + eax]
mov eax, esi
dec esi
cmp eax, ebx
jbe case.default.0x46af0a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x46c41d
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x46c413
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x46c400
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
cmp ecx, eax
mov ecx, dword [ebp - 0x118]
jge 0x46c4b4
mov edi, dword [ecx + 0x78]
nop
cmp esi, edi
jae 0x46c4d2
movzx edx, byte [esi]
mov eax, dword [ebp - 0x15c]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x128]
test byte [edx + ecx], al
je 0x46c4a8
mov eax, dword [ebp - 0x130]
inc esi
inc eax
mov dword [ebp - 0x130], eax
cmp eax, dword [ebp - 0x134]
jl 0x46c470
mov ecx, dword [ebp - 0x118]
mov edx, dword [ebp - 0x12c]
cmp dword [ebp - 0x158], 0
je 0x4739e5
mov ebx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
jmp 0x468bbc
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x46c4ae
cmp esi, dword [ecx + 0x84]
jbe 0x46c4ae
mov dword [ecx + 0x64], 1
cmp eax, 1
jle 0x46c4ae
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x11c]
movzx ecx, byte [edi + 1]
lea ebx, [edi + 3]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
mov dword [ebp - 0x14c], ebx
add edi, ecx
mov dword [ebp - 0x11c], edi
mov cl, byte [edi]
movzx edx, cl
lea eax, [edx - 0x62]
cmp eax, 0xb
ja case.default.0x46c548
movzx eax, byte [eax + 0x477020]
jmp dword [eax*4 + 0x477018]
lea eax, [edx - 0x62]
inc edi
mov dword [ebp - 0x11c], edi
cmp eax, 8
jae 0x46c56b
mov ecx, eax
and ecx, 1
mov dword [ebp - 0x144], ecx
jmp 0x46c575
mov dword [ebp - 0x158], 1
movsx ecx, byte [eax + 0x62446c]
movsx eax, byte [eax + 0x6243d4]
mov dword [ebp - 0x128], ecx
mov dword [ebp - 0x124], eax
test eax, eax
jne 0x46c602
mov dword [ebp - 0x124], bind
jmp 0x46c602
movzx edx, byte [edi + 3]
xor eax, eax
cmp cl, 0x69
sete al
mov dword [ebp - 0x144], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [edi + 1]
sete al
shl ecx, 8
mov dword [ebp - 0x158], eax
movzx eax, byte [edi + 2]
or ecx, eax
shl edx, 8
movzx eax, byte [edi + 4]
or edx, eax
cmove edx, dword [ebp - 0x16c]
add edi, 5
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x11c], edi
jmp 0x46c5fc
mov dword [ebp - 0x124], 1
mov ecx, 1
mov dword [ebp - 0x128], ecx
mov edi, 1
cmp ecx, edi
jl 0x46c734
nop
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x473cfd
movzx ecx, byte [esi]
inc esi
mov edx, dword [ebp - 0x12c]
test edx, edx
je 0x46c712
cmp ecx, 0xc0
jb 0x46c712
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46c656
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46c712
test cl, 0x10
jne 0x46c677
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46c712
test cl, 8
jne 0x46c6a1
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46c712
test cl, 4
jne 0x46c6d7
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46c712
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
push edx
mov edx, ebx
call fcn.00478840
add esp, 4
test eax, eax
je case.default.0x46af0a
mov ecx, dword [ebp - 0x128]
inc edi
cmp edi, ecx
jle 0x46c610
mov eax, dword [ebp - 0x124]
mov edx, dword [ebp - 0x12c]
cmp ecx, eax
je 0x46c4c1
cmp dword [ebp - 0x144], 0
jne 0x473d10
mov ebx, esi
mov dword [ebp - 0x13c], ebx
cmp ecx, eax
jge 0x46c88a
nop word [eax + eax]
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x46c93e
mov edx, dword [ebp - 0x12c]
mov edi, 1
movzx ebx, byte [esi]
test edx, edx
je 0x46c854
cmp ebx, 0xc0
jb 0x46c854
test bl, 0x20
jne 0x46c7b7
movzx eax, byte [esi + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x46c84c
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x46c7d6
and ebx, 0xf
mov edi, 3
shl ebx, 6
or ebx, ecx
jmp 0x46c84c
and eax, 0x3f
test bl, 8
jne 0x46c7f6
and ebx, 7
mov edi, 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 3]
jmp 0x46c84c
test bl, 4
jne 0x46c81f
and ebx, 3
mov edi, 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 4]
jmp 0x46c84c
and ebx, edi
mov edi, 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
push edx
mov edx, dword [ebp - 0x14c]
mov ecx, ebx
call fcn.00478840
add esp, 4
test eax, eax
je 0x46c884
mov ecx, dword [ebp - 0x128]
add esi, edi
inc ecx
mov dword [ebp - 0x128], ecx
cmp ecx, dword [ebp - 0x124]
jl 0x46c770
mov ebx, dword [ebp - 0x13c]
mov ecx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop
mov eax, esi
dec esi
cmp eax, ebx
jbe case.default.0x46af0a
cmp dword [ebp - 0x12c], 0
je 0x46c8fa
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x46c8fa
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x46c8f0
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x46c8d0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x46c960
cmp esi, dword [ecx + 0x84]
jbe 0x46c960
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x13c]
jmp 0x46c890
test edx, edx
je 0x46c9f3
mov eax, dword [ebp - 0x11c]
mov edx, 1
inc eax
mov ecx, edx
mov dword [ebp - 0x11c], eax
movzx eax, byte [eax]
cmp eax, 0xc0
jb 0x46c9c0
test al, 0x20
jne 0x46c99a
lea edx, [ecx + 1]
jmp 0x46c9be
test al, 0x10
jne 0x46c9a5
mov edx, 3
jmp 0x46c9be
test al, 8
jne 0x46c9b0
mov edx, 4
jmp 0x46c9be
mov edx, 5
test al, 4
je 0x46c9be
mov edx, 6
mov ecx, edx
mov edi, dword [ebx + 0x78]
mov eax, edi
sub eax, esi
cmp ecx, eax
jg 0x473eb8
mov edi, dword [ebp - 0x11c]
mov cl, byte [edi]
dec edx
mov al, byte [esi]
inc edi
inc esi
mov dword [ebp - 0x11c], edi
cmp cl, al
jne case.default.0x46af0a
test edx, edx
jg 0x46c9d5
jmp 0x468bb6
mov eax, dword [ebx + 0x78]
sub eax, esi
cmp eax, 1
jl 0x4737da
mov edi, dword [ebp - 0x11c]
mov al, byte [esi]
inc esi
cmp byte [edi + 1], al
jne case.default.0x46af0a
add edi, 2
mov dword [ebp - 0x11c], edi
jmp 0x468bbc
cmp esi, dword [ebx + 0x78]
jae 0x4737da
mov edi, dword [ebp - 0x11c]
test edx, edx
je 0x46cd0a
movzx ebx, byte [edi + 1]
inc edi
mov dword [ebp - 0x158], 1
mov edx, ebx
mov dword [ebp - 0x11c], edi
mov dword [ebp - 0x124], ebx
mov dword [ebp - 0x144], edx
cmp ebx, 0xc0
jb 0x46cb48
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x46ca8c
mov eax, ebx
mov dword [ebp - 0x158], 2
and eax, 0x1f
mov ebx, ecx
shl eax, 6
jmp 0x46cb38
movzx eax, byte [edi + 2]
test bl, 0x10
jne 0x46caac
and ebx, 0xf
mov dword [ebp - 0x158], 3
shl ebx, 6
or ebx, ecx
jmp 0x46cb32
and eax, 0x3f
test bl, 8
jne 0x46cad1
and ebx, 7
mov dword [ebp - 0x158], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x46cb32
test bl, 4
jne 0x46caff
and ebx, 3
mov dword [ebp - 0x158], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x46cb32
and ebx, 1
mov dword [ebp - 0x158], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov edx, ebx
mov dword [ebp - 0x124], ebx
mov dword [ebp - 0x144], edx
cmp edx, 0x80
jae 0x46cb7b
mov eax, dword [ebp - 0x118]
movzx ecx, byte [esi]
mov edx, dword [eax + 0x38]
mov al, byte [ebx + edx]
cmp al, byte [ecx + edx]
jne case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
inc edi
mov dword [ebp - 0x11c], edi
inc esi
jmp 0x468bb6
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x128], ebx
cmp ebx, 0xc0
jb 0x46ccaf
test bl, 0x20
jne 0x46cbaa
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x46ccaf
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x46cbd5
and ebx, 0xf
movzx eax, al
and eax, 0x3f
shl ebx, 6
or ebx, eax
add esi, 2
movzx eax, byte [ecx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x46ccaf
lea edx, [esi + 2]
test bl, 8
jne 0x46cc09
and ebx, 7
movzx eax, al
and eax, 0x3f
shl ebx, 6
or ebx, eax
add esi, 3
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x46cca9
lea edi, [esi + 3]
test bl, 4
jne 0x46cc4b
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x46cca3
and dword [ebp - 0x128], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x128], 6
add esi, 5
movzx ebx, byte [ebx]
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
or eax, dword [ebp - 0x128]
shl eax, 6
mov dword [ebp - 0x14c], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x14c]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
mov edi, dword [ebp - 0x11c]
mov edx, dword [ebp - 0x144]
add edi, dword [ebp - 0x158]
mov eax, dword [ebp - 0x124]
mov dword [ebp - 0x11c], edi
cmp eax, ebx
je 0x469410
mov eax, eax
test eax, eax
jns 0x46ccd2
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
mov eax, dword [eax*8 + 0x62762c]
add eax, edx
cmp ebx, eax
jne case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
jmp 0x468bb6
mov edx, dword [ebx + 0x38]
movzx eax, byte [edi + 1]
movzx ecx, byte [esi]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.default.0x46af0a
inc esi
add edi, 2
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov eax, dword [ebp - 0x11c]
movzx ebx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ebx, 8
or ebx, eax
mov eax, dword [ebp - 0x11c]
add eax, 3
mov dword [ebp - 0x130], ebx
mov edx, ebx
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x124], edx
mov ecx, eax
jmp 0x46ce54
mov dword [ebp - 0x158], 1
mov eax, dword [ebp - 0x11c]
xor edx, edx
mov dword [ebp - 0x124], edx
movzx ebx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ebx, 8
or ebx, eax
mov dword [ebp - 0x130], ebx
cmp cl, 0x28
je 0x46cda1
mov dword [ebp - 0x144], edx
cmp cl, 0x35
jne 0x46cdab
mov dword [ebp - 0x144], 1
mov eax, dword [ebp - 0x11c]
add eax, 3
mov dword [ebp - 0x11c], eax
mov ecx, eax
jmp 0x46ce54
xor edx, edx
mov dword [ebp - 0x130], bind
mov eax, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x124], edx
mov ecx, eax
mov dword [ebp - 0x11c], eax
jmp 0x46ce54
mov edx, 1
jmp 0x46cdc3
xor edx, edx
mov dword [ebp - 0x130], 1
jmp 0x46cdcd
mov ecx, dword [ebp - 0x11c]
cmp edi, 0x2e
mov ebx, edi
sbb eax, eax
inc ecx
and eax, 0xfffffff3
mov dword [ebp - 0x11c], ecx
add eax, 0x2e
sub ebx, eax
mov eax, ebx
and ebx, 1
mov dword [ebp - 0x144], ebx
movsx edx, byte [eax + 0x62446c]
movsx eax, byte [eax + 0x6243d4]
mov dword [ebp - 0x130], eax
test eax, eax
mov dword [ebp - 0x124], edx
mov eax, ecx
jne 0x46ce54
mov dword [ebp - 0x130], bind
cmp dword [ebp - 0x12c], 0
movzx ebx, byte [eax]
je 0x46d30c
mov dword [ebp - 0x164], eax
cmp ebx, 0xc0
jb 0x46d309
movzx edx, byte [eax + 1]
and edx, 0x3f
test bl, 0x20
jne 0x46cea2
and ebx, 0x1f
mov dword [ebp - 0x134], 2
shl ebx, 6
or edx, ebx
add eax, 2
mov dword [ebp - 0x11c], eax
jmp 0x46cf81
movzx eax, byte [eax + 2]
and eax, 0x3f
test bl, 0x10
jne 0x46ced1
and ebx, 0xf
mov dword [ebp - 0x134], 3
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
add dword [ebp - 0x11c], 3
jmp 0x46cf81
mov ecx, dword [ebp - 0x11c]
test bl, 8
jne 0x46cf04
and ebx, 7
mov dword [ebp - 0x134], 4
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 4
jmp 0x46cf7b
test bl, 4
jne 0x46cf3d
and ebx, 3
mov dword [ebp - 0x134], 5
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 5
jmp 0x46cf7b
and ebx, 1
mov dword [ebp - 0x134], 6
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
add ecx, 6
mov dword [ebp - 0x11c], ecx
cmp edi, 0x2e
jb 0x46cfbb
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
mov ecx, dword [eax*8 + 0x62762c]
add ecx, edx
cmp ecx, edx
je 0x46cfbb
lea edx, [ebp - 0x10]
call fcn.00478f40
jmp 0x46cfbd
xor eax, eax
mov edx, dword [ebp - 0x124]
mov ebx, 1
mov dword [ebp - 0x128], eax
cmp edx, ebx
jl 0x46d0fa
mov eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x134]
mov ecx, dword [eax + 0x78]
mov eax, ecx
sub eax, edi
mov dword [ebp - 0x13c], ecx
mov dword [ebp - 0x14c], eax
cmp esi, eax
ja 0x46d05c
mov edx, dword [ebp - 0x164]
mov ecx, esi
sub edi, 4
jb 0x46d017
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x46d01c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x46d006
cmp edi, 0xfffffffc
je 0x46d049
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x46d056
cmp edi, 0xfffffffd
je 0x46d049
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x46d056
cmp edi, 0xfffffffe
je 0x46d049
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x46d056
cmp edi, 0xffffffff
je 0x46d049
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x46d056
mov edi, dword [ebp - 0x134]
add esi, edi
jmp 0x46d0df
mov ecx, dword [ebp - 0x13c]
mov edi, dword [ebp - 0x128]
test edi, edi
jle 0x473ed3
mov eax, ecx
sub eax, edi
cmp esi, eax
ja 0x473ed3
lea edx, [ebp - 0x10]
mov ecx, esi
sub edi, 4
jb 0x46d091
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x46d096
add ecx, 4
add edx, 4
sub edi, 4
jae 0x46d080
cmp edi, 0xfffffffc
je 0x46d0d3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x473ed3
cmp edi, 0xfffffffd
je 0x46d0d3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x473ed3
cmp edi, 0xfffffffe
je 0x46d0d3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x473ed3
cmp edi, 0xffffffff
je 0x46d0d3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x473ed3
add esi, dword [ebp - 0x128]
mov edi, dword [ebp - 0x134]
mov edx, dword [ebp - 0x124]
inc ebx
mov eax, dword [ebp - 0x14c]
mov ecx, dword [ebp - 0x13c]
cmp ebx, edx
jle 0x46cff5
mov eax, dword [ebp - 0x130]
cmp edx, eax
je 0x468baa
cmp dword [ebp - 0x144], 0
jne 0x473f0b
mov ebx, esi
mov dword [ebp - 0x144], ebx
cmp edx, eax
jge 0x46d254
mov eax, dword [ebp - 0x118]
mov edi, dword [ebp - 0x134]
mov eax, dword [eax + 0x78]
mov ebx, eax
mov dword [ebp - 0x13c], eax
sub ebx, edi
nop
cmp esi, ebx
ja 0x46d1a7
mov edx, dword [ebp - 0x164]
mov ecx, esi
sub edi, 4
jb 0x46d162
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x46d167
add ecx, 4
add edx, 4
sub edi, 4
jae 0x46d151
cmp edi, 0xfffffffc
je 0x46d194
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x46d1a1
cmp edi, 0xfffffffd
je 0x46d194
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x46d1a1
cmp edi, 0xfffffffe
je 0x46d194
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x46d1a1
cmp edi, 0xffffffff
je 0x46d194
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x46d1a1
mov edi, dword [ebp - 0x134]
add esi, edi
jmp 0x46d22f
mov eax, dword [ebp - 0x13c]
mov edi, dword [ebp - 0x128]
test edi, edi
jle 0x46d2d1
sub eax, edi
cmp esi, eax
ja 0x46d2d1
lea edx, [ebp - 0x10]
mov ecx, esi
sub edi, 4
jb 0x46d1e1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x46d1e6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x46d1d0
cmp edi, 0xfffffffc
je 0x46d223
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x46d2d1
cmp edi, 0xfffffffd
je 0x46d223
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x46d2d1
cmp edi, 0xfffffffe
je 0x46d223
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x46d2d1
cmp edi, 0xffffffff
je 0x46d223
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x46d2d1
add esi, dword [ebp - 0x128]
mov edi, dword [ebp - 0x134]
mov edx, dword [ebp - 0x124]
mov eax, dword [ebp - 0x13c]
inc edx
mov dword [ebp - 0x124], edx
cmp edx, dword [ebp - 0x130]
jl 0x46d140
mov ebx, dword [ebp - 0x144]
mov ecx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
jbe 0x46d40e
nop
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x46d2ba
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x46d2b0
mov ecx, dword [ebp - 0x118]
cmp esi, ebx
ja 0x46d270
mov edi, dword [ebp - 0x11c]
mov ebx, ecx
jmp 0x46d41a
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x46d2fe
cmp esi, dword [ecx + 0x78]
jb 0x46d2fe
cmp esi, dword [ecx + 0x84]
jbe 0x46d2fe
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x144]
jmp 0x46d25a
inc eax
jmp 0x46d30f
lea eax, [ecx + 1]
mov dword [ebp - 0x11c], eax
mov ecx, 1
cmp edi, 0x2e
jb 0x46d46e
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
mov dword [ebp - 0x14c], edi
cmp edx, 1
jl 0x46d370
mov edx, dword [ecx + 0x78]
mov ecx, 1
cmp esi, edx
jae 0x4740a0
movzx eax, byte [esi]
cmp ebx, eax
je 0x46d35a
cmp edi, eax
jne case.default.0x46af0a
inc ecx
inc esi
cmp ecx, dword [ebp - 0x124]
jle 0x46d343
mov edx, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x130]
cmp edx, eax
je 0x468baa
cmp dword [ebp - 0x144], 0
jne 0x4740b9
mov dword [ebp - 0x14c], esi
cmp edx, eax
jge 0x46d3b5
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x46d439
movzx eax, byte [esi]
cmp ebx, eax
je 0x46d3ab
cmp edi, eax
jne 0x46d3b5
inc edx
inc esi
cmp edx, dword [ebp - 0x130]
jl 0x46d398
mov ebx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468bb0
mov ebx, dword [ebp - 0x14c]
cmp esi, ebx
je 0x46d40e
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
dec esi
test edi, edi
jne case.default.0x4694ab
cmp esi, ebx
jne 0x46d3d2
mov edi, dword [ebp - 0x11c]
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx]
mov edx, dword [ebx + 0x4c]
mov dword [ebp - 0x12c], edx
cmp eax, dword [ebx + 4]
jae 0x476c04
mov ecx, dword [ebp - 0x148]
jmp 0x468b60
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x46d3bb
cmp esi, dword [ebx + 0x84]
jbe 0x46d3bb
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x46d3bb
cmp edx, 1
jl 0x46d4a3
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x47416b
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x46af0a
inc ecx
cmp ecx, dword [ebp - 0x124]
jle 0x46d480
mov edx, dword [ebp - 0x124]
mov edi, dword [ebp - 0x130]
cmp edx, edi
je 0x468baa
cmp dword [ebp - 0x144], 0
jne 0x474194
mov dword [ebp - 0x14c], esi
cmp edx, edi
jge 0x46d4e2
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x46d544
movzx eax, byte [esi]
cmp ebx, eax
jne 0x46d4e2
inc edx
inc esi
cmp edx, edi
jl 0x46d4d1
mov ebx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468bb0
mov ebx, dword [ebp - 0x14c]
cmp esi, ebx
je 0x46d40e
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
dec esi
test edi, edi
jne case.default.0x4694ab
cmp esi, ebx
jne 0x46d503
jmp 0x46d40e
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x46d4e8
cmp esi, dword [ebx + 0x84]
jbe 0x46d4e8
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x46d4e8
cmp esi, dword [ebx + 0x78]
jae 0x4737da
mov eax, dword [ebp - 0x11c]
test edx, edx
je 0x46d800
movzx edx, byte [eax + 1]
lea ebx, [eax + 2]
mov dword [ebp - 0x158], edx
mov dword [ebp - 0x11c], ebx
cmp edx, 0xc0
jb 0x46d67f
test dl, 0x20
jne 0x46d5c6
movzx eax, byte [ebx]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc ebx
mov dword [ebp - 0x158], edx
jmp 0x46d679
movzx ecx, byte [ebx]
movzx eax, byte [ebx + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x46d5ed
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
add ebx, 2
jmp 0x46d673
test dl, 8
jne 0x46d610
and edx, 7
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [ebx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add ebx, 3
jmp 0x46d673
test dl, 4
jne 0x46d63f
and edx, 3
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [ebx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [ebx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add ebx, 4
jmp 0x46d673
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [ebx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [ebx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [ebx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add ebx, 5
mov dword [ebp - 0x158], ecx
mov dword [ebp - 0x11c], ebx
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x144], ebx
cmp ebx, 0xc0
jb 0x46d790
mov al, byte [esi]
movzx eax, al
test bl, 0x20
jne 0x46d6ab
and ebx, 0x1f
inc esi
shl ebx, 6
jmp 0x46d78b
and eax, 0x3f
lea ecx, [esi + 1]
test bl, 0x10
jne 0x46d6cc
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46d78b
lea edx, [esi + 2]
test bl, 8
jne 0x46d6f5
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46d78b
lea edi, [esi + 3]
test bl, 4
jne 0x46d726
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46d785
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x144]
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
mov dword [ebp - 0x144], ebx
and eax, 0x3f
shl dword [ebp - 0x144], 6
mov ecx, dword [ebp - 0x144]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x144], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x124]
and eax, 0x3f
or ebx, eax
cmp edi, 0x1f
jne 0x46d7a0
cmp dword [ebp - 0x158], ebx
jmp 0x468ba4
mov edx, dword [ebp - 0x158]
cmp edx, 0x7f
jbe 0x46d7e4
mov eax, edx
test eax, eax
jns 0x46d7b4
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, edx
shl ecx, 7
and eax, reloc.WLDAP32.dll_Ordinal_127
jns 0x46d7cf
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
mov eax, dword [eax*8 + 0x62762c]
add eax, edx
jmp 0x46d7f1
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x3c]
movzx eax, byte [eax + edx]
cmp edx, ebx
je case.default.0x46af0a
cmp eax, ebx
jmp 0x468ba4
movzx edx, byte [esi]
inc esi
movzx ecx, byte [eax + 1]
cmp ecx, edx
je case.default.0x46af0a
cmp edi, 0x20
jne 0x46d824
mov eax, dword [ebx + 0x3c]
movzx eax, byte [eax + ecx]
cmp eax, edx
je case.default.0x46af0a
mov edi, dword [ebp - 0x11c]
add edi, 2
mov dword [ebp - 0x11c], edi
jmp 0x468bb6
mov ebx, dword [ebp - 0x11c]
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov edi, ecx
mov dword [ebp - 0x120], ecx
mov dword [ebp - 0x130], edi
mov ecx, ebx
jmp 0x46d992
mov ebx, dword [ebp - 0x11c]
xor edi, edi
mov dword [ebp - 0x130], edi
movzx edx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl edx, 8
or edx, eax
mov dword [ebp - 0x120], edx
cmp cl, 0x42
je 0x46d894
mov dword [ebp - 0x144], edi
cmp cl, 0x4f
jne 0x46d89e
mov dword [ebp - 0x144], 1
add ebx, 3
mov ecx, ebx
jmp 0x46d992
mov ebx, dword [ebp - 0x11c]
xor edi, edi
inc ebx
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x130], edi
mov ecx, ebx
jmp 0x46d988
mov ebx, dword [ebp - 0x11c]
mov edi, 1
inc ebx
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x130], edi
mov ecx, ebx
jmp 0x46d988
mov ebx, dword [ebp - 0x11c]
xor edi, edi
inc ebx
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x130], edi
mov ecx, ebx
mov dword [ebp - 0x120], 1
jmp 0x46d992
mov ebx, dword [ebp - 0x11c]
xor edi, edi
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x130], edi
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ebx, 3
mov dword [ebp - 0x120], ecx
mov ecx, ebx
jmp 0x46d992
mov ebx, dword [ebp - 0x11c]
cmp edi, 0x48
mov edx, edi
sbb eax, eax
inc ebx
and eax, 0xfffffff3
mov ecx, ebx
add eax, 0x48
sub edx, eax
mov eax, edx
and edx, 1
mov dword [ebp - 0x144], edx
movsx edi, byte [eax + 0x62446c]
movsx eax, byte [eax + 0x6243d4]
mov dword [ebp - 0x130], edi
mov dword [ebp - 0x120], eax
test eax, eax
jne 0x46d992
mov dword [ebp - 0x120], bind
movzx ebx, byte [ebx]
inc ecx
mov eax, dword [ebp - 0x12c]
mov edx, ebx
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x11c], ecx
test eax, eax
je 0x46daa7
cmp ebx, 0xc0
jb 0x46daa7
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x46d9d7
and ebx, 0x1f
shl ebx, 6
or ebx, eax
inc ecx
jmp 0x46da93
test bl, 0x10
jne 0x46d9f8
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 2
jmp 0x46da93
test bl, 8
jne 0x46da22
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 3
jmp 0x46da93
test bl, 4
jne 0x46da58
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 4
jmp 0x46da93
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [ecx + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add ecx, 5
mov eax, dword [ebp - 0x12c]
mov edx, ebx
mov dword [ebp - 0x134], ebx
mov dword [ebp - 0x11c], ecx
cmp dword [ebp - 0x124], 0x48
jb 0x46dfbb
test eax, eax
je 0x46daec
cmp edx, 0x7f
jbe 0x46daec
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, edx
shl ecx, 7
and eax, 0x7f
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
mov ecx, dword [ebp - 0x118]
mov edi, dword [eax*8 + 0x62762c]
add edi, edx
jmp 0x46daf9
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x3c]
movzx edi, byte [eax + ebx]
cmp dword [ebp - 0x12c], 0
mov edx, 1
mov eax, dword [ebp - 0x130]
mov dword [ebp - 0x13c], edi
mov dword [ebp - 0x128], edx
je 0x46dc8f
mov ecx, dword [ebp - 0x134]
cmp eax, edx
jl 0x46dcc4
nop dword [eax + eax]
mov ebx, dword [ebp - 0x118]
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x124], ebx
cmp ebx, 0xc0
jb 0x46dc68
test bl, 0x20
jne 0x46db72
movzx ecx, byte [esi]
mov eax, ebx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov ebx, ecx
or ebx, eax
inc esi
jmp 0x46dc5c
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test bl, 0x10
jne 0x46db98
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46dc57
lea edx, [esi + 2]
test bl, 8
jne 0x46dbc1
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46dc51
lea edi, [esi + 3]
test bl, 4
jne 0x46dbf2
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46dc51
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x124]
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
mov dword [ebp - 0x124], ebx
and eax, 0x3f
shl dword [ebp - 0x124], 6
mov ecx, dword [ebp - 0x124]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x124], ecx
mov ebx, ecx
mov edx, dword [ebp - 0x128]
and eax, 0x3f
or ebx, eax
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x134]
cmp ecx, ebx
je case.default.0x46af0a
mov edi, dword [ebp - 0x13c]
cmp edi, ebx
je case.default.0x46af0a
inc edx
mov dword [ebp - 0x128], edx
cmp edx, eax
jle 0x46db30
jmp 0x46dcc4
cmp eax, 1
jl 0x46dcbe
mov ecx, dword [ecx + 0x78]
cmp esi, ecx
jae 0x4740a0
movzx eax, byte [esi]
cmp ebx, eax
je case.default.0x46af0a
cmp edi, eax
je case.default.0x46af0a
mov eax, dword [ebp - 0x130]
inc edx
inc esi
cmp edx, eax
jle 0x46dc97
mov ecx, dword [ebp - 0x134]
mov edx, dword [ebp - 0x120]
cmp eax, edx
je 0x468baa
cmp dword [ebp - 0x144], 0
jne 0x474243
cmp dword [ebp - 0x12c], 0
mov ebx, esi
je 0x46dee6
cmp eax, edx
jge 0x46de31
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop
cmp esi, edi
jae 0x46deb1
movzx edx, byte [esi]
mov eax, 1
cmp edx, 0xc0
jb 0x46de0a
test dl, 0x20
jne 0x46dd3a
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x46de0a
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x46dd64
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x46de04
test dl, 8
jne 0x46dd90
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x46de04
test dl, 4
jne 0x46ddc8
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x46de04
and edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
mov ecx, dword [ebp - 0x134]
cmp ecx, edx
je 0x46de31
cmp dword [ebp - 0x13c], edx
je 0x46de31
add esi, eax
mov eax, dword [ebp - 0x130]
inc eax
mov dword [ebp - 0x130], eax
cmp eax, dword [ebp - 0x120]
jl 0x46dd00
mov edx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
jbe 0x46d40e
nop dword [eax]
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x46de9a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x46de90
mov edx, dword [ebp - 0x118]
cmp esi, ebx
ja 0x46de50
mov edi, dword [ebp - 0x11c]
mov ebx, edx
jmp 0x46d41a
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x46de37
cmp esi, dword [edx + 0x84]
jbe 0x46de37
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x46de37
cmp eax, edx
jge 0x46df29
mov eax, dword [ebp - 0x118]
mov edx, dword [ebp - 0x134]
mov ecx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x46df8e
movzx eax, byte [esi]
cmp edx, eax
je 0x46df29
cmp edi, eax
je 0x46df29
mov eax, dword [ebp - 0x130]
inc esi
inc eax
mov dword [ebp - 0x130], eax
cmp eax, dword [ebp - 0x120]
jl 0x46df00
mov ecx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
je 0x46d40e
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x118]
dec esi
cmp esi, ebx
jne 0x46df44
mov edi, dword [ebp - 0x11c]
mov ebx, ecx
jmp 0x46d41a
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x46df2f
cmp esi, dword [ecx + 0x84]
jbe 0x46df2f
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x46df2f
mov edx, 1
mov dword [ebp - 0x13c], edx
test eax, eax
je 0x46e148
cmp edi, edx
jl 0x46e175
mov eax, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x128], ebx
cmp ebx, 0xc0
jb 0x46e12f
test bl, 0x20
jne 0x46e01e
movzx ecx, byte [esi]
mov eax, ebx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov ebx, ecx
or ebx, eax
inc esi
jmp 0x46e123
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x46e049
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edx
add esi, 2
shl ebx, 6
or ebx, eax
jmp 0x46e11d
lea edx, [esi + 2]
test bl, 8
jne 0x46e07d
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x46e117
lea edi, [esi + 3]
test bl, 4
jne 0x46e0bf
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x46e117
and dword [ebp - 0x128], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x128], 6
add esi, 5
movzx ebx, byte [ebx]
movzx eax, al
and ebx, 0x3f
and eax, 0x3f
or eax, dword [ebp - 0x128]
shl eax, 6
mov dword [ebp - 0x14c], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x14c]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
mov edi, dword [ebp - 0x130]
mov edx, dword [ebp - 0x13c]
mov eax, dword [ebp - 0x134]
mov ecx, dword [ebp - 0x118]
cmp eax, ebx
je case.default.0x46af0a
inc edx
mov dword [ebp - 0x13c], edx
cmp edx, edi
jle 0x46dfe2
jmp 0x46e16f
cmp edi, 1
jl 0x46e175
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x4740a0
movzx eax, byte [esi]
inc esi
cmp ebx, eax
je case.default.0x46af0a
inc edx
cmp edx, edi
jle 0x46e156
mov ecx, dword [ebp - 0x11c]
mov eax, dword [ebp - 0x120]
cmp edi, eax
je 0x468baa
cmp dword [ebp - 0x144], 0
jne 0x4744c7
mov edx, dword [ebp - 0x12c]
mov ebx, esi
test edx, edx
je 0x46e396
cmp edi, eax
jge 0x46e2e0
mov eax, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x134]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x46e361
movzx edx, byte [esi]
mov eax, 1
cmp edx, 0xc0
jb 0x46e2c1
test dl, 0x20
jne 0x46e1f1
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x46e2c1
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x46e21b
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x46e2bb
test dl, 8
jne 0x46e247
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x46e2bb
test dl, 4
jne 0x46e27f
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x46e2bb
and edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
mov ecx, dword [ebp - 0x134]
cmp ecx, edx
je 0x46e2e0
add esi, eax
mov eax, dword [ebp - 0x130]
inc eax
mov dword [ebp - 0x130], eax
cmp eax, dword [ebp - 0x120]
jl 0x46e1b7
mov edx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
jbe 0x46d40e
nop dword [eax + eax]
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
jne 0x46e34a
nop dword [eax]
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x46e340
mov edx, dword [ebp - 0x118]
cmp esi, ebx
ja 0x46e300
mov edi, dword [ebp - 0x11c]
mov ebx, edx
jmp 0x46d41a
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x46e2e6
cmp esi, dword [edx + 0x84]
jbe 0x46e2e6
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x46e2e6
cmp edi, eax
jge 0x46e429
mov eax, dword [ebp - 0x118]
mov edx, dword [ebp - 0x134]
mov ecx, dword [eax + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x46e3ef
movzx eax, byte [esi]
cmp edx, eax
je 0x46e3c5
inc edi
inc esi
cmp edi, dword [ebp - 0x120]
jl 0x46e3b0
mov ecx, dword [ebp - 0x118]
mov edx, dword [ebp - 0x12c]
cmp dword [ebp - 0x158], 0
je 0x473142
mov ebx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x11c]
jmp 0x468bbc
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x46e3cb
cmp esi, dword [ecx + 0x84]
jbe 0x46e3cb
mov dword [ecx + 0x64], 1
cmp eax, 1
jle 0x46e3cb
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x118]
jmp 0x46e3d1
mov edi, dword [ebp - 0x11c]
mov dword [ebp - 0x144], 1
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [ebp - 0x130], ecx
mov dword [ebp - 0x120], ecx
mov ecx, edi
jmp 0x46e57f
mov edi, dword [ebp - 0x11c]
xor ebx, ebx
mov dword [ebp - 0x120], 0
movzx edx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl edx, 8
or edx, eax
cmp cl, 0x5c
mov dword [ebp - 0x130], edx
sete bl
add edi, 3
mov dword [ebp - 0x144], ebx
mov ecx, edi
jmp 0x46e57f
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x120], 0
mov ecx, edi
jmp 0x46e575
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x120], 1
mov ecx, edi
jmp 0x46e575
mov edi, dword [ebp - 0x11c]
inc edi
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x120], 0
mov ecx, edi
mov dword [ebp - 0x130], 1
jmp 0x46e57f
mov edi, dword [ebp - 0x11c]
mov dword [ebp - 0x158], 1
mov dword [ebp - 0x120], 0
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
add edi, 3
mov dword [ebp - 0x130], ecx
mov ecx, edi
jmp 0x46e57f
lea ebx, [edi - 0x55]
mov edi, dword [ebp - 0x11c]
mov eax, ebx
inc edi
and ebx, 1
mov ecx, edi
mov dword [ebp - 0x144], ebx
movsx edx, byte [eax + 0x62446c]
movsx eax, byte [eax + 0x6243d4]
mov dword [ebp - 0x120], edx
mov dword [ebp - 0x130], eax
test eax, eax
jne 0x46e57f
mov dword [ebp - 0x130], bind
movzx edx, byte [edi]
lea ebx, [ecx + 1]
mov dword [ebp - 0x134], edx
mov dword [ebp - 0x11c], ebx
cmp edx, 0x10
je 0x46e5a0
cmp edx, 0xf
je 0x46e5a0
or eax, 0xffffffff
jmp 0x46e5c6
mov cl, byte [ebx]
xor eax, eax
cmp edx, 0xf
sete al
mov dword [ebp - 0x160], eax
lea eax, [ebx + 1]
movzx ebx, byte [eax]
inc eax
mov dword [ebp - 0x11c], eax
mov dword [ebp - 0x154], ebx
movzx eax, cl
mov ecx, dword [ebp - 0x120]
mov dword [ebp - 0x150], eax
test ecx, ecx
jle 0x46e859
test eax, eax
js 0x46f6a4
cmp eax, 0xa
ja case.default.0x46b65c
jmp dword [eax*4 + 0x47702c]
cmp dword [ebp - 0x160], 0
jne case.default.0x46af0a
mov ebx, dword [ebp - 0x120]
mov ecx, 1
cmp ebx, ecx
jl 0x4709c4
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
nop dword [eax + eax]
cmp esi, edx
jae 0x47416b
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
je 0x46e661
cmp eax, 0xc0
jb 0x46e661
test al, 0x20
jne 0x46e643
inc esi
jmp 0x46e661
test al, 0x10
jne 0x46e64c
add esi, 2
jmp 0x46e661
test al, 8
jne 0x46e655
add esi, 3
jmp 0x46e661
test al, 4
jne 0x46e65e
add esi, 4
jmp 0x46e661
add esi, 5
inc ecx
cmp ecx, ebx
jle 0x46e620
mov ecx, dword [ebp - 0x120]
mov ebx, edi
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov edi, dword [ebp - 0x120]
mov ecx, 1
mov dword [ebp - 0x13c], ecx
cmp edi, ecx
jl 0x4709c4
nop dword [eax]
nop word [eax + eax]
mov edx, dword [ebp - 0x118]
cmp esi, dword [edx + 0x78]
jae 0x4739a5
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x124], edx
je 0x46e7f6
cmp edx, 0xc0
jb 0x46e7f6
mov al, byte [esi]
test dl, 0x20
jne 0x46e6ef
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x46e7f6
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46e715
mov ebx, edx
movzx eax, al
and ebx, 0xf
and eax, 0x3f
shl ebx, 6
add esi, 2
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46e7eb
test dl, 8
jne 0x46e74a
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46e7eb
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46e78a
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46e7e5
and dword [ebp - 0x124], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x124], 6
add esi, 5
movzx eax, al
and eax, 0x3f
or eax, dword [ebp - 0x124]
shl eax, 6
mov dword [ebp - 0x128], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x128]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x128], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x13c]
and eax, 0x3f
or ebx, eax
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp eax, 9
je 0x46e82d
cmp eax, 5
je 0x46e82d
cmp eax, 8
je 0x46e82d
xor eax, eax
jmp 0x46e832
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
inc ecx
mov dword [ebp - 0x13c], ecx
cmp ecx, edi
jle 0x46e6a0
mov ecx, dword [ebp - 0x120]
mov edx, dword [ebp - 0x134]
mov ebx, dword [ebp - 0x118]
mov edi, dword [ebp - 0x130]
cmp ecx, edi
je 0x468bb0
cmp dword [ebp - 0x144], 0
mov eax, dword [ebp - 0x150]
jne 0x47472b
mov ebx, esi
mov dword [ebp - 0x124], ebx
test eax, eax
js 0x4718ba
cmp eax, 0xa
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477058]
mov edi, 1
mov dword [ebp - 0x128], edi
cmp ecx, edi
jl 0x46e859
nop
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x124], edx
je 0x46e9fe
cmp edx, 0xc0
jb 0x46e9fe
mov al, byte [esi]
test dl, 0x20
jne 0x46e8ff
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x46e9fe
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46e923
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x46e9f9
test dl, 8
jne 0x46e958
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46e9f9
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46e998
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46e9f3
and dword [ebp - 0x124], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x124], 6
add esi, 5
movzx eax, al
and eax, 0x3f
or eax, dword [ebp - 0x124]
shl eax, 6
mov dword [ebp - 0x13c], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x13c]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x13c], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x128]
and eax, 0x3f
or ebx, eax
mov eax, ebx
xor ecx, ecx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
mov ebx, dword [ebp - 0x154]
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp dword [eax*4 + 0x624478], ebx
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edi
mov dword [ebp - 0x128], edi
cmp edi, ecx
jle 0x46e8b0
jmp 0x46e853
mov edi, 1
mov dword [ebp - 0x128], edi
cmp ecx, edi
jl 0x46e859
nop dword [eax]
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x13c], edx
je 0x46ebbc
cmp edx, 0xc0
jb 0x46ebbc
mov al, byte [esi]
movzx eax, al
test dl, 0x20
jne 0x46eaba
and ebx, 0x1f
inc esi
shl ebx, 6
jmp 0x46ebb7
and eax, 0x3f
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46eadd
mov ebx, edx
add esi, 2
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46ebb7
test dl, 8
jne 0x46eb0c
mov ebx, dword [ebp - 0x13c]
lea edx, [esi + 2]
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46ebb7
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46eb46
mov ebx, dword [ebp - 0x13c]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46ebb1
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x13c]
mov dword [ebp - 0x124], ebx
and dword [ebp - 0x124], 1
shl dword [ebp - 0x124], 6
or dword [ebp - 0x124], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x124], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x124]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x124], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x128]
and eax, 0x3f
or ebx, eax
mov eax, ebx
xor ecx, ecx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp eax, dword [ebp - 0x154]
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edi
mov dword [ebp - 0x128], edi
cmp edi, ecx
jle 0x46ea70
jmp 0x46e853
mov edi, 1
mov dword [ebp - 0x128], edi
cmp ecx, edi
jl 0x46e859
nop dword [eax]
nop dword [eax + eax]
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x124], edx
je 0x46ed78
cmp edx, 0xc0
jb 0x46ed78
mov al, byte [esi]
test dl, 0x20
jne 0x46ec7f
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x46ed78
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46eca3
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x46ed73
test dl, 8
jne 0x46ecd8
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46ed73
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test dl, 4
lea edx, [esi + 2]
jne 0x46ed18
mov ebx, dword [ebp - 0x124]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46ed6d
and dword [ebp - 0x124], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x124], 6
add esi, 5
or eax, dword [ebp - 0x124]
shl eax, 6
mov dword [ebp - 0x13c], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x13c]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x13c], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x128]
and eax, 0x3f
or ebx, eax
mov eax, ebx
xor ecx, ecx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627628]
cmp eax, dword [ebp - 0x154]
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edi
mov dword [ebp - 0x128], edi
cmp edi, ecx
jle 0x46ec30
jmp 0x46e853
mov edi, dword [ebp - 0x120]
mov ecx, 1
mov dword [ebp - 0x13c], ecx
cmp edi, ecx
jl 0x4709c4
nop word [eax + eax]
mov edx, dword [ebp - 0x118]
cmp esi, dword [edx + 0x78]
jae 0x4739a5
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x128], edx
je 0x46ef5a
cmp edx, 0xc0
jb 0x46ef5a
mov al, byte [esi]
test dl, 0x20
jne 0x46ee3f
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x46ef5a
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46ee63
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x46ef4f
test dl, 8
jne 0x46ee98
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46ef4f
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46eed8
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46ef49
lea ebx, [esi + 4]
movzx eax, al
mov dword [ebp - 0x14c], ebx
and eax, 0x3f
mov ebx, dword [ebp - 0x128]
add esi, 5
mov dword [ebp - 0x124], ebx
and dword [ebp - 0x124], 1
shl dword [ebp - 0x124], 6
or dword [ebp - 0x124], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x124], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x124]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x124], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x13c]
and eax, 0x3f
or ebx, eax
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46ef93
cmp eax, 3
je 0x46ef93
xor eax, eax
jmp 0x46ef98
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
inc ecx
mov dword [ebp - 0x13c], ecx
cmp ecx, edi
jle 0x46edf0
jmp 0x46e84d
mov edi, 1
cmp ecx, edi
jl 0x46e859
mov edx, dword [ebp - 0x118]
mov ebx, dword [edx + 0x78]
nop
cmp esi, ebx
jae 0x47399f
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ecx, edx
je 0x46f0bd
cmp edx, 0xc0
jb 0x46f0bd
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x46f014
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
inc esi
jmp 0x46f0bb
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x46f035
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x46f0bb
test dl, 8
jne 0x46f058
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x46f0bb
test dl, 4
jne 0x46f087
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x46f0bb
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, edx
cmp edx, 0x20
ja 0x46f0d7
je case.0x46f181.8193
add edx, 0xfffffff7
cmp edx, 4
ja case.0x46f181.8203
jmp dword [edx*4 + 0x477084]
cmp edx, 0x2000
ja 0x46f165
je case.0x46f181.8193
cmp edx, 0x1680
ja 0x46f15d
je case.0x46f181.8193
sub edx, 0x85
je case.0x46f181.8193
sub edx, 0x1b
je case.0x46f181.8193
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp dword [eax*4 + 0x624478], 6
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edi
cmp edi, ecx
jle 0x46efd0
jmp 0x46e853
cmp edx, 0x180e
jmp 0x46f106
cmp edx, 0x3000
ja case.0x46f181.8203
je case.0x46f181.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x46f181.8203
movzx eax, byte [edx + 0x4770a0]
jmp dword [eax*4 + 0x477098]
cmp dword [ebp - 0x160], 0
jne case.default.0x46af0a
jmp 0x46f149
mov edi, 1
mov dword [ebp - 0x128], edi
cmp ecx, edi
jl 0x46e859
nop word [eax + eax]
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x13c], edx
je 0x46f2fc
cmp edx, 0xc0
jb 0x46f2fc
mov al, byte [esi]
movzx eax, al
test dl, 0x20
jne 0x46f1fa
and ebx, 0x1f
inc esi
shl ebx, 6
jmp 0x46f2f7
and eax, 0x3f
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46f21d
mov ebx, edx
add esi, 2
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x46f2f7
test dl, 8
jne 0x46f24c
mov ebx, dword [ebp - 0x13c]
lea edx, [esi + 2]
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46f2f7
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46f286
mov ebx, dword [ebp - 0x13c]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46f2f1
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x13c]
mov dword [ebp - 0x124], ebx
and dword [ebp - 0x124], 1
shl dword [ebp - 0x124], 6
or dword [ebp - 0x124], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x124], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x124]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x124], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x128]
and eax, 0x3f
or ebx, eax
mov eax, ebx
shr eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, ebx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x46f33c
cmp eax, 3
je 0x46f33c
cmp ebx, 0x5f
je 0x46f33c
xor eax, eax
jmp 0x46f341
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edi
mov dword [ebp - 0x128], edi
cmp edi, ecx
jle 0x46f1b0
jmp 0x46e853
mov ebx, 1
cmp ecx, ebx
jl 0x46e859
nop dword [eax]
nop dword [eax + eax]
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov edi, ecx
je 0x46f488
cmp ecx, 0xc0
jb 0x46f488
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46f3c7
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46f486
test cl, 0x10
jne 0x46f3e8
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46f486
test cl, 8
jne 0x46f415
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46f486
test cl, 4
jne 0x46f44b
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46f486
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edi, ecx
mov eax, dword [ebp - 0x154]
mov edx, dword [eax*4 + 0x628ca8]
lea eax, [eax*4 + 0x628ca8]
cmp edi, edx
jb 0x46f4ad
lea eax, [eax + 4]
cmp ecx, edx
je 0x46f4ce
mov edx, dword [eax]
cmp ecx, edx
jae 0x46f4a0
cmp dword [ebp - 0x160], 0
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc ebx
cmp ebx, ecx
jle 0x46f380
jmp 0x46e853
cmp dword [ebp - 0x160], 0
jne case.default.0x46af0a
jmp 0x46f4ba
mov edi, dword [ebp - 0x120]
mov ecx, 1
mov dword [ebp - 0x13c], ecx
cmp edi, ecx
jl 0x4709c4
nop word [eax + eax]
mov edx, dword [ebp - 0x118]
cmp esi, dword [edx + 0x78]
jae 0x4739a5
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x124], edx
je 0x46f654
cmp edx, 0xc0
jb 0x46f654
test dl, 0x20
jne 0x46f54d
movzx ebx, byte [esi]
and edx, 0x1f
and ebx, 0x3f
shl edx, 6
or ebx, edx
inc esi
jmp 0x46f654
mov al, byte [esi]
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46f573
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x46f649
test dl, 8
jne 0x46f5a8
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46f649
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46f5e8
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46f643
and dword [ebp - 0x124], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x124], 6
add esi, 5
movzx eax, al
and eax, 0x3f
or eax, dword [ebp - 0x124]
shl eax, 6
mov dword [ebp - 0x128], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x128]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x128], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
mov ecx, dword [ebp - 0x13c]
and eax, 0x3f
or ebx, eax
cmp ebx, 0x24
je 0x46f67f
cmp ebx, 0x40
je 0x46f67f
cmp ebx, 0x60
je 0x46f67f
cmp ebx, 0xa0
jb 0x46f673
cmp ebx, 0xd7ff
jbe 0x46f67f
cmp ebx, 0xe000
jae 0x46f67f
xor eax, eax
jmp 0x46f684
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
inc ecx
mov dword [ebp - 0x13c], ecx
cmp ecx, edi
jle 0x46f500
jmp 0x46e84d
cmp edx, 0x16
jne 0x46f9ec
mov ebx, dword [ebp - 0x118]
mov dword [ebp - 0x14c], 1
cmp ecx, 1
jl 0x46e85f
nop word [eax + eax]
mov eax, dword [ebx + 0x78]
mov dword [ebp - 0x164], eax
cmp esi, eax
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x124], edx
mov dword [ebp - 0x128], esi
je 0x46f82c
mov dword [ebp - 0x128], esi
cmp edx, 0xc0
jb 0x46f82c
mov al, byte [esi]
test dl, 0x20
jne 0x46f72d
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x46f826
lea ecx, [esi + 1]
test dl, 0x10
jne 0x46f751
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x46f821
test dl, 8
jne 0x46f786
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x46f821
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x46f7c6
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x124]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x46f821
and dword [ebp - 0x124], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x124], 6
add esi, 5
movzx eax, al
and eax, 0x3f
or eax, dword [ebp - 0x124]
shl eax, 6
mov dword [ebp - 0x13c], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x13c]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x13c], ecx
mov ebx, ecx
and eax, 0x3f
or ebx, eax
mov dword [ebp - 0x128], esi
mov ecx, dword [ebp - 0x164]
mov eax, ebx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx ebx, byte [eax*8 + 0x62762a]
cmp dword [ebp - 0x128], ecx
jae 0x46f996
nop dword [eax]
nop word [eax + eax]
cmp dword [ebp - 0x12c], 0
mov edi, 1
movzx edx, byte [esi]
je 0x46f947
cmp edx, 0xc0
jb 0x46f947
test dl, 0x20
jne 0x46f8a7
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x46f93f
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x46f8c9
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x46f93f
and eax, 0x3f
test dl, 8
jne 0x46f8e9
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x46f93f
test dl, 4
jne 0x46f912
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x46f93f
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x628de8]
movzx ecx, byte [eax*8 + 0x62762a]
mov eax, dword [ebp - 0x15c]
shl eax, cl
test dword [ebx*4 + 0x624f48], eax
je 0x46f990
mov ebx, ecx
add esi, edi
mov ecx, dword [ebp - 0x164]
cmp esi, ecx
jb 0x46f870
jmp 0x46f996
mov ecx, dword [ebp - 0x164]
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx + 0x88]
test eax, eax
je 0x46f9c2
cmp esi, ecx
jb 0x46f9c2
cmp esi, dword [ebx + 0x84]
jbe 0x46f9c2
mov dword [ebx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov ecx, dword [ebp - 0x14c]
inc ecx
mov dword [ebp - 0x14c], ecx
cmp ecx, dword [ebp - 0x120]
jle 0x46f6d0
mov ecx, dword [ebp - 0x120]
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
cmp dword [ebp - 0x12c], 0
lea eax, [edx - 6]
je 0x47055b
cmp eax, 0xf
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477100]
mov ebx, 1
cmp ecx, ebx
jl 0x46e859
nop dword [eax]
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x78]
cmp esi, eax
jae 0x4740a6
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x46fa5d
push dword [ebp - 0x12c]
lea edi, [ecx + 0x1c]
mov ecx, esi
push edi
push eax
call fcn.00478f90
add esp, 0xc
test eax, eax
jne case.default.0x46af0a
mov edx, dword [ebp - 0x118]
jmp 0x46fa87
mov edx, ecx
mov ecx, dword [edx + 0x1c]
sub eax, ecx
lea edi, [edx + 0x1c]
cmp esi, eax
ja 0x46fa87
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x46fa87
cmp ecx, 1
je case.default.0x46af0a
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je case.default.0x46af0a
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x46fabb
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x46fabb
cmp dword [edx + 0x18], 0
jne 0x46fabb
cmp dword [edi], 2
jne 0x46fabb
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x46fabb
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x46fad6
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x46fad6
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x46fac5
mov ecx, dword [ebp - 0x120]
inc ebx
cmp ebx, ecx
jle 0x46fa20
jmp 0x46e853
mov edi, 1
cmp ecx, edi
jl 0x46e859
mov edx, dword [ebp - 0x118]
mov ebx, dword [edx + 0x78]
cmp esi, ebx
jae 0x4739a5
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x46fb29
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x46fb23
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x46fb12
mov ecx, dword [ebp - 0x120]
mov edx, dword [ebp - 0x118]
inc edi
cmp edi, ecx
jle 0x46fb00
jmp 0x46e853
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx + 0x78]
sub eax, ecx
cmp esi, eax
ja case.default.0x46af0a
add esi, ecx
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
inc esi
mov eax, esi
cmp ecx, 0xc0
jb 0x46fc64
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46fba3
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46fc62
test cl, 0x10
jne 0x46fbc4
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46fc62
test cl, 8
jne 0x46fbf1
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46fc62
test cl, 4
jne 0x46fc27
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46fc62
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov eax, esi
cmp ecx, 0x85
ja 0x46fc8f
je case.0x46fc7a.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x46af0a
jmp dword [ecx*4 + 0x477140]
cmp eax, edi
jae case.0x46fc7a.10
cmp byte [esi], 0xa
jne case.0x46fc7a.10
lea esi, [eax + 1]
jmp case.0x46fc7a.10
sub ecx, 0x2028
je case.0x46fc7a.11
sub ecx, 1
jne case.default.0x46af0a
cmp dword [ebx + 0x68], 0
jne case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
cmp edx, ecx
jle 0x46fb70
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov edi, 1
cmp ecx, edi
jl 0x46e859
mov edx, dword [ebp - 0x118]
mov ebx, dword [edx + 0x78]
nop word [eax + eax]
cmp esi, ebx
jae 0x47399f
movzx edx, byte [esi]
inc esi
cmp edx, 0xc0
jb 0x46fdc4
test dl, 0x20
jne 0x46fd11
movzx eax, byte [esi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
inc esi
jmp 0x46fdc4
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x46fd38
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x46fdbe
test dl, 8
jne 0x46fd5b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x46fdbe
test dl, 4
jne 0x46fd8a
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x46fdbe
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, dword [ebp - 0x120]
cmp edx, 0x2000
ja 0x46fe1a
je case.default.0x46af0a
cmp edx, 0xa0
ja 0x46fe00
je case.default.0x46af0a
cmp edx, 9
je case.default.0x46af0a
cmp edx, 0x20
je case.default.0x46af0a
inc edi
cmp edi, ecx
jle 0x46fce0
jmp 0x46e853
cmp edx, 0x1680
je case.default.0x46af0a
cmp edx, 0x180e
je case.default.0x46af0a
jmp case.0x46fe3a.8203
cmp edx, 0x3000
ja case.0x46fe3a.8203
je case.default.0x46af0a
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x46fe3a.8203
movzx eax, byte [edx + 0x477158]
jmp dword [eax*4 + 0x477150]
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x46ff47
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x46fe88
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x46ff47
test cl, 0x10
jne 0x46fea9
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x46ff47
test cl, 8
jne 0x46fed6
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x46ff47
test cl, 4
jne 0x46ff0c
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x46ff47
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x2000
ja 0x46ff99
je case.0x46ffbd.8193
cmp ecx, 0xa0
ja 0x46ff83
je case.0x46ffbd.8193
cmp ecx, 9
je case.0x46ffbd.8193
cmp ecx, 0x20
jne case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
cmp edx, ecx
jle 0x46fe57
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
cmp ecx, 0x1680
je case.0x46ffbd.8193
cmp ecx, 0x180e
jne case.default.0x46af0a
jmp case.0x46ffbd.8193
cmp ecx, 0x3000
ja case.default.0x46af0a
je case.0x46ffbd.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x46af0a
movzx eax, byte [ecx + 0x4771c0]
jmp dword [eax*4 + 0x4771b8]
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x4700cd
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x470011
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4700cd
test cl, 0x10
jne 0x470032
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4700cd
test cl, 8
jne 0x47005c
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4700cd
test cl, 4
jne 0x470092
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4700cd
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x85
ja 0x4700ea
je case.default.0x46af0a
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x4700e3
jmp dword [ecx*4 + 0x477220]
sub ecx, 0x2028
je case.default.0x46af0a
sub ecx, 1
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
cmp edx, ecx
jle 0x46ffe0
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
inc esi
cmp ecx, 0xc0
jb 0x47021d
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x470161
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x47021d
test cl, 0x10
jne 0x470182
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x47021d
test cl, 8
jne 0x4701ac
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x47021d
test cl, 4
jne 0x4701e2
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x47021d
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
cmp ecx, 0x85
ja 0x47023a
je case.0x470233.10
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x46af0a
jmp dword [ecx*4 + 0x477230]
sub ecx, 0x2028
je case.0x470233.10
sub ecx, 1
jne case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
cmp edx, ecx
jle 0x470130
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov edi, 1
cmp ecx, edi
jl 0x46e859
mov edx, dword [ebp - 0x118]
mov ebx, dword [edx + 0x78]
nop dword [eax + eax]
cmp esi, ebx
jae 0x47399f
movzx edx, byte [esi]
inc esi
mov eax, edx
cmp edx, 0xc0
jb 0x470364
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x4702b5
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x47035c
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x4702d6
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x47035c
test dl, 8
jne 0x4702f9
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x47035c
test dl, 4
jne 0x470328
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x47035c
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, dword [ebp - 0x120]
mov eax, edx
cmp eax, 0x80
jae 0x47037e
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jne case.default.0x46af0a
inc edi
cmp edi, ecx
jle 0x470280
jmp 0x46e853
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.default.0x46af0a
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x4703a2
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov edi, 1
cmp ecx, edi
jl 0x46e859
mov edx, dword [ebp - 0x118]
mov ebx, dword [edx + 0x78]
cmp esi, ebx
jae 0x4739a5
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x470413
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x46af0a
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x470431
mov ecx, esi
nop dword [eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x470431
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x470420
mov ecx, dword [ebp - 0x120]
inc edi
mov edx, dword [ebp - 0x118]
cmp edi, ecx
jle 0x4703f3
jmp 0x46e853
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.default.0x46af0a
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470460
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov edi, 1
cmp ecx, edi
jl 0x46e859
mov edx, dword [ebp - 0x118]
mov ebx, dword [edx + 0x78]
cmp esi, ebx
jae 0x4739a5
movzx ecx, byte [esi]
cmp ecx, 0x80
jae 0x4704d1
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x46af0a
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x4704f1
mov ecx, esi
nop dword [eax + eax]
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4704f1
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x4704e0
mov ecx, dword [ebp - 0x120]
inc edi
mov edx, dword [ebp - 0x118]
cmp edi, ecx
jle 0x4704b1
jmp 0x46e853
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
cmp ecx, 0x80
jae case.default.0x46af0a
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470520
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
cmp eax, 0xf
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477240]
mov ebx, 1
cmp ecx, ebx
jl 0x46e859
mov edx, dword [ebp - 0x118]
nop
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x4739a5
mov edx, dword [edx + 0x18]
test edx, edx
je 0x4705b9
mov edi, dword [ebp - 0x118]
mov ecx, esi
push 0
add edi, 0x1c
push edi
push eax
call fcn.00478f90
add esp, 0xc
test eax, eax
jne case.default.0x46af0a
mov edx, dword [ebp - 0x118]
jmp 0x4705e7
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx + 0x1c]
lea edi, [edx + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x4705e7
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x4705e7
cmp ecx, 1
je case.default.0x46af0a
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je case.default.0x46af0a
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x47061b
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x47061b
cmp dword [edx + 0x18], 0
jne 0x47061b
cmp dword [edi], 2
jne 0x47061b
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x47061b
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov ecx, dword [ebp - 0x120]
inc ebx
inc esi
cmp ebx, ecx
jle 0x470580
jmp 0x46e853
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebx + 0x78]
sub eax, ecx
cmp esi, eax
ja 0x4737da
add esi, ecx
jmp 0x46e85f
mov ebx, dword [ebp - 0x120]
mov ecx, 1
cmp ebx, ecx
jl 0x4709c4
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x47416b
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.default.0x46af0a
movzx eax, byte [eax + 0x477290]
jmp dword [eax*4 + 0x477280]
cmp esi, edx
jae case.0x470687.10
cmp byte [esi], 0xa
jne case.0x470687.10
inc esi
jmp case.0x470687.10
cmp dword [edi + 0x68], 0
jne case.default.0x46af0a
inc ecx
cmp ecx, ebx
jle 0x470666
mov ecx, dword [ebp - 0x120]
mov ebx, edi
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x120]
mov ecx, 1
cmp ebx, ecx
jl 0x4709c4
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x47416b
movzx eax, byte [esi]
inc esi
cmp eax, 9
je case.default.0x46af0a
cmp eax, 0x20
je case.default.0x46af0a
cmp eax, 0xa0
je case.default.0x46af0a
inc ecx
cmp ecx, ebx
jle 0x4706d8
mov ecx, dword [ebp - 0x120]
mov ebx, edi
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x120]
mov ecx, 1
cmp ebx, ecx
jl 0x4709c4
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x47416b
movzx eax, byte [esi]
inc esi
cmp eax, 9
je 0x470756
cmp eax, 0x20
je 0x470756
cmp eax, 0xa0
jne case.default.0x46af0a
inc ecx
cmp ecx, ebx
jle 0x470735
mov ecx, dword [ebp - 0x120]
mov ebx, edi
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x120]
mov ecx, 1
cmp ebx, ecx
jl 0x4709c4
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
nop word [eax + eax]
cmp esi, edx
jae 0x47416b
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x4707ad.14
movzx eax, byte [eax + 0x477314]
jmp dword [eax*4 + 0x47730c]
inc ecx
cmp ecx, ebx
jle 0x470790
mov ecx, dword [ebp - 0x120]
mov ebx, edi
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x120]
mov ecx, 1
cmp ebx, ecx
jl 0x4709c4
mov edi, dword [ebp - 0x118]
mov edx, dword [edi + 0x78]
cmp esi, edx
jae 0x47416b
mov al, byte [esi]
inc esi
movzx eax, al
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.default.0x46af0a
movzx eax, byte [eax + 0x477398]
jmp dword [eax*4 + 0x477390]
inc ecx
cmp ecx, ebx
jle 0x4707e8
mov ecx, dword [ebp - 0x120]
mov ebx, edi
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470840
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 4
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470881
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x4708c2
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 1
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470907
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
nop dword [eax]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470950
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ebx, dword [ebp - 0x118]
mov edx, 1
cmp ecx, edx
jl 0x470864
mov edi, dword [ebx + 0x78]
cmp esi, edi
jae 0x4737da
movzx ecx, byte [esi]
mov eax, dword [ebx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x46af0a
mov ecx, dword [ebp - 0x120]
inc edx
inc esi
cmp edx, ecx
jle 0x470995
mov edx, dword [ebp - 0x134]
jmp 0x46e85f
mov ecx, dword [ebp - 0x120]
jmp 0x46e859
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x470a58
cmp dword [ebp - 0x12c], 0
mov eax, 1
movzx ecx, byte [esi]
je 0x470a33
cmp ecx, 0xc0
jb 0x470a33
test cl, 0x20
jne 0x470a0d
mov eax, 2
jmp 0x470a33
test cl, 0x10
jne 0x470a19
mov eax, 3
jmp 0x470a33
test cl, 8
jne 0x470a25
mov eax, 4
jmp 0x470a33
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [ebp - 0x160], 0
jne 0x471363
mov ecx, dword [ebp - 0x120]
add esi, eax
inc ecx
mov dword [ebp - 0x120], ecx
cmp ecx, edi
jl 0x4709e0
jmp 0x471363
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x471369
cmp esi, dword [ecx + 0x84]
jbe 0x471369
mov dword [ecx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x471369
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop
mov edx, 1
cmp esi, edi
jae 0x470bf6
cmp dword [ebp - 0x12c], 0
movzx eax, byte [esi]
mov ecx, eax
je 0x470b8e
cmp eax, 0xc0
jb 0x470b8e
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x470ae5
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x470b8c
test al, 0x10
jne 0x470aff
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x470b86
test al, 8
jne 0x470b22
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x470b86
test al, 4
jne 0x470b51
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x470b86
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp eax, 9
je 0x470bc5
cmp eax, 5
je 0x470bc5
cmp eax, 8
je 0x470bc5
xor eax, eax
jmp 0x470bca
mov eax, 1
cmp eax, dword [ebp - 0x160]
je 0x471363
mov eax, dword [ebp - 0x120]
add esi, edx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x470aa0
jmp 0x471363
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x471369
cmp esi, dword [ecx + 0x84]
jbe 0x471369
mov dword [ecx + 0x64], edx
cmp eax, 1
jg 0x4739cf
jmp 0x471369
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x470a58
cmp dword [ebp - 0x12c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x470d26
cmp eax, 0xc0
jb 0x470d26
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x470c7d
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x470d24
test al, 0x10
jne 0x470c97
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x470d1e
test al, 8
jne 0x470cba
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x470d1e
test al, 4
jne 0x470ce9
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x470d1e
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov ebx, dword [ebp - 0x154]
mov eax, ecx
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp dword [eax*4 + 0x624478], ebx
mov ebx, dword [ebp - 0x124]
sete cl
cmp ecx, dword [ebp - 0x160]
je 0x471363
mov eax, dword [ebp - 0x120]
add esi, edx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x470c38
jmp 0x471363
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop
cmp esi, edi
jae 0x470a58
cmp dword [ebp - 0x12c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x470e8e
cmp eax, 0xc0
jb 0x470e8e
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x470de5
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x470e8c
test al, 0x10
jne 0x470dff
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x470e86
test al, 8
jne 0x470e22
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x470e86
test al, 4
jne 0x470e51
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x470e86
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp eax, dword [ebp - 0x154]
sete cl
cmp ecx, dword [ebp - 0x160]
je 0x471363
mov eax, dword [ebp - 0x120]
add esi, edx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x470da0
jmp 0x471363
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x470a58
cmp dword [ebp - 0x12c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x470fee
cmp eax, 0xc0
jb 0x470fee
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x470f45
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x470fec
test al, 0x10
jne 0x470f5f
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x470fe6
test al, 8
jne 0x470f82
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x470fe6
test al, 4
jne 0x470fb1
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x470fe6
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627628]
cmp eax, dword [ebp - 0x154]
sete cl
cmp ecx, dword [ebp - 0x160]
je 0x471363
mov eax, dword [ebp - 0x120]
add esi, edx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x470f00
jmp 0x471363
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x470a58
cmp dword [ebp - 0x12c], 0
mov edx, 1
movzx eax, byte [esi]
mov ecx, eax
je 0x47114e
cmp eax, 0xc0
jb 0x47114e
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4710a5
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x47114c
test al, 0x10
jne 0x4710bf
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x471146
test al, 8
jne 0x4710e2
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x471146
test al, 4
jne 0x471111
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x471146
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x471187
cmp eax, 3
je 0x471187
xor eax, eax
jmp 0x47118c
mov eax, 1
cmp eax, dword [ebp - 0x160]
je 0x471363
mov eax, dword [ebp - 0x120]
add esi, edx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x471060
jmp 0x471363
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov ebx, dword [eax + 0x78]
nop dword [eax]
mov edi, 1
cmp esi, ebx
jae 0x47142c
cmp dword [ebp - 0x12c], 0
movzx edx, byte [esi]
mov ecx, edx
je 0x4712b6
cmp edx, 0xc0
jb 0x4712b6
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x47121b
mov eax, edx
mov edi, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x4712b2
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x471236
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4712ac
and eax, 0x3f
test dl, 8
jne 0x471256
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4712ac
test dl, 4
jne 0x47127f
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4712ac
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
cmp edx, 0x20
ja 0x4712d0
je case.0x471413.8193
add edx, 0xfffffff7
cmp edx, 4
ja case.0x471413.8203
jmp dword [edx*4 + 0x477414]
cmp edx, 0x2000
ja 0x4713ef
je case.0x471413.8193
cmp edx, 0x1680
ja 0x4713e4
je case.0x471413.8193
sub edx, 0x85
je case.0x471413.8193
sub edx, 0x1b
je case.0x471413.8193
mov eax, ecx
and ecx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp dword [eax*4 + 0x624478], 6
sete cl
cmp ecx, dword [ebp - 0x160]
je 0x47135d
mov eax, dword [ebp - 0x120]
add esi, edi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x4711d0
mov ebx, dword [ebp - 0x124]
mov ecx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
jbe 0x46d40e
nop
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
dec esi
cmp dword [ebp - 0x12c], eax
je 0x4713cd
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4713cd
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4713c3
mov ecx, dword [ebp - 0x118]
cmp esi, ebx
ja 0x471380
mov edi, dword [ebp - 0x11c]
mov ebx, ecx
jmp 0x46d41a
cmp edx, 0x180e
jmp 0x471303
cmp edx, 0x3000
ja case.0x471413.8203
je case.0x471413.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x471413.8203
movzx eax, byte [edx + 0x477430]
jmp dword [eax*4 + 0x477428]
cmp dword [ebp - 0x160], 0
jne 0x47135d
jmp 0x471342
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x471450
cmp esi, dword [ecx + 0x84]
jbe 0x471450
mov dword [ecx + 0x64], edi
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x124]
jmp 0x471369
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov ebx, dword [eax + 0x78]
nop dword [eax]
mov edi, 1
cmp esi, ebx
jae 0x47142c
cmp dword [ebp - 0x12c], 0
movzx eax, byte [esi]
mov edx, eax
je 0x47155a
cmp eax, 0xc0
jb 0x47155a
movzx edx, byte [esi + 1]
and edx, 0x3f
test al, 0x20
jne 0x4714b1
and eax, 0x1f
mov edi, 2
shl eax, 6
jmp 0x471558
test al, 0x10
jne 0x4714cb
and eax, 0xf
mov edi, 3
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
jmp 0x471552
test al, 8
jne 0x4714ee
and eax, 7
mov edi, 4
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x471552
test al, 4
jne 0x47151d
and eax, 3
mov edi, 5
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x471552
and eax, 1
mov edi, 6
shl eax, 6
or edx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
shr eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, edx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x47159a
cmp eax, 3
je 0x47159a
cmp edx, 0x5f
je 0x47159a
xor eax, eax
jmp 0x47159f
mov eax, 1
cmp eax, dword [ebp - 0x160]
je 0x47135d
mov eax, dword [ebp - 0x120]
add esi, edi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x471470
jmp 0x47135d
cmp ecx, edi
jge 0x471363
nop dword [eax]
nop word [eax + eax]
mov ecx, dword [ebp - 0x118]
mov ebx, 1
cmp esi, dword [ecx + 0x78]
jae 0x47172e
cmp dword [ebp - 0x12c], 0
movzx edx, byte [esi]
mov edi, edx
je 0x4716cd
cmp edx, 0xc0
jb 0x4716cd
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x471632
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x4716c9
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x47164d
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4716c3
and eax, 0x3f
test dl, 8
jne 0x47166d
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4716c3
test dl, 4
jne 0x471696
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4716c3
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov edi, edx
mov eax, dword [ebp - 0x154]
mov ecx, dword [eax*4 + 0x628ca8]
lea eax, [eax*4 + 0x628ca8]
cmp edi, ecx
jb 0x4716f2
lea eax, [eax + 4]
cmp edx, ecx
je 0x47171f
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4716e5
cmp dword [ebp - 0x160], 0
je 0x47135d
mov eax, dword [ebp - 0x120]
add esi, ebx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x4715e0
jmp 0x47135d
cmp dword [ebp - 0x160], 0
jne 0x47135d
jmp 0x4716ff
mov eax, dword [ecx + 0x88]
test eax, eax
je 0x471450
cmp esi, dword [ecx + 0x84]
jbe 0x471450
mov dword [ecx + 0x64], ebx
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x124]
jmp 0x471369
cmp ecx, edi
jge 0x471363
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
mov edx, 1
cmp esi, edi
jae 0x470bf6
cmp dword [ebp - 0x12c], 0
movzx eax, byte [esi]
mov ecx, eax
je 0x47185e
cmp eax, 0xc0
jb 0x47185e
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4717b5
and eax, 0x1f
mov edx, 2
shl eax, 6
jmp 0x47185c
test al, 0x10
jne 0x4717cf
and eax, 0xf
mov edx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
jmp 0x471856
test al, 8
jne 0x4717f2
and eax, 7
mov edx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
jmp 0x471856
test al, 4
jne 0x471821
and eax, 3
mov edx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
jmp 0x471856
and eax, 1
mov edx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [esi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
cmp ecx, 0x24
je 0x471889
cmp ecx, 0x40
je 0x471889
cmp ecx, 0x60
je 0x471889
cmp ecx, 0xa0
jb 0x47187d
cmp ecx, 0xd7ff
jbe 0x471889
cmp ecx, 0xe000
jae 0x471889
xor eax, eax
jmp 0x47188e
mov eax, 1
cmp eax, dword [ebp - 0x160]
je 0x471363
mov eax, dword [ebp - 0x120]
add esi, edx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x471770
jmp 0x471363
cmp edx, 0x16
jne 0x471c59
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge 0x471bf5
mov eax, dword [edx + 0x78]
mov dword [ebp - 0x13c], eax
cmp esi, eax
jae 0x471bcd
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x164], edx
je 0x471a23
cmp edx, 0xc0
jb 0x471a23
mov al, byte [esi]
test dl, 0x20
jne 0x47191d
and ebx, 0x1f
movzx eax, al
inc esi
shl ebx, 6
jmp 0x471a1e
lea ecx, [esi + 1]
test dl, 0x10
jne 0x471941
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x471a1e
movzx eax, al
and eax, 0x3f
test dl, 8
jne 0x471976
mov ebx, dword [ebp - 0x164]
lea edx, [esi + 2]
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x471a1e
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x4719b3
mov ebx, dword [ebp - 0x164]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x471a1e
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x164]
mov dword [ebp - 0x144], ebx
and dword [ebp - 0x144], 1
shl dword [ebp - 0x144], 6
or dword [ebp - 0x144], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x144], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x144]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x144], ecx
mov ebx, ecx
and eax, 0x3f
or ebx, eax
mov ecx, dword [ebp - 0x13c]
mov eax, ebx
shr eax, 7
and ebx, 0x7f
mov edi, esi
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx ebx, byte [eax*8 + 0x62762a]
cmp edi, ecx
jae 0x471b86
nop word [eax + eax]
cmp dword [ebp - 0x12c], 0
mov edi, 1
movzx edx, byte [esi]
je 0x471b37
cmp edx, 0xc0
jb 0x471b37
test dl, 0x20
jne 0x471a97
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x471b2f
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x471ab9
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x471b2f
and eax, 0x3f
test dl, 8
jne 0x471ad9
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x471b2f
test dl, 4
jne 0x471b02
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x471b2f
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x628de8]
movzx ecx, byte [eax*8 + 0x62762a]
mov eax, dword [ebp - 0x15c]
shl eax, cl
test dword [ebx*4 + 0x624f48], eax
je 0x471b80
mov ebx, ecx
add esi, edi
mov ecx, dword [ebp - 0x13c]
cmp esi, ecx
jb 0x471a60
jmp 0x471b86
mov ecx, dword [ebp - 0x13c]
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x471bb2
cmp esi, ecx
jb 0x471bb2
cmp esi, dword [edx + 0x84]
jbe 0x471bb2
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov eax, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x4718d1
jmp 0x471bef
mov eax, dword [edx + 0x88]
test eax, eax
je 0x471bef
cmp esi, dword [edx + 0x84]
jbe 0x471bef
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x124]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
jbe 0x46d40e
nop word [eax + eax]
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x12c]
dec esi
test ecx, ecx
jne 0x47319a
movzx edx, byte [esi]
jmp 0x47325c
cmp dword [ebp - 0x12c], 0
lea eax, [edx - 6]
je 0x472ae4
cmp eax, 0xf
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477490]
cmp ecx, edi
jge 0x47215b
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x471d5f
mov edx, dword [edx + 0x18]
test edx, edx
je 0x471cc4
mov edi, dword [ebp - 0x118]
mov ecx, esi
push dword [ebp - 0x12c]
add edi, 0x1c
push edi
push eax
call fcn.00478f90
add esp, 0xc
test eax, eax
jne 0x47215b
mov edx, dword [ebp - 0x118]
jmp 0x471cf2
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx + 0x1c]
lea edi, [edx + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x471cf2
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x471cf2
cmp ecx, 1
je 0x47215b
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je 0x47215b
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x471d26
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x471d26
cmp dword [edx + 0x18], 0
jne 0x471d26
cmp dword [edi], 2
jne 0x471d26
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x471d26
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x471d41
mov ecx, esi
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x471d41
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x471d30
mov eax, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x471c81
jmp 0x47215b
mov eax, dword [edx + 0x88]
test eax, eax
je 0x47215b
cmp esi, dword [edx + 0x84]
jbe 0x47215b
jmp 0x471e00
mov edx, dword [ebp - 0x118]
cmp edi, 0x7fffffff
jge 0x471de3
cmp ecx, edi
jge 0x472161
mov edi, dword [edx + 0x78]
mov eax, dword [ebp - 0x130]
nop dword [eax]
cmp esi, edi
jae 0x471de6
mov edx, dword [edx + 0x78]
inc esi
cmp esi, edx
jae 0x471dcd
mov ecx, esi
nop
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x471dc1
lea esi, [ecx + 1]
mov ecx, esi
cmp esi, edx
jb 0x471db0
mov ecx, dword [ebp - 0x120]
mov eax, dword [ebp - 0x130]
mov edx, dword [ebp - 0x118]
inc ecx
mov dword [ebp - 0x120], ecx
cmp ecx, eax
jl 0x471da0
jmp 0x472161
mov esi, dword [edx + 0x78]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x472161
cmp esi, dword [edx + 0x84]
jbe 0x472161
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x472161
mov edx, dword [ebp - 0x118]
sub edi, ecx
mov ecx, dword [edx + 0x78]
mov eax, ecx
sub eax, esi
cmp edi, eax
jbe 0x471e40
mov eax, dword [edx + 0x88]
mov esi, ecx
test eax, eax
je 0x472161
cmp ecx, dword [edx + 0x84]
jmp 0x471dfa
add esi, edi
jmp 0x472161
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x471fd6
movzx edx, byte [esi]
mov eax, 1
cmp edx, 0xc0
jb 0x471f65
test dl, 0x20
jne 0x471e92
movzx eax, byte [esi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x471f65
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x471ebc
movzx eax, byte [esi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x471f5f
test dl, 8
jne 0x471eeb
movzx eax, byte [esi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 4
jmp 0x471f5f
test dl, 4
jne 0x471f23
movzx eax, byte [esi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 5
jmp 0x471f5f
and edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
mov ecx, dword [ebp - 0x120]
cmp edx, 0xd
jne 0x471f7b
inc esi
cmp esi, edi
jae 0x47215b
cmp byte [esi], 0xa
jne 0x471fbe
inc esi
jmp 0x471fbe
cmp edx, 0xa
je 0x471fbc
mov ebx, dword [ebp - 0x118]
cmp dword [ebx + 0x68], 0
mov ebx, dword [ebp - 0x124]
jne 0x47215b
cmp edx, 0xb
je 0x471fbc
cmp edx, 0xc
je 0x471fbc
cmp edx, 0x85
je 0x471fbc
cmp edx, 0x2028
je 0x471fbc
cmp edx, 0x2029
jne 0x47215b
add esi, eax
inc ecx
mov dword [ebp - 0x120], ecx
cmp ecx, dword [ebp - 0x130]
jl 0x471e58
jmp 0x47215b
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x472161
cmp esi, dword [edx + 0x84]
jbe 0x472161
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x472161
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov ebx, dword [eax + 0x78]
nop dword [eax]
mov edi, 1
cmp esi, ebx
jae 0x47223a
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x4720f2
test dl, 0x20
jne 0x472052
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x4720ea
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x472074
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x4720ea
and eax, 0x3f
test dl, 8
jne 0x472094
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4720ea
test dl, 4
jne 0x4720bd
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4720ea
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x2000
ja 0x472205
je case.0x472229.8193
cmp edx, 0xa0
ja 0x4721f2
je case.0x472229.8193
cmp edx, 9
je case.0x472229.8193
cmp edx, 0x20
je case.0x472229.8193
xor ecx, ecx
xor eax, eax
cmp dword [ebp - 0x134], 0x12
sete al
cmp ecx, eax
je 0x472155
mov eax, dword [ebp - 0x120]
add esi, edi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472020
mov ebx, dword [ebp - 0x124]
mov edx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
jbe 0x46d40e
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
jne 0x4721c0
mov al, byte [esi - 1]
dec esi
and al, 0xc0
mov ecx, esi
cmp al, 0x80
je 0x4721b4
cmp dword [ebp - 0x134], 0x11
jne 0x4721db
cmp ecx, ebx
jbe 0x4721db
cmp byte [esi], 0xa
jne 0x4721db
cmp byte [esi - 1], 0xd
jne 0x4721db
lea esi, [ecx - 1]
mov edx, dword [ebp - 0x118]
cmp esi, ebx
ja 0x472176
mov edi, dword [ebp - 0x11c]
mov ebx, edx
jmp 0x46d41a
cmp edx, 0x1680
je case.0x472229.8193
cmp edx, 0x180e
jmp 0x472122
cmp edx, 0x3000
ja case.0x472229.8203
je case.0x472229.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x472229.8203
movzx eax, byte [edx + 0x4774d8]
jmp dword [eax*4 + 0x4774d0]
mov ecx, 1
jmp 0x47212a
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x47225e
cmp esi, dword [edx + 0x84]
jbe 0x47225e
mov dword [edx + 0x64], edi
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x124]
jmp 0x472161
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov ebx, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, ebx
jae 0x4723b5
movzx edx, byte [esi]
mov edi, 1
cmp edx, 0xc0
jb 0x472352
test dl, 0x20
jne 0x4722b2
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x47234a
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4722d4
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x47234a
and eax, 0x3f
test dl, 8
jne 0x4722f4
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x47234a
test dl, 4
jne 0x47231d
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x47234a
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x85
ja 0x47236b
je case.0x472364.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x472364
jmp dword [edx*4 + 0x477538]
sub edx, 0x2028
je case.0x472364.10
sub edx, 1
je case.0x472364.10
xor ecx, ecx
jmp 0x472381
mov ecx, 1
xor eax, eax
cmp dword [ebp - 0x134], 0x14
sete al
cmp ecx, eax
je 0x472155
mov eax, dword [ebp - 0x120]
add esi, edi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472280
jmp 0x472155
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je 0x47225e
cmp esi, dword [edx + 0x84]
jbe 0x47225e
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x124]
jmp 0x472161
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x471fd6
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4724d9
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x47243d
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4724d5
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x472458
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4724cf
and eax, 0x3f
test dl, 8
jne 0x472478
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4724cf
test dl, 4
jne 0x4724a1
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4724cf
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x4724f3
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jne 0x47215b
mov eax, dword [ebp - 0x120]
add esi, ecx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472401
jmp 0x47215b
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x471fd6
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x4725fc
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x472560
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x4725f8
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x47257b
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4725f2
and eax, 0x3f
test dl, 8
jne 0x47259b
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x4725f2
test dl, 4
jne 0x4725c4
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x4725f2
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x47215b
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
je 0x47215b
mov eax, dword [ebp - 0x120]
add esi, ecx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472524
jmp 0x47215b
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop dword [eax + eax]
cmp esi, edi
jae 0x471fd6
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x472728
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x47268c
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x472724
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4726a7
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x47271e
and eax, 0x3f
test dl, 8
jne 0x4726c7
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x47271e
test dl, 4
jne 0x4726f0
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x47271e
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x472742
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jne 0x47215b
mov eax, dword [ebp - 0x120]
add esi, ecx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472650
jmp 0x47215b
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x471fd6
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x47284b
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4727af
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x472847
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4727ca
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x472841
and eax, 0x3f
test dl, 8
jne 0x4727ea
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x472841
test dl, 4
jne 0x472813
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x472841
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x47215b
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
je 0x47215b
mov eax, dword [ebp - 0x120]
add esi, ecx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472773
jmp 0x47215b
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
nop word [eax + eax]
cmp esi, edi
jae 0x471fd6
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x472978
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4728dc
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x472974
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x4728f7
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x47296e
and eax, 0x3f
test dl, 8
jne 0x472917
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x47296e
test dl, 4
jne 0x472940
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x47296e
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x472992
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jne 0x47215b
mov eax, dword [ebp - 0x120]
add esi, ecx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x4728a0
jmp 0x47215b
cmp ecx, edi
jge 0x47215b
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x78]
cmp esi, edi
jae 0x472ad9
movzx edx, byte [esi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x472a9b
movzx ecx, byte [esi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4729ff
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x472a97
movzx eax, byte [esi + 2]
test dl, 0x10
jne 0x472a1a
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x472a91
and eax, 0x3f
test dl, 8
jne 0x472a3a
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x472a91
test dl, 4
jne 0x472a63
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x472a91
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x47215b
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
je 0x47215b
mov eax, dword [ebp - 0x120]
add esi, ecx
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x4729c3
jmp 0x47215b
mov edx, dword [ebp - 0x118]
jmp 0x471de6
cmp eax, 0xf
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477548]
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge case.0x472dbc.10
mov eax, dword [edx + 0x78]
cmp esi, eax
jae 0x472c33
mov edx, dword [edx + 0x18]
test edx, edx
je 0x472b3b
mov edi, dword [ebp - 0x118]
mov ecx, esi
push 0
add edi, 0x1c
push edi
push eax
call fcn.00478f90
add esp, 0xc
test eax, eax
jne 0x472baf
mov edx, dword [ebp - 0x118]
jmp 0x472b61
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx + 0x1c]
lea edi, [edx + 0x1c]
sub eax, ecx
cmp esi, eax
ja 0x472b61
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x472b61
cmp ecx, 1
je 0x472baf
mov al, byte [esi + 1]
cmp al, byte [edx + 0x35]
je 0x472baf
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x472b95
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb 0x472b95
cmp dword [edx + 0x18], 0
jne 0x472b95
cmp dword [edi], 2
jne 0x472b95
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne 0x472b95
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, dword [ebp - 0x130]
jl 0x472b02
mov edx, dword [ebp - 0x118]
cmp dword [ebp - 0x158], 0
jne 0x468baa
cmp esi, ebx
je 0x46d40e
nop word [eax + eax]
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
push eax
push dword [ebp - 0x148]
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
dec esi
cmp dword [ebp - 0x134], 0x11
jne 0x472c1c
cmp esi, ebx
jbe 0x472c1e
cmp byte [esi], 0xa
jne 0x472c1c
cmp byte [esi - 1], 0xd
jne 0x472c1c
dec esi
cmp esi, ebx
mov edx, dword [ebp - 0x118]
jne 0x472bd0
mov edi, dword [ebp - 0x11c]
mov ebx, edx
jmp 0x46d41a
mov eax, dword [edx + 0x88]
test eax, eax
je 0x472baf
cmp esi, dword [edx + 0x84]
jbe 0x472baf
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp 0x472baf
mov edx, dword [ebp - 0x118]
sub edi, ecx
mov ecx, dword [edx + 0x78]
mov eax, ecx
sub eax, esi
cmp edi, eax
jbe 0x472c90
mov eax, dword [edx + 0x88]
mov esi, ecx
test eax, eax
je case.0x472dbc.10
cmp ecx, dword [edx + 0x84]
jmp 0x472e8d
add esi, edi
jmp case.0x472dbc.10
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge case.0x472dbc.10
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x472e79
mov al, byte [esi]
cmp al, 0xd
jne 0x472cc6
inc esi
cmp esi, ecx
jae case.0x472dbc.10
cmp byte [esi], 0xa
jne 0x472ce5
jmp 0x472ce4
cmp al, 0xa
je 0x472ce4
cmp dword [edx + 0x68], 0
jne case.0x472dbc.10
cmp al, 0xb
je 0x472ce4
cmp al, 0xc
je 0x472ce4
cmp al, 0x85
jne case.0x472dbc.10
inc esi
mov eax, dword [ebp - 0x120]
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
jl 0x472ca8
jmp case.0x472dbc.10
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge case.0x472dbc.10
mov ecx, dword [edx + 0x78]
nop dword [eax]
cmp esi, ecx
jae 0x472e79
mov al, byte [esi]
cmp al, 9
je case.0x472dbc.10
cmp al, 0x20
je case.0x472dbc.10
cmp al, 0xa0
je case.0x472dbc.10
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
jl 0x472d10
jmp case.0x472dbc.10
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge case.0x472dbc.10
mov ecx, dword [edx + 0x78]
nop word [eax + eax]
cmp esi, ecx
jae 0x472e79
mov al, byte [esi]
cmp al, 9
je 0x472d7a
cmp al, 0x20
je 0x472d7a
cmp al, 0xa0
jne case.0x472dbc.10
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
jl 0x472d60
jmp case.0x472dbc.10
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge case.0x472dbc.10
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x472e79
movzx eax, byte [esi]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x472dbc.14
movzx eax, byte [eax + 0x477590]
jmp dword [eax*4 + 0x477588]
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
jl 0x472da2
jmp case.0x472dbc.10
mov edx, dword [ebp - 0x118]
cmp ecx, edi
jge case.0x472dbc.10
mov ecx, dword [edx + 0x78]
nop dword [eax + eax]
cmp esi, ecx
jae 0x472e79
movzx eax, byte [esi]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x472dbc.10
movzx eax, byte [eax + 0x477614]
jmp dword [eax*4 + 0x47760c]
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
jl 0x472df0
jmp case.0x472dbc.10
cmp ecx, edi
jge 0x472baf
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x472e73
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
jne 0x472baf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
mov eax, dword [ebp - 0x118]
jl 0x472e40
mov edx, eax
jmp case.0x472dbc.10
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je case.0x472dbc.10
cmp esi, dword [edx + 0x84]
jbe case.0x472dbc.10
mov dword [edx + 0x64], 1
cmp eax, 1
jg 0x4739cf
jmp case.0x472dbc.10
cmp ecx, edi
jge 0x472baf
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x472e73
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 4
je 0x472baf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
mov eax, dword [ebp - 0x118]
jl 0x472ec0
mov edx, eax
jmp case.0x472dbc.10
cmp ecx, edi
jge 0x472baf
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x472e73
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
jne 0x472baf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
mov eax, dword [ebp - 0x118]
jl 0x472f04
mov edx, eax
jmp case.0x472dbc.10
cmp ecx, edi
jge 0x472baf
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
nop dword [eax]
cmp esi, edx
jae 0x472e73
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 1
je 0x472baf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
mov eax, dword [ebp - 0x118]
jl 0x472f50
mov edx, eax
jmp case.0x472dbc.10
cmp ecx, edi
jge 0x472baf
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x472e73
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
jne 0x472baf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
mov eax, dword [ebp - 0x118]
jl 0x472f98
mov edx, eax
jmp case.0x472dbc.10
cmp ecx, edi
jge 0x472baf
mov eax, dword [ebp - 0x118]
mov edx, dword [eax + 0x78]
cmp esi, edx
jae 0x472e73
movzx ecx, byte [esi]
mov eax, dword [eax + 0x40]
test byte [ecx + eax], 0x10
je 0x472baf
mov eax, dword [ebp - 0x120]
inc esi
inc eax
mov dword [ebp - 0x120], eax
cmp eax, edi
mov eax, dword [ebp - 0x118]
jl 0x472fe0
mov edx, eax
jmp case.0x472dbc.10
mov eax, dword [ebp + 0x18]
inc eax
cmp byte [edi], 0x7a
push eax
push dword [ebp - 0x148]
jne 0x473059
push dword [ebp - 0x118]
push ecx
push edx
lea edx, [edi + 3]
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x128]
mov edi, ebx
mov dword [ebp - 0x11c], edi
jmp 0x46d414
mov ebx, dword [ebp - 0x118]
push ebx
push ecx
push edx
mov edx, dword [ebp - 0x128]
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov edi, dword [ebp - 0x11c]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x46d41a
cmp al, 0x7a
mov eax, dword [ebp + 0x18]
jne 0x4730dd
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push edx
push dword [ebp - 0x140]
lea edx, [edi + 3]
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov al, byte [ebx]
cmp al, 0x81
je 0x4736a0
cmp al, 0x88
jae 0x473666
mov edi, ebx
mov dword [ebp - 0x11c], edi
jmp 0x46d414
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push edx
push dword [ebp - 0x140]
mov edx, ebx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc1b
jne 0x473117
mov ecx, dword [ebp - 0x118]
cmp dword [ecx + 0xb4], ebx
jne case.default.0x4694ab
jmp 0x473125
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x118]
cmp byte [ebx], 0x81
je 0x4736e4
mov edi, dword [ebp - 0x11c]
add edi, 3
mov dword [ebp - 0x11c], edi
jmp 0x46d414
cmp esi, ebx
je 0x46d40e
nop word [eax + eax]
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x118]
dec esi
cmp esi, ebx
jne 0x473150
mov edi, dword [ebp - 0x11c]
mov ebx, ecx
jmp 0x46d41a
mov al, byte [esi]
and al, 0xc0
cmp al, 0x80
jne 0x4731ac
mov al, byte [esi - 1]
dec esi
and al, 0xc0
cmp al, 0x80
je 0x4731a2
movzx edx, byte [esi]
cmp edx, 0xc0
jb 0x47325c
test dl, 0x20
jne 0x4731cc
movzx eax, byte [esi + 1]
and edx, 0x1f
jmp 0x473254
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4731e6
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x47324e
and eax, 0x3f
test dl, 8
jne 0x473201
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x47324e
test dl, 4
jne 0x473225
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x47324e
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
mov ecx, dword [ebp - 0x12c]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x628de8]
movzx ebx, byte [eax*8 + 0x62762a]
cmp esi, dword [ebp - 0x124]
jbe 0x46d40e
lea edi, [esi - 1]
test ecx, ecx
jne 0x47329b
movzx edx, byte [edi]
jmp 0x47335a
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x4732ad
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x4732a3
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x47335a
test dl, 0x20
jne 0x4732cd
movzx eax, byte [edi + 1]
and edx, 0x1f
jmp 0x473352
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4732ea
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x473352
and eax, 0x3f
test dl, 8
jne 0x473305
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x473352
test dl, 4
jne 0x473329
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x473352
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov ecx, ebx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x628de8]
movzx edx, byte [eax*8 + 0x62762a]
mov eax, dword [ebp - 0x15c]
shl eax, cl
test dword [edx*4 + 0x624f48], eax
je 0x4733a0
mov ecx, dword [ebp - 0x12c]
mov esi, edi
mov ebx, edx
jmp 0x473280
mov edx, dword [ebp - 0x118]
jmp 0x471c10
mov eax, dword [ebp - 0x11c]
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov dword [ebp - 0x13c], edx
lea eax, [edx + edx]
mov dword [ebp - 0x150], eax
cmp eax, dword [ebx + 0x14]
jl 0x476606
cmp edi, 0x88
jae 0x47341c
cmp edi, 0x81
je 0x47341c
cmp dword [ebx + 0x6c], 0
mov edi, dword [ebp - 0x11c]
jne 0x47342c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edi], 0x77
je 0x47342c
movzx eax, byte [edi]
movzx eax, byte [eax + 0x624e60]
add edi, eax
mov dword [ebp - 0x11c], edi
jmp 0x46d41a
mov edi, dword [ebp - 0x11c]
mov dword [ebx + 0x98], 2
mov ecx, dword [ebp - 0x118]
mov ebx, dword [ebx + 0xac]
mov eax, dword [ecx + 0x90]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [edi]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, edi
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc20
jne 0x4734b0
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
mov ecx, dword [ebp - 0x118]
add eax, edx
cmp dword [ecx + 0x7c], eax
jae case.default.0x4694ab
cmp byte [edx], 0x77
je 0x4734be
cmp byte [eax], 0x77
jne case.default.0x4694ab
jmp 0x4734be
test edi, edi
jne 0x476795
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x118]
add edx, ecx
mov dword [ebp - 0x11c], edx
mov dword [eax + 0xac], ebx
cmp byte [edx], 0x77
jne case.default.0x46af0a
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x14c]
mov edi, dword [ebp - 0x124]
mov dword [ebx + 0x90], eax
jmp case.0x468bee.129
mov ecx, dword [ebp - 0x11c]
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
movzx edx, byte [ecx + 1]
push ebx
push dword [ebp - 0x138]
movzx eax, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add eax, ecx
mov ecx, esi
add edx, eax
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov eax, dword [ebp - 0x11c]
add eax, 2
mov dword [ebx + 0x7c], eax
mov eax, 0xfffffc1f
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, edi
sub eax, 1
je case.default.0x46af0a
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
cmp edi, 0xfffffc19
je case.default.0x46af0a
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, 0xffffffe6
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0xa4]
mov dword [edx + 0xa4], eax
mov eax, dword [ebp - 0x9c]
lea ecx, [ebp - 0x8c]
cmp eax, ecx
je case.default.0x46af0a
push eax
call fcn.0045eb00
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x9c]
lea ecx, [ebp - 0x8c]
cmp eax, ecx
je case.default.0x4694ab
push eax
call fcn.0045eb00
add esp, 4
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, 0xfffffffa
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x140]
mov dword [ecx + 0x80], esi
mov dword [ecx + 0x7c], eax
mov eax, dword [ebp - 0x15c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov edx, ebx
inc eax
mov ecx, esi
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
add esp, 0x14
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov edx, ebx
inc eax
mov ecx, esi
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x469f9c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
lea edx, [edx + 3]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x469f9c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x140]
mov dword [ecx + 0x7c], eax
mov eax, 0xfffffc1a
mov dword [ecx + 0x80], esi
mov dword [ecx + 0x8c], edx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x118]
mov ecx, dword [ebp - 0x138]
mov dword [eax + 0x80], esi
mov dword [eax + 0x8c], ecx
mov ecx, dword [ebp - 0x140]
mov dword [eax + 0x7c], ecx
mov eax, dword [ebp - 0x15c]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax + 0x88]
test ecx, ecx
je case.default.0x46af0a
mov edx, dword [ebp - 0x118]
lea eax, [esi + 1]
cmp eax, dword [edx + 0x78]
jb case.default.0x46af0a
cmp dword [edx + 0x18], 0
jne case.default.0x46af0a
cmp dword [edx + 0x1c], 2
jne case.default.0x46af0a
mov al, byte [esi]
cmp al, byte [edx + 0x34]
jne case.default.0x46af0a
cmp ecx, 1
jmp 0x4739c2
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [ebx + 0x84]
jbe case.default.0x46af0a
mov dword [ebx + 0x64], 1
cmp eax, 1
jmp 0x4739c9
mov ecx, dword [ebp - 0x118]
cmp eax, 0xfffffffe
jne 0x473811
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [ecx + 0x78]
jb case.default.0x46af0a
cmp esi, dword [ecx + 0x84]
jbe case.default.0x46af0a
mov dword [ecx + 0x64], 1
cmp eax, 1
jmp 0x4739c9
cmp eax, 0xfffffffe
jne 0x47384b
mov esi, dword [edi + 0x78]
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [edi + 0x78]
jb case.default.0x46af0a
cmp esi, dword [edi + 0x84]
jbe case.default.0x46af0a
mov dword [edi + 0x64], 1
cmp eax, 1
jmp 0x4739c9
mov dword [ebp - 0x14c], esi
cmp ebx, eax
jge 0x473900
nop dword [eax + eax]
push dword [ebp - 0x13c]
mov ecx, edi
push dword [ebp - 0x118]
push edx
mov edx, esi
call fcn.00468760
add esp, 0xc
test eax, eax
js 0x4738c0
mov edx, dword [ebp - 0x144]
inc ebx
add esi, eax
cmp ebx, dword [ebp - 0x128]
jl 0x473890
jmp 0x4738f0
cmp eax, 0xfffffffe
jne 0x4738f0
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx + 0x88]
test ecx, ecx
je 0x4738f0
mov eax, dword [edx + 0x78]
cmp eax, dword [edx + 0x84]
jbe 0x4738f0
mov dword [edx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov ebx, dword [ebp - 0x14c]
cmp esi, ebx
jb case.default.0x46af0a
jmp 0x473910
mov ebx, dword [ebp - 0x14c]
nop word [eax + eax]
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
sub esi, dword [ebp - 0x144]
cmp esi, ebx
jae 0x473910
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x118]
cmp eax, 0xfffffffe
jne 0x473970
mov esi, dword [ecx + 0x78]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [ecx + 0x78]
jb case.default.0x46af0a
cmp esi, dword [ecx + 0x84]
jbe case.default.0x46af0a
mov dword [ecx + 0x64], 1
cmp eax, 1
jmp 0x4739c9
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [edx + 0x84]
jbe case.default.0x46af0a
cmp eax, 1
mov dword [edx + 0x64], 1
jle case.default.0x46af0a
mov eax, 0xfffffff4
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
cmp esi, ebx
jb case.default.0x46af0a
nop dword [eax]
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x118]
dec esi
cmp esi, ebx
jae 0x4739f0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
cmp dword [ebp - 0x12c], 0
push eax
push dword [ebp - 0x148]
je 0x473c44
mov ebx, dword [ebp - 0x118]
mov edx, dword [ebp - 0x11c]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov edx, dword [ebp - 0x130]
cmp edx, dword [ebp - 0x134]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x13c], ebx
cmp ebx, 0xc0
jb 0x473bc4
test bl, 0x20
jne 0x473ad1
movzx ecx, byte [esi]
mov eax, ebx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov ebx, ecx
or ebx, eax
inc esi
jmp 0x473bc4
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x473afc
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edx
add esi, 2
shl ebx, 6
or ebx, eax
jmp 0x473bbe
lea edx, [esi + 2]
test bl, 8
jne 0x473b30
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x473bbe
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test bl, 4
jne 0x473b6c
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
and eax, 0x3f
or ebx, eax
jmp 0x473bbe
and dword [ebp - 0x13c], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x13c], 6
add esi, 5
or eax, dword [ebp - 0x13c]
movzx ebx, byte [ebx]
shl eax, 6
and ebx, 0x3f
mov dword [ebp - 0x14c], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x14c]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edi]
shl ecx, 6
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
mov edx, dword [ebp - 0x130]
cmp ebx, 0xff
jbe 0x473bd5
cmp dword [ebp - 0x124], 0x6e
jmp 0x473bee
mov eax, dword [ebp - 0x15c]
mov ecx, ebx
and ecx, 7
shr ebx, 3
shl eax, cl
mov ecx, dword [ebp - 0x128]
test byte [ebx + ecx], al
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc edx
mov ebx, dword [ebp - 0x118]
inc eax
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x130], edx
mov ecx, esi
mov edx, dword [ebp - 0x11c]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x473a83
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
push dword [ebp - 0x118]
mov edx, ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x130]
cmp ebx, dword [ebp - 0x134]
jge case.default.0x46af0a
mov edi, dword [ebp - 0x118]
cmp esi, dword [edi + 0x78]
jae 0x473cea
movzx edx, byte [esi]
inc esi
mov eax, dword [ebp - 0x15c]
mov ecx, edx
and ecx, 7
shr edx, 3
shl eax, cl
mov ecx, dword [ebp - 0x128]
test byte [edx + ecx], al
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push edi
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x473c70
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x46af0a
jmp 0x473862
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x46af0a
jmp 0x473828
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax + eax]
mov edi, dword [ebp - 0x128]
cmp edi, dword [ebp - 0x124]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx ebx, byte [esi]
inc esi
mov edx, dword [ebp - 0x12c]
test edx, edx
je 0x473e4f
cmp ebx, 0xc0
jb 0x473e4f
test bl, 0x20
jne 0x473da2
movzx eax, byte [esi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
inc esi
jmp 0x473e4f
movzx ecx, byte [esi]
movzx eax, byte [esi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x473dc9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add esi, 2
jmp 0x473e4f
test bl, 8
jne 0x473dec
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 3
jmp 0x473e4f
test bl, 4
jne 0x473e1b
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 4
jmp 0x473e4f
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [esi + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 3]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [esi + 4]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add esi, 5
push edx
mov edx, dword [ebp - 0x14c]
mov ecx, ebx
call fcn.00478840
add esp, 4
test eax, eax
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc edi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
mov ecx, esi
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x128], edi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x473d50
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, edi
jb case.default.0x46af0a
jmp 0x4737e8
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [ecx + 0x78]
jb case.default.0x46af0a
cmp esi, dword [ecx + 0x84]
jbe case.default.0x46af0a
mov dword [ecx + 0x64], 1
cmp eax, 1
jmp 0x4739c9
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov eax, dword [ebp - 0x130]
cmp dword [ebp - 0x124], eax
jge case.default.0x46af0a
mov ebx, dword [ebx + 0x78]
mov eax, ebx
mov edi, dword [ebp - 0x134]
sub eax, edi
cmp esi, eax
ja 0x473fc1
mov edx, dword [ebp - 0x164]
mov ecx, esi
sub edi, 4
jb 0x473f84
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x473f89
add ecx, 4
add edx, 4
sub edi, 4
jae 0x473f73
cmp edi, 0xfffffffc
je 0x473fb6
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x473fc1
cmp edi, 0xfffffffd
je 0x473fb6
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x473fc1
cmp edi, 0xfffffffe
je 0x473fb6
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x473fc1
cmp edi, 0xffffffff
je 0x473fb6
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x473fc1
add esi, dword [ebp - 0x134]
jmp 0x474036
mov edi, dword [ebp - 0x128]
test edi, edi
jle 0x474085
mov eax, ebx
sub eax, edi
cmp esi, eax
ja 0x474085
lea edx, [ebp - 0x10]
mov ecx, esi
sub edi, 4
jb 0x473ff6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x473ffb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x473fe5
cmp edi, 0xfffffffc
je 0x474030
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x474085
cmp edi, 0xfffffffd
je 0x474030
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x474085
cmp edi, 0xfffffffe
je 0x474030
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x474085
cmp edi, 0xffffffff
je 0x474030
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x474085
add esi, dword [ebp - 0x128]
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
inc dword [ebp - 0x124]
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x473f43
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, ebx
jmp 0x473eea
mov ecx, dword [ebp - 0x118]
mov eax, dword [ecx + 0x88]
test eax, eax
je case.default.0x46af0a
jmp 0x473ef0
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax + eax]
mov ecx, dword [ebp - 0x124]
cmp ecx, dword [ebp - 0x130]
jge case.default.0x46af0a
mov edx, dword [ebp - 0x118]
cmp esi, dword [edx + 0x78]
jae 0x4739a5
movzx eax, byte [esi]
cmp ebx, eax
je 0x474124
cmp dword [ebp - 0x14c], eax
jne case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ecx
inc eax
mov dword [ebp - 0x124], ecx
push eax
push dword [ebp - 0x148]
inc esi
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x4740f0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x88]
test eax, eax
je case.default.0x46af0a
cmp esi, dword [edi + 0x84]
jbe case.default.0x46af0a
mov dword [edi + 0x64], 1
cmp eax, 1
jmp 0x4739c9
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax + eax]
mov ecx, dword [ebp - 0x124]
cmp ecx, dword [ebp - 0x130]
jge case.default.0x46af0a
mov edx, dword [ebp - 0x118]
cmp esi, dword [edx + 0x78]
jae 0x4739a5
movzx eax, byte [esi]
inc esi
cmp ebx, eax
jne case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ecx
inc eax
mov dword [ebp - 0x124], ecx
push eax
push dword [ebp - 0x148]
mov ecx, esi
push edx
push dword [ebp - 0x138]
mov edx, dword [ebp - 0x11c]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x4741d0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
add esp, 0x14
mov edi, eax
cmp dword [ebp - 0x12c], 0
je 0x474442
test edi, edi
jne case.default.0x4694ab
nop word [eax + eax]
mov eax, dword [ebp - 0x130]
cmp eax, dword [ebp - 0x120]
jge case.default.0x46af0a
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x128], ebx
cmp ebx, 0xc0
jb 0x4743e0
test bl, 0x20
jne 0x4742e4
movzx ecx, byte [esi]
mov eax, ebx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov ebx, ecx
or ebx, eax
inc esi
jmp 0x4743d4
mov al, byte [esi]
lea ecx, [esi + 1]
test bl, 0x10
jne 0x47430a
and ebx, 0xf
movzx edx, al
movzx eax, byte [ecx]
and edx, 0x3f
shl ebx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x4743cf
lea edx, [esi + 2]
test bl, 8
jne 0x474339
and ebx, 7
movzx edi, al
movzx eax, byte [ecx]
and edi, 0x3f
shl ebx, 6
and eax, 0x3f
or ebx, edi
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4743cf
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test bl, 4
jne 0x474370
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4743cf
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x128]
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
mov dword [ebp - 0x128], ebx
and eax, 0x3f
shl dword [ebp - 0x128], 6
mov ecx, dword [ebp - 0x128]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x128], ecx
mov ebx, ecx
and eax, 0x3f
or ebx, eax
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x118]
cmp dword [ebp - 0x134], ebx
je case.default.0x46af0a
cmp dword [ebp - 0x13c], ebx
je case.default.0x46af0a
mov edx, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x130], eax
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474290
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x130]
cmp ebx, dword [ebp - 0x120]
jge case.default.0x46af0a
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx eax, byte [esi]
cmp dword [ebp - 0x134], eax
je case.default.0x46af0a
cmp dword [ebp - 0x13c], eax
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474450
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov edx, ecx
inc eax
mov ecx, esi
push eax
push dword [ebp - 0x148]
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
add esp, 0x14
mov edi, eax
cmp dword [ebp - 0x12c], 0
je 0x4746aa
test edi, edi
jne case.default.0x4694ab
nop word [eax + eax]
mov eax, dword [ebp - 0x130]
cmp eax, dword [ebp - 0x120]
jge case.default.0x46af0a
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx ebx, byte [esi]
inc esi
mov dword [ebp - 0x128], ebx
cmp ebx, 0xc0
jb 0x474654
test bl, 0x20
jne 0x474564
movzx ecx, byte [esi]
mov eax, ebx
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
mov ebx, ecx
or ebx, eax
inc esi
jmp 0x474648
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test bl, 0x10
jne 0x47458a
and ebx, 0xf
add esi, 2
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x474643
lea edx, [esi + 2]
test bl, 8
jne 0x4745b3
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x474643
lea edi, [esi + 3]
test bl, 4
jne 0x4745e4
and ebx, 3
add esi, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x474643
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x128]
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
mov dword [ebp - 0x128], ebx
and eax, 0x3f
shl dword [ebp - 0x128], 6
mov ecx, dword [ebp - 0x128]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x128], ecx
mov ebx, ecx
and eax, 0x3f
or ebx, eax
mov eax, dword [ebp - 0x130]
mov ecx, dword [ebp - 0x118]
cmp dword [ebp - 0x134], ebx
je case.default.0x46af0a
mov edx, dword [ebp - 0x11c]
inc eax
mov dword [ebp - 0x130], eax
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474510
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x130]
nop dword [eax + eax]
cmp ebx, dword [ebp - 0x120]
jge case.default.0x46af0a
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x134], eax
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ebx
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x4746c0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
test eax, eax
js 0x475b80
cmp eax, 0xa
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477690]
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop word [eax + eax]
mov ecx, dword [ebp - 0x120]
cmp ecx, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx eax, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
je 0x4747d4
cmp eax, 0xc0
jb 0x4747d4
test al, 0x20
jne 0x4747b6
inc esi
jmp 0x4747d4
test al, 0x10
jne 0x4747bf
add esi, 2
jmp 0x4747d4
test al, 8
jne 0x4747c8
add esi, 3
jmp 0x4747d4
test al, 4
jne 0x4747d1
add esi, 4
jmp 0x4747d4
add esi, 5
cmp dword [ebp - 0x160], 0
jne case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ecx
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], ecx
mov ecx, esi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474780
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax]
mov ecx, dword [ebp - 0x120]
cmp ecx, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x128], edx
je 0x4749b5
cmp edx, 0xc0
jb 0x4749b5
mov al, byte [esi]
test dl, 0x20
jne 0x4748b6
and ebx, 0x1f
movzx eax, al
inc esi
shl ebx, 6
jmp 0x4749b0
lea ecx, [esi + 1]
test dl, 0x10
jne 0x4748da
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x4749aa
test dl, 8
jne 0x47490f
mov ebx, dword [ebp - 0x128]
lea edx, [esi + 2]
and ebx, 7
movzx eax, al
and eax, 0x3f
shl ebx, 6
or ebx, eax
add esi, 3
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4749aa
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x47494f
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4749aa
and dword [ebp - 0x128], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x128], 6
add esi, 5
movzx eax, al
and eax, 0x3f
or eax, dword [ebp - 0x128]
shl eax, 6
mov dword [ebp - 0x150], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x150]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x150], ecx
mov ebx, ecx
mov ecx, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp eax, 9
je 0x4749ec
cmp eax, 5
je 0x4749ec
cmp eax, 8
je 0x4749ec
xor eax, eax
jmp 0x4749f1
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ecx
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], ecx
mov ecx, esi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474860
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop
mov edi, dword [ebp - 0x120]
cmp edi, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x150], edx
je 0x474bf3
cmp edx, 0xc0
jb 0x474bf3
mov al, byte [esi]
test dl, 0x20
jne 0x474adb
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x474bf3
lea ecx, [esi + 1]
test dl, 0x10
jne 0x474aff
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x474bee
test dl, 8
jne 0x474b34
mov ebx, dword [ebp - 0x150]
lea edx, [esi + 2]
and ebx, 7
movzx eax, al
and eax, 0x3f
shl ebx, 6
or ebx, eax
add esi, 3
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x474bee
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x474b77
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x150]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x474be8
lea ebx, [esi + 4]
movzx eax, al
mov dword [ebp - 0x14c], ebx
and eax, 0x3f
mov ebx, dword [ebp - 0x150]
add esi, 5
mov dword [ebp - 0x15c], ebx
and dword [ebp - 0x15c], 1
shl dword [ebp - 0x15c], 6
or dword [ebp - 0x15c], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x15c], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x15c]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x15c], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
mov edx, dword [ebp - 0x154]
mov eax, ebx
shr eax, 7
and ebx, 0x7f
xor ecx, ecx
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp dword [eax*4 + 0x624478], edx
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc edi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
mov ecx, esi
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], edi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474a80
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop word [eax + eax]
mov edi, dword [ebp - 0x120]
cmp edi, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x150], edx
je 0x474e30
cmp edx, 0xc0
jb 0x474e30
mov al, byte [esi]
test dl, 0x20
jne 0x474d1b
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x474e30
lea ecx, [esi + 1]
test dl, 0x10
jne 0x474d3f
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x474e2b
test dl, 8
jne 0x474d74
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x150]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x474e2b
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x474db4
movzx ebx, al
add esi, 4
mov eax, dword [ebp - 0x150]
and ebx, 0x3f
and eax, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x474e25
lea ebx, [esi + 4]
movzx eax, al
mov dword [ebp - 0x14c], ebx
and eax, 0x3f
mov ebx, dword [ebp - 0x150]
add esi, 5
mov dword [ebp - 0x15c], ebx
and dword [ebp - 0x15c], 1
shl dword [ebp - 0x15c], 6
or dword [ebp - 0x15c], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x15c], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x15c]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x15c], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
mov eax, ebx
xor ecx, ecx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp eax, dword [ebp - 0x154]
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc edi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
mov ecx, esi
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], edi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474cc0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax]
mov edi, dword [ebp - 0x120]
cmp edi, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x128], edx
je 0x475044
cmp edx, 0xc0
jb 0x475044
mov al, byte [esi]
test dl, 0x20
jne 0x474f4b
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x475044
lea ecx, [esi + 1]
test dl, 0x10
jne 0x474f6f
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x47503f
test dl, 8
jne 0x474fa4
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x47503f
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test dl, 4
lea edx, [esi + 2]
jne 0x474fe4
mov ebx, dword [ebp - 0x128]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x475039
and dword [ebp - 0x128], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x128], 6
add esi, 5
or eax, dword [ebp - 0x128]
shl eax, 6
mov dword [ebp - 0x150], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x150]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x150], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
mov eax, ebx
xor ecx, ecx
shr eax, 7
and ebx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627628]
cmp eax, dword [ebp - 0x154]
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc edi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
mov ecx, esi
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], edi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x474ef0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x120]
cmp ecx, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x150], edx
je 0x475261
cmp edx, 0xc0
jb 0x475261
mov al, byte [esi]
test dl, 0x20
jne 0x47515c
and edx, 0x1f
movzx ebx, al
and ebx, 0x3f
shl edx, 6
inc esi
or ebx, edx
jmp 0x475261
movzx eax, al
lea ecx, [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x475182
mov ebx, edx
add esi, 2
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x475256
test dl, 8
jne 0x4751b1
mov ebx, dword [ebp - 0x150]
lea edx, [esi + 2]
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x475256
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x4751eb
mov ebx, dword [ebp - 0x150]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x475256
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x150]
mov dword [ebp - 0x154], ebx
and dword [ebp - 0x154], 1
shl dword [ebp - 0x154], 6
or dword [ebp - 0x154], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x154], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x154]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x154], ecx
mov ebx, ecx
mov ecx, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x47529a
cmp eax, 3
je 0x47529a
xor eax, eax
jmp 0x47529f
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ecx
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], ecx
mov ecx, esi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x475101
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x120]
cmp ebx, dword [ebp - 0x130]
jge case.default.0x46af0a
mov edi, dword [ebp - 0x118]
cmp esi, dword [edi + 0x78]
jae 0x47416b
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov edx, ecx
je 0x475444
cmp ecx, 0xc0
jb 0x475444
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x475386
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x475442
test cl, 0x10
jne 0x4753a7
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x475442
test cl, 8
jne 0x4753d1
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x475442
test cl, 4
jne 0x475407
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x475442
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edx, ecx
cmp ecx, 0x20
ja 0x47545e
je case.0x475547.8193
add ecx, 0xfffffff7
cmp ecx, 4
ja case.0x475547.8203
jmp dword [ecx*4 + 0x4776bc]
cmp ecx, 0x2000
ja 0x475523
je case.0x475547.8193
cmp ecx, 0x1680
ja 0x475518
je case.0x475547.8193
sub ecx, 0x85
je case.0x475547.8193
sub ecx, 0x1b
je case.0x475547.8193
mov eax, edx
xor ecx, ecx
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
cmp dword [eax*4 + 0x624478], 6
sete cl
cmp ecx, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push edi
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x475333
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
cmp ecx, 0x180e
jmp 0x475491
cmp ecx, 0x3000
ja case.0x475547.8203
je case.0x475547.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x475547.8203
movzx eax, byte [ecx + 0x4776d8]
jmp dword [eax*4 + 0x4776d0]
cmp dword [ebp - 0x160], 0
jne case.default.0x46af0a
jmp 0x4754d4
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov edi, dword [ebp - 0x120]
cmp edi, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x128], edx
je 0x4756e1
cmp edx, 0xc0
jb 0x4756e1
mov al, byte [esi]
test dl, 0x20
jne 0x4755e8
and ebx, 0x1f
movzx eax, al
inc esi
shl ebx, 6
jmp 0x4756dc
lea ecx, [esi + 1]
test dl, 0x10
jne 0x47560c
movzx ebx, al
and edx, 0xf
movzx eax, byte [ecx]
and ebx, 0x3f
shl edx, 6
add esi, 2
or ebx, edx
shl ebx, 6
jmp 0x4756dc
test dl, 8
jne 0x475641
movzx ebx, al
lea edx, [esi + 2]
mov eax, dword [ebp - 0x128]
and ebx, 0x3f
and eax, 7
add esi, 3
shl eax, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x4756dc
movzx eax, al
lea edi, [esi + 3]
and eax, 0x3f
test dl, 4
lea edx, [esi + 2]
jne 0x475681
mov ebx, dword [ebp - 0x128]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x4756d6
and dword [ebp - 0x128], 1
lea ebx, [esi + 4]
shl dword [ebp - 0x128], 6
add esi, 5
or eax, dword [ebp - 0x128]
shl eax, 6
mov dword [ebp - 0x150], eax
movzx eax, byte [ecx]
mov ecx, dword [ebp - 0x150]
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x150], ecx
mov ebx, ecx
mov edi, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
mov eax, ebx
shr eax, 7
movzx ecx, byte [eax + 0x625428]
mov eax, ebx
and eax, 0x7f
shl ecx, 7
add ecx, eax
movzx eax, word [ecx*2 + 0x628de8]
movzx eax, byte [eax*8 + 0x627629]
mov eax, dword [eax*4 + 0x624478]
cmp eax, 1
je 0x475721
cmp eax, 3
je 0x475721
cmp ebx, 0x5f
je 0x475721
xor eax, eax
jmp 0x475726
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc edi
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
mov ecx, esi
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], edi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x475592
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x120]
nop word [eax + eax]
cmp ebx, dword [ebp - 0x130]
jge case.default.0x46af0a
mov ecx, dword [ebp - 0x118]
cmp esi, dword [ecx + 0x78]
jae 0x4740a6
movzx ecx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov edi, ecx
je 0x4758d1
cmp ecx, 0xc0
jb 0x4758d1
movzx eax, byte [esi]
and eax, 0x3f
test cl, 0x20
jne 0x475813
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc esi
jmp 0x4758cf
test cl, 0x10
jne 0x475834
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 2
jmp 0x4758cf
test cl, 8
jne 0x47585e
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 3
jmp 0x4758cf
test cl, 4
jne 0x475894
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 4
jmp 0x4758cf
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [esi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [esi + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add esi, 5
mov edi, ecx
mov eax, dword [ebp - 0x154]
mov edx, dword [eax*4 + 0x628ca8]
lea eax, [eax*4 + 0x628ca8]
cmp edi, edx
jb 0x4758fd
nop dword [eax]
lea eax, [eax + 4]
cmp ecx, edx
je 0x475953
mov edx, dword [eax]
cmp ecx, edx
jae 0x4758f0
cmp dword [ebp - 0x160], 0
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x4757c0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x160], 0
jne case.default.0x46af0a
jmp 0x47590a
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov ecx, dword [ebp - 0x120]
cmp ecx, dword [ebp - 0x130]
jge case.default.0x46af0a
cmp esi, dword [ebx + 0x78]
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x150], edx
je 0x475af4
cmp edx, 0xc0
jb 0x475af4
test dl, 0x20
jne 0x4759ed
movzx eax, byte [esi]
and ebx, 0x1f
shl ebx, 6
and eax, 0x3f
or ebx, eax
inc esi
jmp 0x475af4
mov al, byte [esi]
lea ecx, [esi + 1]
movzx eax, al
and eax, 0x3f
test dl, 0x10
jne 0x475a15
mov ebx, edx
add esi, 2
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x475ae9
test dl, 8
jne 0x475a44
mov ebx, dword [ebp - 0x150]
lea edx, [esi + 2]
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x475ae9
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x475a7e
mov ebx, dword [ebp - 0x150]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x475ae9
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x150]
mov dword [ebp - 0x154], ebx
and dword [ebp - 0x154], 1
shl dword [ebp - 0x154], 6
or dword [ebp - 0x154], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x154], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x154]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x154], ecx
mov ebx, ecx
mov ecx, dword [ebp - 0x120]
and eax, 0x3f
or ebx, eax
cmp ebx, 0x24
je 0x475b1f
cmp ebx, 0x40
je 0x475b1f
cmp ebx, 0x60
je 0x475b1f
cmp ebx, 0xa0
jb 0x475b13
cmp ebx, 0xd7ff
jbe 0x475b1f
cmp ebx, 0xe000
jae 0x475b1f
xor eax, eax
jmp 0x475b24
mov eax, 1
cmp eax, dword [ebp - 0x160]
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
inc ecx
mov ebx, dword [ebp - 0x118]
inc eax
mov edx, dword [ebp - 0x11c]
push eax
push dword [ebp - 0x148]
mov dword [ebp - 0x120], ecx
mov ecx, esi
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x475994
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, esi
inc eax
cmp edx, 0x16
mov edx, dword [ebp - 0x11c]
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
jne 0x475ee0
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
nop dword [eax + eax]
mov eax, dword [ebp - 0x130]
cmp dword [ebp - 0x120], eax
jge case.default.0x46af0a
mov eax, dword [ebx + 0x78]
mov dword [ebp - 0x164], eax
cmp esi, eax
jae 0x4737da
movzx edx, byte [esi]
inc esi
cmp dword [ebp - 0x12c], 0
mov ebx, edx
mov dword [ebp - 0x150], edx
mov ecx, esi
je 0x475d1e
cmp edx, 0xc0
jb 0x475d1e
mov al, byte [esi]
movzx eax, al
test dl, 0x20
jne 0x475c20
and ebx, 0x1f
inc esi
shl ebx, 6
jmp 0x475d17
and eax, 0x3f
lea ecx, [esi + 1]
test dl, 0x10
jne 0x475c43
mov ebx, edx
add esi, 2
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
shl ebx, 6
jmp 0x475d17
test dl, 8
jne 0x475c72
mov ebx, dword [ebp - 0x150]
lea edx, [esi + 2]
and ebx, 7
add esi, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
shl ebx, 6
jmp 0x475d17
test dl, 4
lea edi, [esi + 3]
lea edx, [esi + 2]
jne 0x475cac
mov ebx, dword [ebp - 0x150]
add esi, 4
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi]
shl ebx, 6
jmp 0x475d17
lea ebx, [esi + 4]
add esi, 5
mov dword [ebp - 0x14c], ebx
mov ebx, dword [ebp - 0x150]
mov dword [ebp - 0x154], ebx
and dword [ebp - 0x154], 1
shl dword [ebp - 0x154], 6
or dword [ebp - 0x154], eax
movzx eax, byte [ecx]
shl dword [ebp - 0x154], 6
and eax, 0x3f
mov ecx, dword [ebp - 0x154]
mov ebx, dword [ebp - 0x14c]
or ecx, eax
movzx eax, byte [edx]
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]
shl ecx, 6
mov dword [ebp - 0x154], ecx
mov ebx, ecx
and eax, 0x3f
mov ecx, esi
or ebx, eax
mov eax, ebx
and ebx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x628de8]
movzx ebx, byte [eax*8 + 0x62762a]
mov eax, dword [ebp - 0x164]
cmp ecx, eax
jae 0x475e6b
cmp dword [ebp - 0x12c], 0
mov edi, 1
movzx edx, byte [esi]
je 0x475e24
cmp edx, 0xc0
jb 0x475e24
test dl, 0x20
jne 0x475d87
movzx eax, byte [esi + 1]
and edx, 0x1f
mov edi, 2
jmp 0x475e1c
movzx ecx, byte [esi + 1]
movzx eax, byte [esi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x475da6
and edx, 0xf
mov edi, 3
shl edx, 6
or edx, ecx
jmp 0x475e1c
and eax, 0x3f
test dl, 8
jne 0x475dc6
and edx, 7
mov edi, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
jmp 0x475e1c
test dl, 4
jne 0x475def
and edx, 3
mov edi, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
jmp 0x475e1c
and edx, edi
mov edi, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [esi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
and edx, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x625428]
shl eax, 7
add eax, edx
movzx eax, word [eax*2 + 0x628de8]
movzx ecx, byte [eax*8 + 0x62762a]
mov eax, dword [ebp - 0x15c]
shl eax, cl
test dword [ebx*4 + 0x624f48], eax
mov eax, dword [ebp - 0x164]
je 0x475e6b
add esi, edi
mov ebx, ecx
cmp esi, eax
jb 0x475d50
mov ebx, dword [ebp - 0x118]
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je 0x475e97
cmp esi, eax
jb 0x475e97
cmp esi, dword [ebx + 0x84]
jbe 0x475e97
mov dword [ebx + 0x64], 1
cmp ecx, 1
jg 0x4739cf
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
inc dword [ebp - 0x120]
push eax
push dword [ebp - 0x148]
push ebx
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x475bc0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
call fcn.00468a80
add esp, 0x14
mov edi, eax
cmp dword [ebp - 0x12c], 0
je 0x4763a2
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x120]
nop word [eax + eax]
cmp ebx, dword [ebp - 0x130]
jge case.default.0x46af0a
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax + 0x78]
cmp esi, ecx
jae 0x476389
mov edi, dword [ebp - 0x134]
cmp edi, 0xc
jne 0x475f89
mov edx, dword [eax + 0x18]
test edx, edx
je 0x475f5e
push dword [ebp - 0x12c]
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.00478f90
add esp, 0xc
test eax, eax
jne case.default.0x46af0a
jmp 0x475f89
mov edx, dword [eax + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x475f89
mov ecx, dword [ebp - 0x118]
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne 0x475f89
cmp edx, 1
je case.default.0x46af0a
mov al, byte [esi + 1]
cmp al, byte [ecx + 0x35]
je case.default.0x46af0a
movzx edx, byte [esi]
inc esi
mov ecx, esi
mov eax, edx
cmp edx, 0xc0
jb 0x476063
movzx ecx, byte [esi]
and ecx, 0x3f
test dl, 0x20
jne 0x475fb8
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
inc esi
jmp 0x47605f
movzx eax, byte [esi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x475fd9
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add esi, 2
jmp 0x47605f
test dl, 8
jne 0x475ffc
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 3
jmp 0x47605f
test dl, 4
jne 0x47602b
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 4
jmp 0x47605f
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [esi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [esi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add esi, 5
mov ecx, esi
mov eax, edx
add edi, 0xfffffffa
cmp edi, 0xf
ja case.default.0x46b65c
jmp dword [edi*4 + 0x477738]
mov eax, dword [ebp - 0x118]
mov edi, dword [eax + 0x88]
test edi, edi
je case.0x47606f.13
cmp ecx, dword [eax + 0x78]
jb case.0x47606f.13
cmp dword [eax + 0x18], 0
jne case.0x47606f.13
cmp dword [eax + 0x1c], 2
jne case.0x47606f.13
movzx eax, byte [eax + 0x34]
cmp edx, eax
jne case.0x47606f.13
mov eax, dword [ebp - 0x118]
mov dword [eax + 0x64], 1
cmp edi, 1
jg 0x4739cf
jmp case.0x47606f.13
cmp edx, 0x85
ja 0x47610b
je case.0x4760e4.11
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x46af0a
jmp dword [edx*4 + 0x477778]
mov eax, dword [ebp - 0x118]
cmp ecx, dword [eax + 0x78]
jae case.0x47606f.13
cmp byte [esi], 0xa
jne case.0x47606f.13
lea esi, [ecx + 1]
jmp case.0x47606f.13
sub edx, 0x2028
je case.0x4760e4.11
sub edx, 1
jne case.default.0x46af0a
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0x68], 0
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp edx, 0x2000
ja 0x476175
je case.default.0x46af0a
cmp edx, 0xa0
ja 0x47615e
je case.default.0x46af0a
cmp edx, 9
je case.default.0x46af0a
cmp edx, 0x20
jmp 0x47633a
cmp edx, 0x1680
je case.default.0x46af0a
cmp edx, 0x180e
jmp 0x47633a
cmp edx, 0x3000
ja case.0x47606f.13
je case.default.0x46af0a
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x47606f.13
movzx eax, byte [edx + 0x477790]
jmp dword [eax*4 + 0x477788]
cmp edx, 0x2000
ja 0x4761f4
je case.0x47606f.13
cmp edx, 0xa0
ja 0x4761d7
je case.0x47606f.13
cmp edx, 9
je case.0x47606f.13
cmp edx, 0x20
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp edx, 0x1680
je case.0x47606f.13
cmp edx, 0x180e
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp edx, 0x3000
ja case.default.0x46af0a
je case.0x47606f.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.default.0x46af0a
movzx eax, byte [edx + 0x4777f8]
jmp dword [eax*4 + 0x4777f0]
cmp edx, 0x85
ja 0x476244
je case.default.0x46af0a
add edx, 0xfffffff6
cmp edx, 3
ja case.0x47606f.13
jmp dword [edx*4 + 0x477858]
sub edx, 0x2028
je case.default.0x46af0a
sub edx, 1
jmp 0x47633a
cmp edx, 0x85
ja 0x476279
je case.0x47606f.13
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x46af0a
jmp dword [edx*4 + 0x477868]
sub edx, 0x2028
je case.0x47606f.13
sub edx, 1
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp eax, 0x100
jae case.0x47606f.13
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp eax, 0x100
jae case.default.0x46af0a
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 4
jmp 0x47633a
cmp eax, 0x100
jae case.0x47606f.13
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp eax, 0x100
jae case.default.0x46af0a
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 1
jmp 0x47633a
cmp eax, 0x100
jae case.0x47606f.13
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
jne case.default.0x46af0a
jmp case.0x47606f.13
cmp eax, 0x100
jae case.default.0x46af0a
mov eax, dword [ebp - 0x118]
mov eax, dword [eax + 0x40]
test byte [edx + eax], 0x10
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x475f10
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [eax + 0x88]
test eax, eax
je case.default.0x46af0a
mov ecx, dword [ebp - 0x118]
jmp 0x473ef0
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x120]
cmp ebx, dword [ebp - 0x130]
jge case.default.0x46af0a
mov edx, dword [ebp - 0x118]
mov ecx, dword [edx + 0x78]
cmp esi, ecx
jae 0x4739a5
mov edi, dword [ebp - 0x134]
cmp edi, 0xc
jne 0x47643b
mov edx, dword [edx + 0x18]
mov eax, dword [ebp - 0x118]
test edx, edx
je 0x476406
push 0
add eax, 0x1c
push eax
push ecx
mov ecx, esi
call fcn.00478f90
add esp, 0xc
test eax, eax
jne case.default.0x46af0a
mov edx, dword [ebp - 0x118]
jmp 0x47643b
mov edx, dword [eax + 0x1c]
sub ecx, edx
cmp esi, ecx
ja 0x476439
mov ecx, dword [ebp - 0x118]
mov al, byte [esi]
cmp al, byte [ecx + 0x34]
jne 0x476435
cmp edx, 1
je case.default.0x46af0a
mov al, byte [esi + 1]
mov edx, ecx
cmp al, byte [edx + 0x35]
je case.default.0x46af0a
jmp 0x47643b
mov edx, ecx
jmp 0x47643b
mov edx, eax
movzx ecx, byte [esi]
lea eax, [edi - 6]
inc esi
cmp eax, 0xf
ja case.default.0x46b65c
jmp dword [eax*4 + 0x477878]
mov edx, dword [edx + 0x88]
test edx, edx
je case.0x47644b.13
mov eax, dword [ebp - 0x118]
cmp esi, dword [eax + 0x78]
jb case.0x47644b.13
cmp dword [eax + 0x18], 0
jne case.0x47644b.13
cmp dword [eax + 0x1c], 2
jne case.0x47644b.13
movzx eax, byte [eax + 0x34]
cmp ecx, eax
jne case.0x47644b.13
mov eax, dword [ebp - 0x118]
mov dword [eax + 0x64], 1
cmp edx, 1
jg 0x4739cf
jmp case.0x47644b.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x46af0a
movzx eax, byte [ecx + 0x4778c8]
jmp dword [eax*4 + 0x4778b8]
cmp esi, dword [edx + 0x78]
jae case.0x47644b.13
cmp byte [esi], 0xa
jne case.0x47644b.13
inc esi
jmp case.0x47644b.13
cmp dword [edx + 0x68], 0
jne case.default.0x46af0a
jmp case.0x47644b.13
cmp ecx, 9
je case.default.0x46af0a
cmp ecx, 0x20
je case.default.0x46af0a
cmp ecx, 0xa0
jmp 0x4765a1
cmp ecx, 9
je case.0x47644b.13
cmp ecx, 0x20
je case.0x47644b.13
cmp ecx, 0xa0
jne case.default.0x46af0a
jmp case.0x47644b.13
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x47644b.13
movzx eax, byte [ecx + 0x47794c]
jmp dword [eax*4 + 0x477944]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.default.0x46af0a
movzx eax, byte [ecx + 0x4779d0]
jmp dword [eax*4 + 0x4779c8]
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jne case.default.0x46af0a
jmp case.0x47644b.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 4
jmp 0x4765a1
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jne case.default.0x46af0a
jmp case.0x47644b.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 1
jmp 0x4765a1
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
jne case.default.0x46af0a
jmp case.0x47644b.13
mov eax, dword [edx + 0x40]
test byte [ecx + eax], 0x10
je case.default.0x46af0a
mov eax, dword [ebp + 0x18]
mov ecx, esi
mov edx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
inc ebx
push dword [ebp - 0x118]
push dword [ebp - 0x138]
push dword [ebp - 0x140]
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x4763b0
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, 0xfffffff2
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebx + 0xc]
mov ebx, dword [ecx + eax*4]
mov eax, dword [ecx + eax*4 + 4]
mov dword [ebp - 0x16c], eax
mov eax, dword [ebp - 0x118]
mov dword [ebp - 0x164], ebx
mov eax, dword [eax + 0x10]
sub eax, edx
mov edx, dword [ebp - 0x118]
lea ecx, [ecx + eax*4]
mov eax, dword [ecx]
mov dword [ebp - 0x168], eax
mov eax, dword [edx + 0xac]
mov ebx, dword [edx + 0x90]
mov dword [ebp - 0x14c], eax
mov eax, esi
sub eax, dword [edx + 0x74]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x11c]
jmp 0x476666
mov edi, dword [ebp - 0x124]
cmp edi, 0x88
jb 0x476678
mov dword [edx + 0x98], 2
mov eax, dword [ebp + 0x18]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push edx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 0xfffffc1b
je 0x476742
cmp edi, 0xfffffc20
jne 0x4766f8
mov edx, dword [ebp - 0x11c]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, dword [ebp - 0x118]
cmp dword [edx + 0x7c], eax
jae case.default.0x4694ab
mov ecx, dword [ebp - 0x11c]
cmp byte [ecx], 0x77
je 0x4766f4
cmp byte [eax], 0x77
jne case.default.0x4694ab
xor edi, edi
jmp 0x476706
test edi, edi
jne case.default.0x4694ab
mov edx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x11c]
mov dword [edx + 0x90], ebx
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp - 0x14c]
add dword [ebp - 0x11c], ecx
mov ecx, dword [ebp - 0x11c]
mov dword [edx + 0xac], eax
cmp byte [ecx], 0x77
je 0x476660
jmp 0x476748
mov edx, dword [ebp - 0x118]
mov eax, dword [edx + 0xc]
mov ecx, dword [ebp - 0x150]
mov ebx, dword [ebp - 0x118]
mov edx, dword [ebp - 0x164]
mov dword [eax + ecx*4], edx
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp - 0x16c]
mov dword [eax + ecx*4 + 4], edx
mov ecx, dword [ebx + 0x10]
sub ecx, dword [ebp - 0x13c]
mov eax, dword [ebx + 0xc]
mov edx, dword [ebp - 0x168]
mov dword [eax + ecx*4], edx
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
cmp edi, 0xfffffc1b
jne case.default.0x4694ab
mov edx, dword [ebp - 0x11c]
mov al, byte [edx]
cmp al, 0x81
je 0x4767d3
cmp al, 0x77
jne 0x4767c4
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x4767b0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0xb4], edx
jne case.default.0x4694ab
xor edi, edi
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x118]
lea ebx, [edi + 2]
mov dword [ecx + 0xb0], ebx
mov dword [ecx + 0xac], 0
mov eax, dword [ebp + 0x18]
movzx edx, byte [edi + 1]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [edi]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
movzx eax, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add eax, edi
add edx, eax
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 1
je 0x476860
cmp edi, 0xfffffc19
je 0x476860
cmp edi, 0xfffffc1a
jne 0x476888
mov edx, dword [ebp - 0x118]
cmp dword [edx + 0xac], 0
jne 0x47688e
mov dword [edx + 0xac], ebx
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x118]
cmp edi, 0xfffffc1f
jne case.default.0x4694ab
mov eax, dword [edx + 0x7c]
nop dword [eax]
mov cl, byte [ebx]
cmp cl, byte [eax]
jne 0x4768c0
test cl, cl
je 0x4768bc
mov cl, byte [ebx + 1]
cmp cl, byte [eax + 1]
jne 0x4768c0
add ebx, 2
add eax, 2
test cl, cl
jne 0x4768a0
xor eax, eax
jmp 0x4768c5
sbb eax, eax
or eax, 1
test eax, eax
jne case.default.0x4694ab
mov dword [edx + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push ebx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov eax, 0xfffffc1c
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push ebx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x476a08
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x118]
lea ebx, [edi + 2]
mov dword [ecx + 0xb0], ebx
mov dword [ecx + 0xac], 0
mov eax, dword [ebp + 0x18]
movzx edx, byte [edi + 1]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [edi]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
movzx eax, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add eax, edi
add edx, eax
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 1
je 0x4769eb
cmp edi, 0xfffffc19
jne 0x476a00
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0xac], 0
jne 0x476a00
mov dword [eax + 0xac], ebx
test edi, edi
jne case.default.0x4694ab
mov eax, 0xfffffc1d
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push ebx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
jne case.default.0x4694ab
mov dword [ebx + 0x7c], esi
mov eax, 0xfffffc1e
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp - 0x11c]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [ecx]
push ebx
push dword [ebp - 0x138]
movzx edx, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add edx, ecx
mov ecx, esi
call fcn.00468a80
mov edi, eax
add esp, 0x14
test edi, edi
je 0x476b49
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x11c]
mov ecx, dword [ebp - 0x118]
lea ebx, [edi + 2]
mov dword [ecx + 0xb0], ebx
mov dword [ecx + 0xac], 0
mov eax, dword [ebp + 0x18]
movzx edx, byte [edi + 1]
inc eax
push eax
push dword [ebp - 0x148]
movzx eax, byte [edi]
push ecx
push dword [ebp - 0x138]
mov ecx, esi
movzx eax, byte [eax + 0x624e60]
push dword [ebp - 0x140]
add eax, edi
add edx, eax
call fcn.00468a80
mov edi, eax
add esp, 0x14
cmp edi, 1
je 0x476b26
cmp edi, 0xfffffc19
jne 0x476b3b
mov eax, dword [ebp - 0x118]
cmp dword [eax + 0xac], 0
jne 0x476b3b
mov dword [eax + 0xac], ebx
test edi, edi
jne case.default.0x4694ab
mov ebx, dword [ebp - 0x118]
mov eax, dword [ebp - 0x11c]
mov dword [ebx + 0x7c], eax
mov eax, 0xfffffc20
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x140]
cmp esi, ecx
jne 0x476ba4
cmp edi, 0x9f
je 0x476ba4
cmp dword [ebx + 0xa4], 0
jne 0x476ba4
cmp dword [ebx + 0x5c], 0
jne case.default.0x46af0a
cmp dword [ebx + 0x60], 0
je 0x476ba4
mov eax, dword [ebx + 0x94]
add eax, dword [ebx + 0x74]
cmp ecx, eax
je case.default.0x46af0a
mov eax, dword [ebp - 0x138]
test edi, edi
mov dword [ebx + 0x80], esi
mov dword [ebx + 0x8c], eax
mov eax, 0xfffffc19
cmove eax, dword [ebp - 0x15c]
mov dword [ebx + 0x7c], ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, 0xfffffffb
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov eax, 0xffffffeb
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.005df097
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 8]
inc eax
pop edi
mov dword [ebx], eax
xor ecx, ebp
pop esi
mov eax, 0xfffffff8
pop ebx
call fcn.005df097
mov esp, ebp
pop ebp
ret