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

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x1f4
mov edi, eax
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0x128], 0
mov dword [ebp - 0x12c], 0
mov ecx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
mov edx, dword [ecx]
mov eax, dword [eax + 0x44]
mov dword [ebp - 0xf8], eax
cmp edx, dword [ecx + 4]
lea eax, [edx + 1]
mov dword [ecx], eax
jb 0x461505
mov edx, 0xfffffff8
jmp case.default.0x467818
movzx eax, al
movzx eax, byte [eax + 0x64f830]
add dword [ebp - 0xf0], eax
jmp 0x4614ce
mov ebx, dword [ebp + 0x10]
mov esi, dword [ebp + 0x20]
cmp esi, dword [ebx + 8]
jb 0x461950
mov edx, 0xffffffeb
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 2
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
mov edx, eax
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, 1
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, 1
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
mov edx, dword [ebp + 0xc]
mov dword [eax + 0x7c], edx
mov edx, 1
mov dword [eax + 0x70], edi
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
push esi
mov edx, dword [ebp - 0x110]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
mov edx, eax
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, 0xfffffff4
jmp case.default.0x467818
mov edx, 0xfffffff4
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov edx, ebx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x14]
test byte [ebp + 0x1c], 2
mov dword [ebp - 0x120], ecx
je 0x461977
mov ebx, dword [ebp + 0x18]
lea esi, [ebp - 0xe4]
mov dword [ebp - 0xe0], edi
mov dword [ebp - 0xe4], ebx
mov dword [ebp + 0x18], esi
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0
mov dl, byte [eax]
movzx ecx, dl
mov dword [ebp - 0x144], ecx
cmp ecx, 0x72
ja case.0x4619a5.70
jmp dword [ecx*4 + 0x64ed4c]
xor edx, edx
jmp case.default.0x467818
movzx eax, dl
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, dword [ebp - 0xf0]
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
mov edx, 0xfffffc1a
test eax, eax
je case.default.0x467818
jmp 0x46151e
movzx eax, dl
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, dword [ebp - 0xf0]
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
mov edx, 0xfffffc19
test eax, eax
je case.default.0x467818
jmp 0x461525
movzx eax, dl
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, dword [ebp - 0xf0]
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov edx, eax
test eax, eax
jne case.default.0x467818
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffc1b
mov dword [ebx + 0x6c], edi
jmp case.default.0x467818
movzx eax, dl
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, dword [ebp - 0xf0]
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
mov edx, 0xfffffc1c
test eax, eax
je case.default.0x467818
jmp 0x46152c
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp + 0x10]
movzx esi, byte [eax + 3]
movzx eax, byte [eax + 4]
shl esi, 8
or esi, eax
lea edx, [esi + esi]
mov dword [ebp - 0x140], edx
cmp edx, dword [ecx + 0x14]
jge case.0x4619a5.94
mov ebx, ecx
mov ecx, dword [ecx + 0xc]
mov eax, dword [ecx + edx*4]
mov edx, dword [ecx + edx*4 + 4]
mov dword [ebp - 0x14c], eax
mov eax, dword [ebx + 0x10]
sub eax, esi
mov dword [ebp - 0x150], edx
mov edx, dword [ebp + 0x10]
mov ebx, dword [ecx + eax*4]
mov edx, dword [edx + 0x80]
mov dword [ebp - 0x154], ebx
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x148], edx
mov edx, edi
sub edx, dword [ebx + 0x64]
mov dword [ecx + eax*4], edx
xor eax, eax
cmp dword [ebp - 0x144], 0x62
sete al
add eax, eax
mov dword [ebp + 0x1c], eax
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx]
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, dword [ebp - 0xf0]
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
jne 0x461533
mov ecx, dword [ebp + 0x10]
mov edx, dword [ebp - 0xf0]
mov ebx, dword [ebp - 0x148]
mov dword [ecx + 0x80], ebx
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
cmp byte [ecx], 0x54
je 0x461b46
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x140]
mov ecx, dword [ebp - 0x14c]
mov edx, dword [ebx + 0xc]
mov ebx, dword [ebp - 0x150]
mov dword [edx + eax*4], ecx
mov ecx, dword [ebp + 0x10]
mov dword [edx + eax*4 + 4], ebx
mov ebx, dword [ebp - 0x154]
mov eax, dword [ecx + 0x10]
sub eax, esi
mov dword [edx + eax*4], ebx
xor edx, edx
jmp case.default.0x467818
xor eax, eax
cmp dword [ebp - 0x144], 0x61
setge al
add eax, eax
mov dword [ebp + 0x1c], eax
mov esi, dword [ebp - 0xf0]
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
cmp byte [eax + esi], 0x54
je 0x461c6c
cmp dword [ebp + 0x1c], 0
mov al, byte [esi]
je 0x4614f3
movzx eax, al
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, esi
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
mov edx, eax
jmp case.default.0x467818
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx]
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
add edx, dword [ebp - 0xf0]
inc eax
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
jne 0x46153a
mov ecx, dword [ebp - 0xf0]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
add ecx, eax
mov dword [ebp - 0xf0], ecx
jmp 0x461c16
mov ebx, dword [ebp - 0xf0]
movzx esi, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl esi, 8
or esi, eax
cmp byte [ebx + 3], 0x53
jne 0x461dda
mov ecx, dword [0x65f260]
test ecx, ecx
je 0x461dcd
mov dword [ebp - 0xdc], 1
mov edx, dword [ebp + 0x10]
movzx eax, byte [ebx + 4]
mov ebx, edx
mov dword [ebp - 0xd8], eax
mov eax, dword [edx + 0xc]
mov edx, dword [edx + 0x64]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebx + 0x68]
sub eax, edx
mov dword [ebp - 0xd0], edx
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp + 8]
sub eax, edx
mov ebx, dword [ebp - 0xf0]
mov dword [ebp - 0xc8], eax
mov eax, edi
sub eax, edx
mov edx, dword [ebp - 0xf0]
mov dword [ebp - 0xc4], eax
movzx eax, byte [edx + 5]
movzx edx, byte [edx + 6]
shl eax, 8
or eax, edx
mov dword [ebp - 0xb4], eax
movzx eax, byte [ebx + 7]
movzx edx, byte [ebx + 8]
shl eax, 8
or eax, edx
mov edx, 2
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp + 0xc]
mov ebx, edx
cdq
idiv ebx
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0xc0], eax
mov eax, dword [edx + 0x80]
mov dword [ebp - 0xbc], eax
mov eax, dword [edx + 0x94]
mov dword [ebp - 0xb8], eax
lea eax, [ebp - 0xdc]
push eax
call ecx
mov ebx, eax
pop eax
test ebx, ebx
jg 0x461541
jl 0x461548
movzx eax, byte [0x64f883]
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
movzx ebx, byte [ecx + 3]
lea eax, [ebx - 0x66]
cmp eax, 1
ja 0x461f96
mov esi, dword [ebp + 0x10]
mov esi, dword [esi + 0x90]
mov dword [ebp - 0x158], esi
test esi, esi
je 0x462185
mov eax, dword [ebp - 0xf0]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
mov dword [ebp - 0x118], 0
or ecx, eax
cmp ecx, 0xffff
je 0x461e37
mov edx, dword [ebp - 0x158]
cmp ecx, dword [edx + 4]
jne 0x461e41
mov dword [ebp - 0x118], 1
cmp dword [ebp - 0x118], 0
sete dl
xor eax, eax
cmp ebx, 0x67
sete al
test edx, eax
je 0x46214f
cmp ecx, 0xffff
je 0x46214f
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0xf4], 0
mov eax, dword [ebx + 0x20]
mov esi, dword [ebx + 0x28]
cmp dword [ebp - 0xf4], eax
mov dword [ebp - 0x1f4], esi
mov dword [ebp - 0x1ec], eax
jge 0x46214f
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
shl eax, 8
or eax, edx
cmp eax, ecx
je 0x461ebc
inc dword [ebp - 0xf4]
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x1ec]
add esi, dword [edx + 0x24]
cmp dword [ebp - 0xf4], ebx
jmp 0x461e8c
mov eax, dword [ebp - 0x1ec]
cmp dword [ebp - 0xf4], eax
jge 0x46214f
mov ebx, esi
cmp esi, dword [ebp - 0x1f4]
jbe 0x461f24
mov edx, dword [ebp + 0x10]
sub ebx, dword [edx + 0x24]
lea edx, [esi + 2]
lea eax, [ebx + 2]
push eax
push edx
call fcn.00478710
pop edx
test eax, eax
pop ecx
jne 0x461f24
movzx eax, byte [ebx]
movzx edx, byte [ebx + 1]
shl eax, 8
mov ecx, dword [ebp - 0x158]
or eax, edx
cmp eax, dword [ecx + 4]
sete al
movzx eax, al
mov dword [ebp - 0x118], eax
test eax, eax
jne 0x462236
cmp ebx, dword [ebp - 0x1f4]
ja 0x461ed8
jmp 0x461f31
cmp dword [ebp - 0x118], 0
jne 0x462236
mov ebx, esi
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x1ec]
cmp dword [ebp - 0xf4], eax
jge 0x46215c
mov edx, dword [ebp + 0x10]
add ebx, dword [edx + 0x24]
lea edx, [esi + 2]
lea eax, [ebx + 2]
push eax
push edx
call fcn.00478710
pop edx
test eax, eax
pop ecx
jne 0x46215c
movzx eax, byte [ebx]
movzx edx, byte [ebx + 1]
shl eax, 8
mov ecx, dword [ebp + 0x10]
or eax, edx
mov edx, dword [ecx + 0x90]
cmp eax, dword [edx + 4]
sete al
movzx eax, al
mov dword [ebp - 0x118], eax
test eax, eax
jne 0x462236
jmp 0x461f33
lea eax, [ebx - 0x64]
cmp eax, 1
ja 0x46217a
mov ecx, dword [ebp - 0xf0]
mov esi, dword [ebp + 0xc]
movzx eax, byte [ecx + 4]
movzx edx, byte [ecx + 5]
shl eax, 8
mov dword [ebp - 0x118], 0
or eax, edx
add eax, eax
mov dword [ebp - 0x140], eax
cmp eax, esi
jge 0x461fea
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x140]
mov eax, dword [edx + 0xc]
cmp dword [eax + ecx*4], 0
js 0x461fea
mov dword [ebp - 0x118], 1
cmp dword [ebp - 0x118], 0
sete dl
xor eax, eax
cmp ebx, 0x65
sete al
test edx, eax
je 0x46214f
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x140]
sar ecx, 1
mov dword [ebp - 0xf4], 0
mov eax, dword [ebx + 0x20]
mov esi, dword [ebx + 0x28]
cmp dword [ebp - 0xf4], eax
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x1f0], eax
jge 0x46214f
movzx eax, byte [esi]
movzx edx, byte [esi + 1]
shl eax, 8
or eax, edx
cmp eax, ecx
je 0x462061
inc dword [ebp - 0xf4]
mov edx, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x1f0]
add esi, dword [edx + 0x24]
cmp dword [ebp - 0xf4], ebx
jmp 0x462031
mov eax, dword [ebp - 0x1f0]
cmp dword [ebp - 0xf4], eax
jge 0x46214f
mov ebx, esi
cmp esi, dword [ebp - 0x1f8]
jbe 0x4620d7
mov edx, dword [ebp + 0x10]
sub ebx, dword [edx + 0x24]
lea edx, [esi + 2]
lea eax, [ebx + 2]
push eax
push edx
call fcn.00478710
pop edx
test eax, eax
pop ecx
jne 0x4620d7
movzx eax, byte [ebx]
movzx edx, byte [ebx + 1]
shl eax, 8
mov ecx, dword [ebp + 0xc]
or eax, edx
mov dword [ebp - 0x118], 0
add eax, eax
mov dword [ebp - 0x140], eax
cmp eax, ecx
jge 0x4620cd
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x140]
mov eax, dword [edx + 0xc]
cmp dword [eax + ecx*4], 0
jns 0x462140
cmp ebx, dword [ebp - 0x1f8]
ja 0x46207d
jmp 0x4620e4
cmp dword [ebp - 0x118], 0
jne 0x462236
mov ebx, esi
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x1f0]
cmp dword [ebp - 0xf4], eax
jge 0x46215c
mov edx, dword [ebp + 0x10]
add ebx, dword [edx + 0x24]
lea edx, [esi + 2]
lea eax, [ebx + 2]
push eax
push edx
call fcn.00478710
pop edx
test eax, eax
pop ecx
jne 0x46215c
movzx eax, byte [ebx]
movzx edx, byte [ebx + 1]
shl eax, 8
mov ecx, dword [ebp + 0xc]
or eax, edx
add eax, eax
mov dword [ebp - 0x140], eax
cmp eax, ecx
jge 0x4620e6
mov edx, dword [ebp + 0x10]
mov ecx, dword [ebp - 0x140]
mov eax, dword [edx + 0xc]
cmp dword [eax + ecx*4], 0
js 0x4620e6
mov dword [ebp - 0x118], 1
jmp 0x462236
cmp dword [ebp - 0x118], 0
jne 0x462236
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
jmp 0x462246
cmp ebx, 0x68
jne 0x46219f
mov ecx, dword [ebp - 0xf0]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
add ecx, eax
mov dword [ebp - 0xf0], ecx
jmp 0x462246
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
add edx, 3
push eax
push 1
push 0
mov eax, edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
cmp eax, 1
jne 0x462216
mov ebx, dword [ebp - 0xf0]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 5]
shl eax, 8
or eax, edx
add eax, ebx
lea esi, [eax + 3]
mov dword [ebp - 0xf0], esi
cmp byte [eax + 3], 0x54
jne 0x462255
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
cmp byte [ecx], 0x54
jmp 0x4621f0
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
jne 0x46154f
add dword [ebp - 0xf0], esi
jmp 0x462246
add dword [ebp - 0xf0], 3
cmp dword [ebp - 0x118], 0
jne 0x462255
mov ebx, dword [ebp - 0xf0]
cmp byte [ebx], 0x54
jne 0x463ad2
add dword [ebp - 0xf0], 3
cmp dword [ebp - 0x144], 0x63
je 0x461556
jmp 0x462c0f
mov eax, dword [ebp - 0xf0]
mov ecx, dword [ebp + 0x10]
movzx esi, byte [eax + 1]
movzx eax, byte [eax + 2]
shl esi, 8
or esi, eax
mov dword [ecx + 0x80], esi
lea edx, [esi + esi]
mov dword [ebp - 0x140], edx
cmp edx, dword [ecx + 0x14]
jl 0x4622a4
mov dword [ecx + 0x38], 1
jmp 0x463ad2
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x10]
mov edx, dword [ebx + 0xc]
sub eax, esi
mov esi, dword [ebp - 0x140]
mov eax, dword [edx + eax*4]
mov dword [edx + esi*4], eax
mov eax, edi
sub eax, dword [ebx + 0x64]
mov dword [edx + esi*4 + 4], eax
cmp dword [ebp + 0xc], esi
jg 0x463ad2
add esi, 2
mov dword [ebp + 0xc], esi
jmp 0x463ad2
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x90]
test ebx, ebx
je 0x46232b
cmp dword [ebx + 4], 0
jne 0x46232b
mov edx, dword [ebp + 0x10]
mov eax, dword [ebx]
mov dword [edx + 0x90], eax
mov eax, dword [ebx + 0x14]
shl eax, 2
push eax
push dword [ebx + 0x10]
push dword [edx + 0xc]
call sub.msvcrt.dll_memmove
mov ecx, dword [ebx + 0x18]
mov esi, dword [ebx + 0xc]
mov eax, dword [ebp - 0x120]
mov ebx, dword [ebx + 8]
mov dword [ebp + 0xc], ecx
mov dword [ebp + 8], esi
mov dword [ebp + 0x14], eax
mov dword [ebp - 0xf0], ebx
jmp 0x462b36
cmp edi, dword [ebp + 8]
jne 0x462353
mov edx, dword [ebp + 0x10]
cmp dword [edx + 0x50], 0
jne 0x46234c
cmp dword [edx + 0x54], 0
je 0x462353
mov eax, dword [edx + 0x84]
add eax, dword [edx + 0x64]
cmp edi, eax
jne 0x462353
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov esi, dword [ebp + 8]
mov edx, 1
mov dword [ecx + 0x70], edi
mov dword [ecx + 0x7c], ebx
mov dword [ecx + 0x6c], esi
jmp case.default.0x467818
mov eax, dword [ebp - 0xf0]
movzx eax, byte [eax + 1]
mov dword [ebp + 0x14], eax
jmp 0x464cb2
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
add edx, 3
push eax
push 0
push 0
mov eax, edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
cmp eax, 1
je 0x4623ec
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
jne 0x461580
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
cmp byte [ecx], 0x54
je case.0x4619a5.88
mov ebx, dword [ebp - 0xf0]
cmp byte [ebx], 0x55
je 0x461587
test byte [ebp + 0x1c], 1
jne 0x46158e
mov esi, dword [ebp - 0xf0]
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
mov dword [ebp - 0xf0], esi
cmp byte [esi], 0x54
je 0x462405
mov eax, dword [ebp + 0x10]
add esi, 3
mov dword [ebp - 0xf0], esi
mov eax, dword [eax + 0x7c]
mov dword [ebp + 0xc], eax
jmp 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
add edx, 3
push eax
push 0
push 0
mov eax, edi
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
cmp eax, 1
je 0x461598
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
jne 0x46159f
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
cmp byte [ecx], 0x54
je case.0x4619a5.89
test byte [ebp + 0x1c], 1
jne 0x4615a6
add ecx, 3
mov dword [ebp - 0xf0], ecx
jmp 0x461977
mov ebx, dword [ebp - 0xf0]
cmp dword [ebp - 0xf8], 0
mov al, byte [ebx + 1]
mov dl, byte [ebx + 2]
je 0x46251a
movzx eax, al
shl eax, 8
mov dword [ebp - 0xf4], eax
movzx eax, dl
or dword [ebp - 0xf4], eax
mov eax, dword [ebp - 0xf4]
dec dword [ebp - 0xf4]
test eax, eax
jle 0x462533
mov esi, dword [ebp + 0x10]
dec edi
cmp edi, dword [esi + 0x64]
jb 0x4615b0
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x4624ed
dec edi
jmp 0x46250a
movzx eax, al
shl eax, 8
movzx edx, dl
or eax, edx
sub edi, eax
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x64]
jb 0x4615b7
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x74]
jae 0x463ad2
mov dword [edx + 0x74], edi
jmp 0x463ad2
mov ecx, dword [0x65f260]
test ecx, ecx
je 0x462612
mov ebx, dword [ebp - 0xf0]
mov dword [ebp - 0xdc], 1
mov esi, dword [ebp + 0x10]
movzx eax, byte [ebx + 1]
mov dword [ebp - 0xd8], eax
mov eax, dword [esi + 0xc]
mov edx, dword [esi + 0x64]
mov dword [ebp - 0xd4], eax
mov eax, dword [esi + 0x68]
mov dword [ebp - 0xd0], edx
sub eax, edx
mov dword [ebp - 0xcc], eax
mov eax, dword [ebp + 8]
sub eax, edx
mov dword [ebp - 0xc8], eax
mov eax, edi
sub eax, edx
mov dword [ebp - 0xc4], eax
movzx eax, byte [ebx + 2]
movzx edx, byte [ebx + 3]
shl eax, 8
or eax, edx
mov dword [ebp - 0xb4], eax
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 5]
shl eax, 8
or eax, edx
mov edx, 2
mov dword [ebp - 0xb0], eax
mov eax, dword [ebp + 0xc]
mov esi, edx
cdq
idiv esi
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0xc0], eax
mov eax, dword [edx + 0x80]
mov dword [ebp - 0xbc], eax
mov eax, dword [edx + 0x94]
mov dword [ebp - 0xb8], eax
lea eax, [ebp - 0xdc]
push eax
call ecx
pop ecx
mov ebx, eax
test eax, eax
jg 0x4615be
jl 0x4615c5
add dword [ebp - 0xf0], 6
jmp 0x461977
mov ecx, dword [ebp - 0xf0]
mov ebx, dword [ebp + 0x10]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
xor ecx, ecx
or eax, edx
mov edx, dword [ebx + 0x60]
lea esi, [edx + eax]
cmp esi, edx
je 0x46264d
movzx ecx, byte [esi + 3]
movzx eax, byte [esi + 4]
shl ecx, 8
or ecx, eax
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x28], ecx
add dword [ebp - 0xf0], 3
mov eax, dword [edx + 0x90]
mov ecx, dword [ebp - 0xf0]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x2c]
mov dword [edx + 0x90], eax
mov eax, dword [edx + 0x10]
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x18], eax
cmp eax, 0x1e
jg 0x46268b
lea eax, [ebp - 0xac]
mov dword [ebp - 0x1c], eax
jmp 0x4626a6
shl eax, 2
push eax
call dword [0x4cf14c]
pop edx
test eax, eax
mov dword [ebp - 0x1c], eax
mov edx, 0xfffffffa
je case.default.0x467818
mov eax, dword [ebp - 0x18]
mov ebx, dword [ebp + 0x10]
shl eax, 2
push eax
push dword [ebx + 0xc]
push dword [ebp - 0x1c]
call fcn.00478620
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x14], edx
add esp, 0xc
mov al, byte [esi]
cmp al, 0x61
sbb ecx, ecx
not ecx
and ecx, 2
mov dword [ebp + 0x1c], ecx
movzx eax, byte [esi]
movzx edx, byte [eax + 0x64f830]
mov eax, dword [ebp + 0x20]
inc eax
lea edx, [esi + edx]
push eax
mov eax, edi
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
cmp eax, 1
jne 0x462736
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
mov dword [ebx + 0x90], eax
lea eax, [ebp - 0xac]
cmp edx, eax
je 0x46272c
push edx
call dword [0x4cf148]
pop eax
mov edx, 1
jmp case.default.0x467818
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
mov edx, dword [ebp - 0x1c]
je 0x462766
lea eax, [ebp - 0xac]
cmp edx, eax
je 0x46275f
push edx
call dword [0x4cf148]
pop eax
mov edx, ebx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
lea eax, [ebp - 0x2c]
mov dword [ecx + 0x90], eax
mov eax, dword [ebp - 0x18]
shl eax, 2
push eax
push edx
push dword [ecx + 0xc]
call fcn.00478620
add esp, 0xc
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
cmp byte [esi], 0x54
je 0x4626d8
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x1c]
mov dword [ebx + 0x90], eax
lea eax, [ebp - 0xac]
cmp edx, eax
je 0x4627be
push edx
call dword [0x4cf148]
pop edi
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp - 0xf0]
mov dword [ebp - 0x114], edi
mov dword [ebp - 0x110], esi
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
add edx, 3
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
cmp eax, 1
je 0x462843
test eax, eax
setne dl
xor eax, eax
cmp ebx, 0xfffffc1c
setne al
test edx, eax
jne 0x4615cc
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
cmp byte [ecx], 0x54
je 0x4627d7
mov ebx, dword [ebp - 0xf0]
mov al, byte [ebx]
cmp al, 0x5d
setne dl
cmp al, 0x54
setne al
movzx eax, al
test edx, eax
jne 0x4615d3
mov esi, dword [ebp - 0xf0]
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
mov dword [ebp - 0xf0], esi
mov cl, byte [esi]
cmp cl, 0x54
je 0x462860
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 0x10]
cmp cl, 0x55
mov eax, dword [eax + 0x7c]
mov edi, dword [edx + 0x70]
mov dword [ebp + 0xc], eax
sete dl
cmp edi, dword [ebp - 0x114]
sete al
or eax, edx
test al, 1
jne 0x462a13
mov ebx, dword [ebp - 0xf0]
cmp byte [ebx + 3], 0x19
jne 0x4628c1
and dword [ebp + 0x14], 0xfffffff8
movzx eax, byte [ebx + 4]
or dword [ebp + 0x14], eax
mov eax, dword [ebp + 0x20]
cmp cl, 0x57
lea esi, [eax + 1]
jne 0x46290c
push esi
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov edx, dword [ebp - 0xf0]
mov eax, edi
add edx, 3
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4615da
mov edx, dword [ebp - 0x110]
mov dword [ebp - 0xf0], edx
jmp 0x462c0f
push esi
push 2
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov edx, dword [ebp - 0x110]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4615e1
jmp 0x462c08
mov ecx, dword [ebp - 0xf0]
movzx eax, byte [ecx + 1]
movzx edx, byte [ecx + 2]
shl eax, 8
or eax, edx
add ecx, eax
mov dword [ebp - 0xf0], ecx
cmp byte [ecx], 0x54
je case.0x4619a5.84
jmp 0x461977
mov eax, dword [ebp + 0x20]
mov esi, dword [ebp - 0xf0]
inc eax
inc esi
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov edx, esi
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4615e8
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
cmp byte [esi], 0x54
je 0x462995
jmp 0x462a13
mov esi, dword [ebp - 0xf0]
inc esi
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
cmp byte [esi], 0x54
je 0x4629b2
mov eax, dword [ebp + 0x20]
lea edx, [esi + 3]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4615ef
jmp 0x463c49
mov esi, dword [ebp - 0xf0]
inc esi
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
or eax, edx
add esi, eax
cmp byte [esi], 0x54
je 0x4629ff
add esi, 3
jmp 0x464aae
mov ebx, dword [ebp - 0xf0]
movzx eax, byte [ebx + 1]
movzx edx, byte [ebx + 2]
shl eax, 8
or eax, edx
sub ebx, eax
mov dword [ebp - 0x110], ebx
mov cl, byte [ebx]
mov dword [ebp - 0x114], 0
cmp cl, 0x60
jbe 0x462a5b
mov esi, dword [ebp + 0x18]
mov eax, dword [ebp + 0x18]
mov esi, dword [esi + 4]
mov eax, dword [eax]
mov dword [ebp - 0x114], esi
mov dword [ebp + 0x18], eax
lea eax, [ecx - 0x58]
cmp al, 3
setbe dl
cmp cl, 0x5d
sete al
or eax, edx
test al, 1
jne 0x4615f6
cmp cl, 0x5f
sete dl
cmp cl, 0x62
sete al
or eax, edx
test al, 1
je 0x462b3e
mov edx, dword [ebp - 0x110]
mov ebx, dword [ebp + 0x10]
movzx esi, byte [edx + 3]
movzx eax, byte [edx + 4]
shl esi, 8
or esi, eax
mov dword [ebx + 0x80], esi
lea ecx, [esi + esi]
mov dword [ebp - 0x140], ecx
cmp ecx, dword [ebx + 0x14]
jl 0x462abc
mov dword [ebx + 0x38], 1
jmp 0x462ae9
mov eax, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x140]
mov ecx, eax
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 0x10]
sub eax, esi
mov eax, dword [edx + eax*4]
mov dword [edx + ebx*4], eax
mov eax, edi
sub eax, dword [ecx + 0x64]
mov dword [edx + ebx*4 + 4], eax
cmp dword [ebp + 0xc], ebx
jg 0x462ae9
add ebx, 2
mov dword [ebp + 0xc], ebx
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x90]
test ebx, ebx
je 0x462b3e
cmp dword [ebx + 4], esi
jne 0x462b3e
mov edx, dword [ebp + 0x10]
mov eax, dword [ebx]
mov ecx, dword [ebx + 0xc]
mov dword [edx + 0x90], eax
mov eax, dword [ebx + 0x14]
shl eax, 2
mov dword [ebp + 8], ecx
push eax
push dword [ebx + 0x10]
push dword [edx + 0xc]
call fcn.00478620
mov esi, dword [ebx + 0x18]
mov eax, dword [ebp - 0x120]
mov ebx, dword [ebx + 8]
mov dword [ebp + 0xc], esi
mov dword [ebp - 0xf0], ebx
mov dword [ebp + 0x14], eax
add esp, 0xc
jmp 0x461977
mov edx, dword [ebp - 0x120]
mov ebx, dword [ebp - 0xf0]
mov dword [ebp + 0x14], edx
mov cl, byte [ebx]
cmp cl, 0x55
sete dl
cmp edi, dword [ebp - 0x114]
sete al
or eax, edx
test al, 1
je 0x462b72
add ebx, 3
mov dword [ebp - 0xf0], ebx
jmp 0x461977
mov esi, dword [ebp - 0x110]
mov edx, dword [ebp + 0x20]
mov al, byte [esi]
lea esi, [edx + 1]
cmp al, 0x61
sbb eax, eax
not eax
and eax, 2
cmp cl, 0x57
mov dword [ebp + 0x1c], eax
jne 0x462bdb
push esi
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov edx, dword [ebp - 0xf0]
mov eax, edi
add edx, 3
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46160c
cmp dword [ebp + 0x1c], 0
jne 0x461613
mov ecx, dword [ebp - 0x110]
mov dword [ebp - 0xf0], ecx
jmp 0x4614ce
push esi
mov edx, dword [ebp - 0x110]
push dword [ebp + 0x1c]
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46163a
add dword [ebp - 0xf0], 3
mov dword [ebp + 0x1c], 0
jmp 0x4614ce
mov ebx, dword [ebp + 0x10]
cmp dword [ebx + 0x3c], 0
je 0x462c2d
cmp edi, dword [ebx + 0x64]
je 0x461641
test byte [ebp + 0x14], 2
je case.0x4619a5.1
mov esi, dword [ebp + 0x10]
mov edx, dword [esi + 0x64]
cmp edi, edx
je 0x463c49
cmp edi, dword [esi + 0x68]
je 0x462ca7
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x462c72
cmp edi, edx
jbe 0x462ca7
push dword [ebp - 0xf8]
mov eax, esi
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b370
add esp, 0x14
test eax, eax
jne 0x463c49
jmp 0x462ca7
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x1c]
lea eax, [edx + ecx]
cmp edi, eax
jb 0x462ca7
mov edx, ecx
mov ebx, dword [ebp + 0x10]
neg edx
mov al, byte [ebx + 0x2c]
cmp byte [edx + edi], al
jne 0x462ca7
cmp ecx, 1
je 0x463c49
mov edx, edi
mov al, byte [ebx + 0x2d]
sub edx, ecx
cmp byte [edx + 1], al
je 0x463c49
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x64]
jne 0x461648
jmp 0x463c49
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x84]
add eax, dword [edx + 0x64]
cmp edi, eax
jne 0x46164f
jmp 0x463c49
mov dword [ebp + 8], edi
jmp 0x463c49
test byte [ebp + 0x14], 2
je 0x462d59
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x68]
cmp edi, edx
jae 0x462d47
mov ebx, ecx
mov ecx, dword [ecx + 0x18]
test ecx, ecx
je 0x462d1a
push dword [ebp - 0xf8]
mov eax, ebx
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x463c49
jmp 0x462d40
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x462d40
mov al, byte [esi + 0x2c]
cmp byte [edi], al
jne 0x462d40
dec ecx
je 0x463c49
mov al, byte [esi + 0x2d]
cmp byte [edi + 1], al
je 0x463c49
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x40], 0
jne 0x461656
jmp 0x463c49
mov edx, dword [ebp + 0x10]
cmp dword [edx + 0x40], 0
jne 0x46165d
cmp dword [edx + 0x4c], 0
jne case.0x4619a5.24
mov ecx, edx
mov edx, dword [edx + 0x68]
cmp edi, edx
je 0x463c49
mov ebx, ecx
mov ecx, dword [ecx + 0x18]
test ecx, ecx
je 0x462da3
cmp edi, edx
jae 0x462dd2
push dword [ebp - 0xf8]
mov eax, ebx
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x462dc1
jmp 0x462dd2
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x462dd2
mov al, byte [esi + 0x2c]
cmp byte [edi], al
jne 0x462dd2
dec ecx
je 0x462dc1
mov al, byte [esi + 0x2d]
cmp byte [edi + 1], al
jne 0x462dd2
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x68]
sub eax, dword [edx + 0x1c]
cmp edi, eax
je 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x461664
jmp 0x463c49
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebx + 0x68]
cmp edi, edx
je 0x463c49
mov ecx, dword [ebx + 0x18]
test ecx, ecx
je 0x462e20
cmp edi, edx
jae 0x462e4f
push dword [ebp - 0xf8]
mov eax, ebx
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x462e3e
jmp 0x462e4f
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x462e4f
mov al, byte [esi + 0x2c]
cmp byte [edi], al
jne 0x462e4f
dec ecx
je 0x462e3e
mov al, byte [esi + 0x2d]
cmp byte [edi + 1], al
jne 0x462e4f
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x68]
sub eax, dword [edx + 0x1c]
cmp edi, eax
je 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp dword [ebp - 0xf8], 0
mov eax, dword [ecx + 0x64]
je 0x462fb6
mov dword [ebp - 0x11c], 0
cmp edi, eax
je 0x462f26
movzx eax, byte [edi - 1]
lea edx, [edi - 1]
and eax, 0xc0
add eax, 0xffffff80
jne 0x462e92
dec edx
movzx eax, byte [edx]
jmp 0x462e82
mov ebx, dword [ebp + 0x10]
cmp edx, dword [ebx + 0x74]
jae 0x462e9d
mov dword [ebx + 0x74], edx
movzx esi, byte [edx]
cmp esi, 0xbf
jbe 0x462efe
mov eax, esi
mov dword [ebp - 0x15c], 1
and eax, 0x3f
movzx eax, byte [eax + 0x64f790]
imul ebx, eax, 6
and esi, dword [eax*4 + 0x64f7d0]
mov cl, bl
mov dword [ebp - 0x1fc], eax
shl esi, cl
cmp dword [ebp - 0x15c], eax
jg 0x462efe
mov ecx, dword [ebp - 0x15c]
sub ebx, 6
movzx eax, byte [ecx + edx]
mov cl, bl
and eax, 0x3f
inc dword [ebp - 0x15c]
shl eax, cl
or esi, eax
mov eax, dword [ebp - 0x1fc]
jmp 0x462ed2
mov dword [ebp - 0x11c], 0
cmp esi, 0xff
ja 0x462f26
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 0x10
je 0x462f26
mov dword [ebp - 0x11c], 1
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x462f5b
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463019
mov dword [ebx + 0x58], 1
dec ecx
jg 0x46166b
jmp 0x463019
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x462f98
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp ebx, edx
jg 0x462f98
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc ebx
jmp 0x462f83
xor edx, edx
cmp esi, 0xff
ja 0x463030
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 0x10
je 0x463030
mov dl, 1
jmp 0x463030
mov dword [ebp - 0x11c], 0
cmp edi, eax
je 0x462fec
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x74]
ja 0x462fd2
lea eax, [edi - 1]
mov dword [ebx + 0x74], eax
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi - 1]
mov eax, dword [esi + 0x34]
movzx edx, byte [edx + eax]
shr edx, 4
and edx, 1
mov dword [ebp - 0x11c], edx
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x46301d
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463019
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jg 0x461675
xor edx, edx
jmp 0x463030
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
movzx edx, byte [edx + eax]
shr edx, 4
and edx, 1
mov ebx, dword [ebp - 0xf0]
mov al, byte [ebx]
inc ebx
mov dword [ebp - 0xf0], ebx
cmp al, 5
jne 0x463050
cmp edx, dword [ebp - 0x11c]
je 0x46305c
jmp 0x461977
cmp edx, dword [ebp - 0x11c]
je 0x461977
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x18]
mov edx, dword [esi + 0x68]
test ecx, ecx
je 0x463091
cmp edi, edx
jae case.0x4619a5.13
push dword [ebp - 0xf8]
mov eax, esi
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x4630b1
jmp case.0x4619a5.13
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x1c]
sub edx, ecx
cmp edi, edx
ja case.0x4619a5.13
mov edx, eax
mov al, byte [eax + 0x2c]
cmp byte [edi], al
jne case.0x4619a5.13
dec ecx
je 0x4630b1
mov al, byte [edx + 0x2d]
cmp byte [edi + 1], al
jne case.0x4619a5.13
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
mov eax, edi
inc edi
mov edx, dword [ecx + 0x68]
cmp eax, edx
jb 0x4630f5
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4630ee
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
cmp dword [ebp - 0xf8], 0
je 0x463c49
cmp edi, edx
jae 0x463c49
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x463c49
inc edi
jmp 0x463102
mov esi, dword [ebp + 0x10]
mov eax, edi
inc edi
cmp eax, dword [esi + 0x68]
jb 0x463c49
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463154
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x463194
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46318d
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x4631e0
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x4631e0
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4631c9
cmp esi, 0xff
ja 0x463c49
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 4
jne 0x46167f
jmp 0x463c49
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x463237
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463230
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463283
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463283
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46326c
cmp esi, 0xff
ja 0x46329b
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 4
jne 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x4632da
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4632d3
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463326
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463326
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46330f
cmp esi, 0xff
ja 0x463c49
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 1
jne 0x461686
jmp 0x463c49
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x46337f
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463378
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x4633cb
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x4633cb
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4633b4
cmp esi, 0xff
ja 0x4633e3
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 1
jne 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x463422
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46341b
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x46346e
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x46346e
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x463457
cmp esi, 0xff
ja 0x463c49
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 0x10
jne 0x46168d
jmp 0x463c49
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x4634c7
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4634c0
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463513
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463513
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4634fc
cmp esi, 0xff
ja 0x46352b
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 0x10
jne 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
mov ebx, dword [ecx + 0x68]
cmp edi, ebx
jb 0x46356c
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463565
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x4635b8
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x4635b8
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4635a1
cmp esi, 0xd
je 0x4635e8
ja 0x4635cc
cmp esi, 0xa
je 0x463c49
jb 0x4635e1
jmp 0x4635ff
cmp esi, 0x85
je 0x4635ff
jb 0x4635e1
lea eax, [esi - 0x2028]
cmp eax, 1
jbe 0x4635ff
xor edx, edx
jmp case.default.0x467818
cmp edi, ebx
jae 0x463c49
cmp byte [edi], 0xa
jne 0x463c49
inc edi
jmp 0x463c49
mov esi, dword [ebp + 0x10]
cmp dword [esi + 0x5c], 0
jne 0x461694
jmp 0x463c49
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x46364a
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463643
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463696
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463696
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46367f
cmp esi, 0x180e
je 0x4636eb
ja 0x4636bc
cmp esi, 0x20
je 0x4636eb
ja 0x4636ac
cmp esi, 9
jmp 0x4636e5
cmp esi, 0xa0
je 0x4636eb
cmp esi, 0x1680
jmp 0x4636e5
cmp esi, 0x202f
je 0x4636eb
ja 0x4636d7
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja 0x463c49
jmp 0x4636eb
cmp esi, 0x205f
je 0x4636eb
cmp esi, 0x3000
jne 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x46372a
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463723
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463776
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463776
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46375f
cmp esi, 0x180e
je 0x463c49
ja 0x4637a8
cmp esi, 0x20
je 0x463c49
ja 0x463794
cmp esi, 9
jmp 0x4637d8
cmp esi, 0xa0
je 0x463c49
cmp esi, 0x1680
jmp 0x4637d8
cmp esi, 0x202f
je 0x463c49
ja 0x4637c6
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja 0x4637de
jmp 0x463c49
cmp esi, 0x205f
je 0x463c49
cmp esi, 0x3000
je 0x463c49
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x46381b
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463814
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463867
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463867
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x463850
cmp esi, 0x85
je 0x463888
ja 0x463879
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x463882
lea eax, [esi - 0x2028]
cmp eax, 1
ja 0x463c49
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x4638c8
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4638c1
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463914
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463914
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4638fd
cmp esi, 0x85
je 0x463c49
ja 0x46392a
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x463933
lea eax, [esi - 0x2028]
cmp eax, 1
jbe 0x463c49
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x463978
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463971
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x4639c4
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x4639c4
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4639ad
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
mov esi, dword [ebp - 0xf0]
movzx eax, word [eax + eax + 0x64f8b0]
movzx edx, byte [esi + 1]
lea eax, [eax*8 + 0x65b8b0]
cmp edx, 4
ja case.default.0x4639fa
jmp dword [edx*4 + 0x64ef18]
cmp dword [ebp - 0x144], 0xf
jne 0x463ad2
xor edx, edx
jmp case.default.0x467818
mov cl, byte [eax + 1]
xor ebx, ebx
cmp cl, 9
setne dl
xor eax, eax
cmp cl, 5
setne al
test edx, eax
je 0x463a33
cmp cl, 8
je 0x463a33
mov bl, 1
xor eax, eax
cmp dword [ebp - 0x144], 0xf
sete al
cmp ebx, eax
je 0x463ad2
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp - 0xf0]
movzx eax, byte [eax + 1]
movzx edx, byte [ecx + 2]
cmp edx, dword [eax*4 + 0x64f710]
sete dl
cmp dword [ebp - 0x144], 0x10
sete al
xor eax, edx
test al, 1
je 0x463ad2
xor edx, edx
jmp case.default.0x467818
mov ebx, dword [ebp - 0xf0]
mov al, byte [eax + 1]
cmp byte [ebx + 2], al
sete dl
cmp dword [ebp - 0x144], 0x10
sete al
xor eax, edx
test al, 1
je 0x463ad2
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp - 0xf0]
mov al, byte [eax]
cmp byte [esi + 2], al
sete dl
cmp dword [ebp - 0x144], 0x10
sete al
xor eax, edx
test al, 1
je 0x463ad2
xor edx, edx
jmp case.default.0x467818
mov edx, 0xfffffff2
jmp case.default.0x467818
add dword [ebp - 0xf0], 3
jmp 0x461977
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x68]
mov dword [ebp - 0x160], eax
cmp edi, eax
jb 0x463b22
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463b1b
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x463b6e
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x463b6e
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x463b57
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
je 0x46169b
cmp edi, dword [ebp - 0x160]
jae 0x463c49
mov dword [ebp - 0x164], 1
cmp dword [ebp - 0xf8], 0
mov al, byte [edi]
jne 0x463bc6
movzx esi, al
jmp 0x463c10
movzx esi, al
cmp esi, 0xbf
jbe 0x463c10
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x164], edx
jg 0x463c09
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x463bf4
inc edx
mov dword [ebp - 0x164], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
jne 0x463c49
add edi, dword [ebp - 0x164]
jmp 0x463ba0
inc dword [ebp - 0xf0]
jmp 0x461977
mov esi, dword [ebp - 0xf0]
movzx eax, byte [esi + 1]
movzx edx, byte [esi + 2]
shl eax, 8
add esi, 3
or eax, edx
mov edx, dword [ebp + 0xc]
add eax, eax
mov dword [ebp - 0xf0], esi
mov dword [ebp - 0x140], eax
cmp eax, edx
jge 0x463c92
mov ecx, dword [ebp + 0x10]
mov ebx, dword [ebp - 0x140]
mov eax, dword [ecx + 0xc]
mov edx, dword [eax + ebx*4]
test edx, edx
jns 0x463cad
mov esi, dword [ebp + 0x10]
mov dword [ebp - 0x138], 0
cmp dword [esi + 0x48], 0
jne 0x463cbf
mov eax, dword [esi + 0x68]
sub eax, edi
inc eax
jmp 0x463cb9
mov ecx, dword [ebp - 0x140]
mov eax, dword [eax + ecx*4 + 4]
sub eax, edx
mov dword [ebp - 0x138], eax
mov ebx, dword [ebp - 0xf0]
mov dl, byte [ebx]
movzx eax, dl
cmp eax, 0x46
jl 0x463d6b
cmp eax, 0x4b
jle 0x463ce3
cmp eax, 0x4d
jg 0x463d6b
jmp 0x463d22
lea esi, [eax - 0x46]
inc dword [ebp - 0xf0]
mov eax, esi
movsx ebx, byte [esi + 0x64ed46]
movsx esi, byte [esi + 0x64ed40]
and eax, 1
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0xfc], eax
test esi, esi
jne 0x463dcc
mov dword [ebp - 0x13c], 0x7fffffff
jmp 0x463dcc
xor eax, eax
cmp dl, 0x4d
mov edx, dword [ebp - 0xf0]
sete al
mov dword [ebp - 0xfc], eax
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
movzx eax, byte [edx + 3]
movzx edx, byte [edx + 4]
shl eax, 8
or eax, edx
mov dword [ebp - 0x13c], eax
jne 0x463d62
mov dword [ebp - 0x13c], 0x7fffffff
add dword [ebp - 0xf0], 5
jmp 0x463dcc
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0x138]
mov edx, edi
mov eax, dword [ebp - 0x140]
call fcn.00461340
add esp, 0xc
test eax, eax
jne 0x463dc1
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x463dba
cmp edi, dword [ebx + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463dba
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
add edi, dword [ebp - 0x138]
jmp 0x461977
cmp dword [ebp - 0x138], 0
je 0x461977
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x463e4f
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0x138]
mov edx, edi
mov eax, dword [ebp - 0x140]
call fcn.00461340
add esp, 0xc
test eax, eax
jne 0x463e41
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x463e3a
cmp edi, dword [esi + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463e3a
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
add edi, dword [ebp - 0x138]
inc dword [ebp - 0xf4]
jmp 0x463de3
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x463f1a
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4616a2
mov eax, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], eax
jge 0x4616a9
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0x138]
mov edx, edi
mov eax, dword [ebp - 0x140]
call fcn.00461340
add esp, 0xc
test eax, eax
jne 0x463f09
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x78]
test ecx, ecx
je 0x463f02
cmp edi, dword [edx + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463f02
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
add edi, dword [ebp - 0x138]
inc dword [ebp - 0xf4]
jmp 0x463e6e
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x463f9e
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp - 0x138]
mov edx, edi
mov eax, dword [ebp - 0x140]
call fcn.00461340
add esp, 0xc
test eax, eax
jne 0x463f84
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x78]
test ecx, ecx
je 0x463f9e
cmp edi, dword [eax + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x463f9e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
jmp 0x463f9e
inc dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x138]
cmp dword [ebp - 0xf4], ecx
jmp 0x463f2e
cmp edi, dword [ebp - 0x10c]
jb 0x463fde
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4616b0
sub edi, dword [ebp - 0x138]
jmp 0x463f9e
xor edx, edx
jmp case.default.0x467818
mov ebx, dword [ebp - 0xf0]
add dword [ebp - 0xf0], 0x21
inc ebx
mov esi, dword [ebp - 0xf0]
mov dword [ebp - 0x108], ebx
mov dl, byte [esi]
movzx eax, dl
cmp eax, 0x46
jl 0x46409e
cmp eax, 0x4b
jle 0x46401d
cmp eax, 0x4d
jg 0x46409e
jmp 0x464055
lea esi, [eax - 0x46]
inc dword [ebp - 0xf0]
mov eax, esi
movsx ebx, byte [esi + 0x64ed46]
movsx esi, byte [esi + 0x64ed40]
and eax, 1
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0xfc], eax
test esi, esi
jne 0x4640ad
mov dword [ebp - 0x13c], 0x7fffffff
jmp 0x4640ad
xor eax, eax
cmp dl, 0x4d
mov edx, dword [ebp - 0xf0]
sete al
mov dword [ebp - 0xfc], eax
movzx ebx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ebx, 8
or ebx, eax
movzx eax, byte [edx + 3]
movzx edx, byte [edx + 4]
shl eax, 8
or eax, edx
mov dword [ebp - 0x13c], eax
jne 0x464095
mov dword [ebp - 0x13c], 0x7fffffff
add dword [ebp - 0xf0], 5
jmp 0x4640ad
mov dword [ebp - 0x13c], 1
mov ebx, 1
cmp dword [ebp - 0xf8], 0
je 0x464184
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4641f6
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x464108
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464101
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x464143
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x464143
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46412c
cmp esi, 0xff
jbe 0x46415b
cmp dword [ebp - 0x144], 0x4e
jne 0x464179
xor edx, edx
jmp case.default.0x467818
mov eax, esi
mov edx, dword [ebp - 0x108]
shr eax, 3
and esi, 7
mov ecx, esi
movzx eax, byte [eax + edx]
sar eax, cl
test al, 1
je 0x4616b7
inc dword [ebp - 0xf4]
jmp 0x4640c4
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4641f6
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x4641cc
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4641c5
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
mov eax, esi
mov edx, dword [ebp - 0x108]
shr eax, 3
and esi, 7
mov ecx, esi
inc edi
movzx eax, byte [eax + edx]
sar eax, cl
test al, 1
je 0x4616be
inc dword [ebp - 0xf4]
jmp 0x46418e
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x4643bb
mov dword [ebp - 0xf4], ebx
cmp dword [ebp - 0xf8], 0
je 0x464316
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4616c5
mov ebx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ebx
jge 0x4616cc
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x46429a
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464293
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x4642d5
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x4642d5
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4642be
cmp esi, 0xff
jbe 0x4642ed
cmp dword [ebp - 0x144], 0x4e
jne 0x46430b
xor edx, edx
jmp case.default.0x467818
mov eax, esi
mov edx, dword [ebp - 0x108]
shr eax, 3
and esi, 7
mov ecx, esi
movzx eax, byte [eax + edx]
sar eax, cl
test al, 1
je 0x4616d3
inc dword [ebp - 0xf4]
jmp 0x464222
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4616da
mov ebx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ebx
jge 0x4616e1
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x46438e
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464387
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
mov eax, esi
mov edx, dword [ebp - 0x108]
shr eax, 3
and esi, 7
mov ecx, esi
inc edi
movzx eax, byte [eax + edx]
sar eax, cl
test al, 1
je 0x4616e8
inc dword [ebp - 0xf4]
jmp 0x464316
mov dword [ebp - 0x10c], edi
cmp dword [ebp - 0xf8], 0
je 0x464508
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x4644b9
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x168], 1
cmp edi, dword [eax + 0x68]
jb 0x464427
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4644b9
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
jmp 0x4644b9
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x464471
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x168], edx
jg 0x46446a
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x464455
inc edx
mov dword [ebp - 0x168], edx
cmp esi, 0xff
jbe 0x464482
cmp dword [ebp - 0x144], 0x4e
jmp 0x46449a
mov eax, esi
mov ecx, dword [ebp - 0x108]
shr eax, 3
and esi, 7
movzx eax, byte [eax + ecx]
mov ecx, esi
sar eax, cl
test al, 1
je 0x4644b9
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x168]
cmp dword [ebp - 0xf4], ebx
jmp 0x4643dc
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4616ef
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x4645b9
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x4644b9
dec edi
jmp 0x4644f8
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46457e
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x46454c
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46457e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
jmp 0x46457e
movzx esi, byte [edi]
mov eax, esi
mov ecx, dword [ebp - 0x108]
shr eax, 3
and esi, 7
movzx eax, byte [eax + ecx]
mov ecx, esi
sar eax, cl
test al, 1
je 0x46457e
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], ebx
jmp 0x464516
cmp edi, dword [ebp - 0x10c]
jb 0x4645b9
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4616f6
dec edi
jmp 0x46457e
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf0]
add esi, 3
mov dword [ebp - 0x108], esi
movzx eax, byte [edx + 1]
movzx edx, byte [edx + 2]
shl eax, 8
or eax, edx
add dword [ebp - 0xf0], eax
mov ecx, dword [ebp - 0xf0]
mov dl, byte [ecx]
movzx eax, dl
cmp eax, 0x46
jl 0x46468d
cmp eax, 0x4b
jle 0x46460c
cmp eax, 0x4d
jg 0x46468d
jmp 0x464644
lea esi, [eax - 0x46]
inc dword [ebp - 0xf0]
mov ebx, esi
and ebx, 1
mov dword [ebp - 0xfc], ebx
movsx ebx, byte [esi + 0x64ed46]
movsx esi, byte [esi + 0x64ed40]
mov dword [ebp - 0x13c], esi
test esi, esi
jne 0x46469c
mov dword [ebp - 0x13c], 0x7fffffff
jmp 0x46469c
xor eax, eax
mov esi, dword [ebp - 0xf0]
cmp dl, 0x4d
sete al
mov dword [ebp - 0xfc], eax
movzx ebx, byte [esi + 1]
movzx eax, byte [esi + 2]
shl ebx, 8
or ebx, eax
movzx eax, byte [esi + 3]
movzx edx, byte [esi + 4]
shl eax, 8
or eax, edx
mov dword [ebp - 0x13c], eax
jne 0x464684
mov dword [ebp - 0x13c], 0x7fffffff
add dword [ebp - 0xf0], 5
jmp 0x46469c
mov dword [ebp - 0x13c], 1
mov ebx, 1
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x464758
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x4646eb
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4646e4
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x464737
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x464737
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x464720
push dword [ebp - 0x108]
push esi
call fcn.0046b5f0
pop ecx
test eax, eax
pop esi
je 0x4616fd
inc dword [ebp - 0xf4]
jmp 0x4646a6
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x46485c
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461704
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x46170b
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x4647ef
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4647e8
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x46483b
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x46483b
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x464824
push dword [ebp - 0x108]
push esi
call fcn.0046b5f0
pop esi
test eax, eax
pop edx
je 0x461712
inc dword [ebp - 0xf4]
jmp 0x464777
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x464945
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x16c], 1
cmp edi, dword [eax + 0x68]
jb 0x4648bb
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464945
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
jmp 0x464945
movzx esi, byte [edi]
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x464916
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x16c], edx
jg 0x46490f
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4648fa
inc edx
mov dword [ebp - 0x16c], edx
push dword [ebp - 0x108]
push esi
call fcn.0046b5f0
pop ecx
test eax, eax
pop ebx
je 0x464945
inc dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x16c]
cmp dword [ebp - 0xf4], ecx
jmp 0x464870
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461719
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x464999
cmp dword [ebp - 0xf8], 0
je 0x464945
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x464945
dec edi
jmp 0x464989
xor edx, edx
jmp case.default.0x467818
cmp dword [ebp - 0xf8], 0
je 0x464a5f
inc dword [ebp - 0xf0]
mov dword [ebp - 0x138], 1
mov ebx, dword [ebp - 0xf0]
movzx esi, byte [ebx]
cmp esi, 0xbf
jbe 0x4649eb
and esi, 0x3f
mov edx, 1
movzx eax, byte [esi + 0x64f790]
cmp edx, eax
jg 0x4649e4
inc edx
jmp 0x4649dd
inc eax
mov dword [ebp - 0x138], eax
mov esi, dword [ebp + 0x10]
mov edx, dword [esi + 0x68]
mov eax, edx
sub eax, edi
cmp dword [ebp - 0x138], eax
jle 0x464a2f
mov ecx, dword [esi + 0x78]
test ecx, ecx
je 0x464a28
cmp edi, edx
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464a28
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp - 0x138]
dec dword [ebp - 0x138]
test eax, eax
jle 0x461977
mov ecx, dword [ebp - 0xf0]
mov dl, byte [edi]
inc edi
mov al, byte [ecx]
inc ecx
mov dword [ebp - 0xf0], ecx
cmp al, dl
jne 0x461720
jmp 0x464a2f
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x68]
sub eax, edi
test eax, eax
jg 0x464a99
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464a92
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp - 0xf0]
mov al, byte [edi]
inc edi
cmp byte [esi + 1], al
jne 0x461727
add esi, 2
mov dword [ebp - 0xf0], esi
jmp 0x461977
cmp dword [ebp - 0xf8], 0
je 0x464c58
inc dword [ebp - 0xf0]
mov dword [ebp - 0x138], 1
mov eax, dword [ebp - 0xf0]
mov al, byte [eax]
movzx esi, al
mov byte [ebp - 0x16d], al
cmp esi, 0xbf
jbe 0x464b3e
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
mov dword [ebp - 0x1fc], ecx
shl esi, cl
cmp ebx, edx
jg 0x464b37
sub dword [ebp - 0x1fc], 6
mov ecx, dword [ebp - 0xf0]
movzx eax, byte [ebx + ecx]
mov cl, byte [ebp - 0x1fc]
and eax, 0x3f
shl eax, cl
or esi, eax
inc ebx
jmp 0x464b12
inc edx
mov dword [ebp - 0x138], edx
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebx + 0x68]
mov eax, edx
sub eax, edi
cmp dword [ebp - 0x138], eax
jle 0x464b82
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x464b7b
cmp edi, edx
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464b7b
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x7f
mov al, byte [edi]
lea ebx, [edi + 1]
ja 0x464bb7
mov esi, dword [ebp + 0x10]
inc dword [ebp - 0xf0]
mov edx, dword [esi + 0x30]
mov edi, ebx
movzx ecx, byte [ebp - 0x16d]
movzx eax, al
mov al, byte [eax + edx]
cmp byte [ecx + edx], al
je 0x461977
xor edx, edx
jmp case.default.0x467818
movzx eax, al
mov dword [ebp - 0x1fc], eax
mov edi, ebx
cmp eax, 0xbf
jbe 0x464c08
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ebx, edx, 6
mov eax, dword [edx*4 + 0x64f7d0]
mov cl, bl
and dword [ebp - 0x1fc], eax
shl dword [ebp - 0x1fc], cl
mov eax, edx
dec edx
test eax, eax
jle 0x464c08
movzx eax, byte [edi]
sub ebx, 6
and eax, 0x3f
mov cl, bl
inc edi
shl eax, cl
or dword [ebp - 0x1fc], eax
jmp 0x464beb
mov ebx, dword [ebp - 0x138]
add dword [ebp - 0xf0], ebx
cmp esi, dword [ebp - 0x1fc]
je 0x461977
mov eax, esi
mov edx, esi
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, edx
movzx eax, word [eax + eax + 0x64f8b0]
add esi, dword [eax*8 + 0x65b8b4]
cmp dword [ebp - 0x1fc], esi
je 0x461977
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
mov eax, dword [esi + 0x68]
sub eax, edi
test eax, eax
jg 0x464c92
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464c8b
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp - 0xf0]
mov ebx, dword [ebp + 0x10]
movzx ecx, byte [eax + 1]
movzx eax, byte [edi]
mov edx, dword [ebx + 0x30]
inc edi
mov al, byte [eax + edx]
cmp byte [ecx + edx], al
jne 0x46172e
add dword [ebp - 0xf0], 2
jmp 0x461977
mov esi, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf0]
movzx esi, byte [esi + 1]
movzx eax, byte [edx + 2]
shl esi, 8
add edx, 3
or esi, eax
mov dword [ebp - 0xf0], edx
mov ebx, esi
mov dword [ebp - 0x13c], esi
jmp 0x464db4
mov dword [ebp - 0x100], 1
mov ecx, dword [ebp - 0xf0]
mov esi, dword [ebp - 0xf0]
xor ebx, ebx
movzx ecx, byte [ecx + 1]
movzx eax, byte [esi + 2]
shl ecx, 8
or ecx, eax
xor eax, eax
cmp dl, 0x26
mov dword [ebp - 0x13c], ecx
sete al
add esi, 3
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf0], esi
jmp 0x464db4
xor ebx, ebx
mov dword [ebp - 0x100], 1
jmp 0x464d51
mov dword [ebp - 0x100], 1
mov ebx, 1
mov dword [ebp - 0x13c], 0x7fffffff
jmp 0x464d73
mov dword [ebp - 0x100], 1
xor ebx, ebx
mov dword [ebp - 0x13c], 1
inc dword [ebp - 0xf0]
jmp 0x464db4
movzx eax, dl
inc dword [ebp - 0xf0]
lea esi, [eax - 0x1f]
mov eax, esi
movsx ebx, byte [esi + 0x64ed46]
movsx esi, byte [esi + 0x64ed40]
and eax, 1
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0xfc], eax
test esi, esi
jne 0x464db4
mov dword [ebp - 0x13c], 0x7fffffff
mov edx, dword [ebp - 0xf0]
cmp dword [ebp - 0xf8], 0
mov al, byte [edx]
je 0x4651a3
movzx esi, al
mov dword [ebp - 0x138], 1
mov dword [ebp - 0x104], edx
cmp esi, 0xbf
jbe 0x464e4d
mov eax, esi
mov dword [ebp - 0x174], 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
mov dword [ebp - 0x1fc], ecx
shl esi, cl
cmp dword [ebp - 0x138], edx
jg 0x464e46
sub dword [ebp - 0x1fc], 6
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0xf0]
movzx eax, byte [eax + ecx]
inc dword [ebp - 0x174]
and eax, 0x3f
mov cl, byte [ebp - 0x1fc]
shl eax, cl
or esi, eax
cmp dword [ebp - 0x174], edx
jmp 0x464e12
inc edx
mov dword [ebp - 0x138], edx
mov eax, dword [ebp - 0x138]
add dword [ebp - 0xf0], eax
dec eax
jle 0x4651ac
test byte [ebp + 0x14], 1
je 0x464ea8
mov eax, esi
mov edx, esi
shr eax, 7
and edx, 0x7f
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, edx
mov edx, esi
movzx eax, word [eax + eax + 0x64f8b0]
add edx, dword [eax*8 + 0x65b8b4]
cmp edx, esi
je 0x464ea8
lea eax, [ebp - 0xec]
push eax
push edx
call fcn.0046b230
mov dword [ebp - 0x130], eax
pop eax
pop edx
jmp 0x464eb2
mov dword [ebp - 0x130], 0
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x464f71
mov edx, dword [ebp + 0x10]
mov esi, dword [edx + 0x68]
mov eax, esi
sub eax, dword [ebp - 0x138]
cmp edi, eax
ja 0x464efb
push dword [ebp - 0x138]
push dword [ebp - 0x104]
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x464efb
add edi, dword [ebp - 0x138]
jmp 0x464f66
cmp dword [ebp - 0x130], 0
jle 0x464f30
sub esi, dword [ebp - 0x130]
cmp edi, esi
ja 0x464f30
push dword [ebp - 0x130]
lea eax, [ebp - 0xec]
push eax
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x464f30
add edi, dword [ebp - 0x130]
jmp 0x464f66
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x464f5f
cmp edi, dword [ebx + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x464f5f
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x464ebc
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x46507e
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461735
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jge 0x46173c
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x68]
mov eax, ebx
sub eax, dword [ebp - 0x138]
cmp edi, eax
ja 0x465005
push dword [ebp - 0x138]
push dword [ebp - 0x104]
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x465005
add edi, dword [ebp - 0x138]
jmp 0x465073
cmp dword [ebp - 0x130], 0
jle 0x46503a
sub ebx, dword [ebp - 0x130]
cmp edi, ebx
ja 0x46503a
push dword [ebp - 0x130]
lea eax, [ebp - 0xec]
push eax
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x46503a
add edi, dword [ebp - 0x130]
jmp 0x465073
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x78]
test ecx, ecx
je 0x46506c
cmp edi, dword [edx + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46506c
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x464f90
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46514a
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + 0x68]
mov eax, ebx
sub eax, dword [ebp - 0x138]
cmp edi, eax
ja 0x4650cb
push dword [ebp - 0x138]
push dword [ebp - 0x104]
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x4650cb
add edi, dword [ebp - 0x138]
jmp 0x465133
cmp dword [ebp - 0x130], 0
jle 0x465100
sub ebx, dword [ebp - 0x130]
cmp edi, ebx
ja 0x465100
push dword [ebp - 0x130]
lea eax, [ebp - 0xec]
push eax
push edi
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x465100
add edi, dword [ebp - 0x130]
jmp 0x465133
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x78]
test ecx, ecx
je 0x46514a
cmp edi, dword [edx + 0x68]
setae dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46514a
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x46514a
mov edx, 0xfffffff4
jmp case.default.0x467818
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jmp 0x465092
cmp dword [ebp - 0x100], 0
jne 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461743
cmp edi, dword [ebp - 0x10c]
je 0x46174a
dec edi
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x465157
jmp 0x465193
inc dword [ebp - 0xf0]
movzx esi, al
test byte [ebp + 0x14], 1
je 0x46539b
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x30]
movzx esi, byte [esi + edx]
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x465222
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x46520a
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465203
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
movzx eax, byte [eax + edx]
cmp esi, eax
jne 0x461751
inc dword [ebp - 0xf4]
jmp 0x4651ca
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x4652dd
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461758
mov eax, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], eax
jge 0x46175f
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x4652bc
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4652b5
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx eax, byte [edi]
mov edx, dword [ecx + 0x30]
inc edi
movzx eax, byte [eax + edx]
cmp esi, eax
jne 0x461766
inc dword [ebp - 0xf4]
jmp 0x465241
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x46534c
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x465326
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46534c
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x46534c
mov edx, 0xfffffff4
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx eax, byte [edi]
mov edx, dword [ecx + 0x30]
movzx eax, byte [eax + edx]
cmp esi, eax
jne 0x46534c
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], ebx
jmp 0x4652f1
cmp dword [ebp - 0x100], 0
jne 0x461977
cmp edi, dword [ebp - 0x10c]
jb 0x465394
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
dec edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46176d
jmp 0x465359
xor edx, edx
jmp case.default.0x467818
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4653fa
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x4653e6
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4653df
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp esi, eax
jne 0x461774
inc dword [ebp - 0xf4]
jmp 0x4653a5
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x4654a8
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46177b
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x461782
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x465491
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46548a
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp esi, eax
jne 0x461789
inc dword [ebp - 0xf4]
jmp 0x465419
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0x10c], edi
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x46550d
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x4654f1
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46550d
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x46550d
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx eax, byte [edi]
cmp esi, eax
jne 0x46550d
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x4654bc
cmp dword [ebp - 0x100], 0
jne 0x461977
cmp edi, dword [ebp - 0x10c]
jb 0x465555
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
dec edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461790
jmp 0x46551a
xor edx, edx
jmp case.default.0x467818
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x465595
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46558e
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf0]
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x4655e7
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x4655e7
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x4655d0
test byte [ebp + 0x14], 1
je 0x465628
cmp esi, 0xff
ja 0x4655ff
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x30]
movzx esi, byte [esi + eax]
mov ecx, dword [ebp - 0xf0]
mov ebx, dword [ebp + 0x10]
movzx eax, byte [ecx]
mov edx, dword [ebx + 0x30]
inc ecx
movzx eax, byte [eax + edx]
mov dword [ebp - 0xf0], ecx
cmp eax, esi
jne 0x461977
xor edx, edx
jmp case.default.0x467818
mov edx, dword [ebp - 0xf0]
movzx eax, byte [edx]
inc edx
cmp eax, esi
mov dword [ebp - 0xf0], edx
jne 0x461977
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp - 0xf0]
mov ebx, dword [ebp - 0xf0]
movzx ecx, byte [ecx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
add dword [ebp - 0xf0], 3
or ecx, eax
mov ebx, ecx
mov dword [ebp - 0x13c], ecx
jmp 0x465767
mov esi, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xf0]
xor ebx, ebx
movzx esi, byte [esi + 1]
movzx eax, byte [ecx + 2]
shl esi, 8
or esi, eax
xor eax, eax
cmp dl, 0x33
mov dword [ebp - 0x13c], esi
sete al
add ecx, 3
mov dword [ebp - 0xfc], eax
mov dword [ebp - 0xf0], ecx
jmp 0x465767
xor ebx, ebx
mov dword [ebp - 0x100], 1
jmp 0x4656ce
mov dword [ebp - 0x100], 1
mov ebx, 1
mov dword [ebp - 0x13c], 0x7fffffff
jmp 0x4656f0
mov dword [ebp - 0x100], 1
xor ebx, ebx
mov dword [ebp - 0x13c], 1
inc dword [ebp - 0xf0]
jmp 0x465767
mov esi, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf0]
mov dword [ebp - 0x100], 1
xor ebx, ebx
movzx esi, byte [esi + 1]
movzx eax, byte [edx + 2]
shl esi, 8
add edx, 3
or esi, eax
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0x13c], esi
jmp 0x465767
movzx eax, dl
inc dword [ebp - 0xf0]
lea esi, [eax - 0x2c]
mov ecx, esi
movsx ebx, byte [esi + 0x64ed46]
movsx esi, byte [esi + 0x64ed40]
and ecx, 1
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0xfc], ecx
test esi, esi
jne 0x465767
mov dword [ebp - 0x13c], 0x7fffffff
mov eax, dword [ebp - 0xf0]
movzx esi, byte [eax]
inc eax
test byte [ebp + 0x14], 1
mov dword [ebp - 0xf0], eax
je 0x465cd5
mov edx, dword [ebp + 0x10]
cmp dword [ebp - 0xf8], 0
mov edx, dword [edx + 0x30]
mov dword [ebp - 0x178], edx
movzx esi, byte [esi + edx]
je 0x465881
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4658e9
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x4657ec
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4657e5
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
mov dword [ebp - 0x1fc], eax
cmp eax, 0xbf
jbe 0x465848
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
mov eax, dword [edx*4 + 0x64f7d0]
mov dword [ebp - 0x17c], ecx
and dword [ebp - 0x1fc], eax
shl dword [ebp - 0x1fc], cl
mov eax, edx
dec edx
test eax, eax
jle 0x465848
sub dword [ebp - 0x17c], 6
movzx eax, byte [edi]
mov cl, byte [ebp - 0x17c]
and eax, 0x3f
shl eax, cl
or dword [ebp - 0x1fc], eax
inc edi
jmp 0x465823
cmp dword [ebp - 0x1fc], 0xff
ja 0x46586a
mov eax, dword [ebp - 0x1fc]
mov edx, dword [ebp - 0x178]
movzx eax, byte [eax + edx]
mov dword [ebp - 0x1fc], eax
cmp esi, dword [ebp - 0x1fc]
je 0x461797
inc dword [ebp - 0xf4]
jmp 0x4657a8
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4658e9
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x4658cb
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4658c4
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
mov edx, dword [ebp - 0x178]
inc edi
movzx eax, byte [eax + edx]
cmp esi, eax
je 0x46179e
inc dword [ebp - 0xf4]
jmp 0x46588b
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x465aaf
mov dword [ebp - 0xf4], ebx
cmp dword [ebp - 0xf8], 0
je 0x465a16
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4617a5
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x4617ac
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x46598d
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465986
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
mov dword [ebp - 0x1fc], eax
cmp eax, 0xbf
jbe 0x4659dd
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ebx, edx, 6
mov ecx, dword [edx*4 + 0x64f7d0]
and dword [ebp - 0x1fc], ecx
mov cl, bl
shl dword [ebp - 0x1fc], cl
mov eax, edx
dec edx
test eax, eax
jle 0x4659dd
movzx eax, byte [edi]
sub ebx, 6
and eax, 0x3f
mov cl, bl
inc edi
shl eax, cl
or dword [ebp - 0x1fc], eax
jmp 0x4659c0
cmp dword [ebp - 0x1fc], 0xff
ja 0x4659ff
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebp - 0x1fc]
mov eax, dword [ebx + 0x30]
movzx eax, byte [edx + eax]
mov dword [ebp - 0x1fc], eax
cmp esi, dword [ebp - 0x1fc]
je 0x4617b3
inc dword [ebp - 0xf4]
jmp 0x465915
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4617ba
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x4617c1
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x465a8e
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465a87
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx eax, byte [edi]
mov edx, dword [ecx + 0x30]
inc edi
movzx eax, byte [eax + edx]
cmp esi, eax
je 0x4617c8
inc dword [ebp - 0xf4]
jmp 0x465a16
mov dword [ebp - 0x10c], edi
cmp dword [ebp - 0xf8], 0
je 0x465c1e
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x465bc2
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x180], 1
cmp edi, dword [edx + 0x68]
jb 0x465b1b
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465bc2
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x465bc2
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx edx, byte [edi]
cmp edx, 0xbf
jbe 0x465b8f
mov eax, edx
mov dword [ebp - 0x184], 1
and eax, 0x3f
movzx eax, byte [eax + 0x64f790]
imul ebx, eax, 6
and edx, dword [eax*4 + 0x64f7d0]
mov cl, bl
shl edx, cl
cmp dword [ebp - 0x180], eax
mov dword [ebp - 0x1fc], eax
jg 0x465b82
mov ecx, dword [ebp - 0x184]
sub ebx, 6
movzx eax, byte [ecx + edi]
mov cl, bl
and eax, 0x3f
inc dword [ebp - 0x184]
shl eax, cl
or edx, eax
mov eax, dword [ebp - 0x1fc]
cmp dword [ebp - 0x184], eax
jmp 0x465b56
mov ecx, dword [ebp - 0x1fc]
inc ecx
mov dword [ebp - 0x180], ecx
cmp edx, 0xff
ja 0x465ba1
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x30]
movzx edx, byte [edx + eax]
cmp esi, edx
je 0x465bc2
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
add edi, dword [ebp - 0x180]
cmp dword [ebp - 0xf4], eax
jmp 0x465ad0
cmp dword [ebp - 0x100], 0
jne 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4617cf
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x465cce
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x465bcf
dec edi
jmp 0x465c0e
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, edx
jge 0x465c86
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x465c60
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465c86
mov dword [ebx + 0x58], 1
dec ecx
jle 0x465c86
mov edx, 0xfffffff4
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx eax, byte [edi]
mov edx, dword [ecx + 0x30]
movzx eax, byte [eax + edx]
cmp esi, eax
je 0x465c86
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], ebx
jmp 0x465c2c
cmp dword [ebp - 0x100], 0
jne 0x461977
cmp edi, dword [ebp - 0x10c]
jb 0x465cce
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4617d6
dec edi
jmp 0x465c93
xor edx, edx
jmp case.default.0x467818
cmp dword [ebp - 0xf8], 0
je 0x465daf
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x465e0e
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x465d31
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465d2a
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx ecx, byte [edi]
inc edi
mov dword [ebp - 0x1fc], ecx
cmp ecx, 0xbf
jbe 0x465d98
mov eax, ecx
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul eax, edx, 6
mov dword [ebp - 0x188], eax
mov eax, dword [edx*4 + 0x64f7d0]
and ecx, eax
mov dword [ebp - 0x1fc], ecx
mov cl, byte [ebp - 0x188]
shl dword [ebp - 0x1fc], cl
mov eax, edx
dec edx
test eax, eax
jle 0x465d98
sub dword [ebp - 0x188], 6
movzx eax, byte [edi]
mov cl, byte [ebp - 0x188]
and eax, 0x3f
shl eax, cl
or dword [ebp - 0x1fc], eax
inc edi
jmp 0x465d73
cmp esi, dword [ebp - 0x1fc]
je 0x4617dd
inc dword [ebp - 0xf4]
jmp 0x465cec
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x465e0e
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x465dfa
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465df3
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp esi, eax
je 0x4617e4
inc dword [ebp - 0xf4]
jmp 0x465db9
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x465fab
mov dword [ebp - 0xf4], ebx
cmp dword [ebp - 0xf8], 0
je 0x465f19
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4617eb
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x4617f2
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x465eb2
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465eab
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
mov dword [ebp - 0x1fc], eax
cmp eax, 0xbf
jbe 0x465f02
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ebx, edx, 6
mov ecx, dword [edx*4 + 0x64f7d0]
and dword [ebp - 0x1fc], ecx
mov cl, bl
shl dword [ebp - 0x1fc], cl
mov eax, edx
dec edx
test eax, eax
jle 0x465f02
movzx eax, byte [edi]
sub ebx, 6
and eax, 0x3f
mov cl, bl
inc edi
shl eax, cl
or dword [ebp - 0x1fc], eax
jmp 0x465ee5
cmp esi, dword [ebp - 0x1fc]
je 0x4617f9
inc dword [ebp - 0xf4]
jmp 0x465e3a
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461800
mov ebx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ebx
jge 0x461807
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x465f94
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x465f8d
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp esi, eax
je 0x46180e
inc dword [ebp - 0xf4]
jmp 0x465f19
mov dword [ebp - 0x10c], edi
cmp dword [ebp - 0xf8], 0
je 0x466105
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, ecx
jge 0x4660a9
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x18c], 1
cmp edi, dword [ebx + 0x68]
jb 0x466014
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4660a9
mov dword [ebx + 0x58], 1
dec ecx
jle 0x4660a9
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx edx, byte [edi]
cmp edx, 0xbf
jbe 0x466088
mov eax, edx
mov dword [ebp - 0x190], 1
and eax, 0x3f
movzx eax, byte [eax + 0x64f790]
imul ebx, eax, 6
and edx, dword [eax*4 + 0x64f7d0]
mov cl, bl
shl edx, cl
cmp dword [ebp - 0x18c], eax
mov dword [ebp - 0x1fc], eax
jg 0x46607b
mov ecx, dword [ebp - 0x190]
sub ebx, 6
movzx eax, byte [ecx + edi]
mov cl, bl
and eax, 0x3f
inc dword [ebp - 0x190]
shl eax, cl
or edx, eax
mov eax, dword [ebp - 0x1fc]
cmp dword [ebp - 0x190], eax
jmp 0x46604f
mov ecx, dword [ebp - 0x1fc]
inc ecx
mov dword [ebp - 0x18c], ecx
cmp esi, edx
je 0x4660a9
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x18c]
cmp dword [ebp - 0xf4], ebx
jmp 0x465fcc
cmp dword [ebp - 0x100], 0
jne 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461815
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x4661ac
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x4660b6
dec edi
jmp 0x4660f5
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x466164
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x466148
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466164
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x466164
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx eax, byte [edi]
cmp esi, eax
je 0x466164
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x466113
cmp dword [ebp - 0x100], 0
jne 0x461977
cmp edi, dword [ebp - 0x10c]
jb 0x4661ac
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46181c
dec edi
jmp 0x466171
xor edx, edx
jmp case.default.0x467818
mov edx, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xf0]
movzx edx, byte [edx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
mov dword [ebp - 0xfc], 1
or edx, eax
mov ebx, edx
mov dword [ebp - 0x13c], edx
jmp 0x46620f
mov esi, dword [ebp - 0xf0]
mov ecx, dword [ebp - 0xf0]
xor ebx, ebx
movzx esi, byte [esi + 1]
movzx eax, byte [ecx + 2]
shl esi, 8
or esi, eax
xor eax, eax
cmp dl, 0x40
mov dword [ebp - 0x13c], esi
sete al
mov dword [ebp - 0xfc], eax
add ecx, 3
mov dword [ebp - 0xf0], ecx
jmp 0x4662d3
xor ebx, ebx
mov dword [ebp - 0x100], 1
jmp 0x46623a
mov dword [ebp - 0x100], 1
mov ebx, 1
mov dword [ebp - 0x13c], 0x7fffffff
jmp 0x46625c
mov dword [ebp - 0x100], 1
xor ebx, ebx
mov dword [ebp - 0x13c], 1
inc dword [ebp - 0xf0]
jmp 0x4662d3
mov esi, dword [ebp - 0xf0]
mov edx, dword [ebp - 0xf0]
mov dword [ebp - 0x100], 1
xor ebx, ebx
movzx esi, byte [esi + 1]
movzx eax, byte [edx + 2]
shl esi, 8
add edx, 3
or esi, eax
mov dword [ebp - 0xf0], edx
mov dword [ebp - 0x13c], esi
jmp 0x4662d3
movzx eax, dl
inc dword [ebp - 0xf0]
lea esi, [eax - 0x39]
mov ecx, esi
movsx ebx, byte [esi + 0x64ed46]
movsx esi, byte [esi + 0x64ed40]
and ecx, 1
mov dword [ebp - 0x13c], esi
mov dword [ebp - 0xfc], ecx
test esi, esi
jne 0x4662d3
mov dword [ebp - 0x13c], 0x7fffffff
mov esi, dword [ebp - 0xf0]
movzx esi, byte [esi]
mov eax, esi
inc dword [ebp - 0xf0]
sub eax, 0xf
mov dword [ebp - 0x134], esi
mov dword [ebp - 0x124], 0xffffffff
cmp eax, 1
ja 0x466334
xor eax, eax
cmp esi, 0xf
sete al
mov dword [ebp - 0x12c], eax
mov eax, dword [ebp - 0xf0]
movzx eax, byte [eax]
inc dword [ebp - 0xf0]
mov dword [ebp - 0x124], eax
mov edx, dword [ebp - 0xf0]
movzx edx, byte [edx]
inc dword [ebp - 0xf0]
mov dword [ebp - 0x128], edx
test ebx, ebx
jle 0x4677da
cmp dword [ebp - 0x124], 0
js 0x46679d
cmp dword [ebp - 0x124], 4
ja case.default.0x46635c
mov ecx, dword [ebp - 0x124]
jmp dword [ecx*4 + 0x64ef2c]
cmp dword [ebp - 0x12c], 0
jne 0x461823
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x4663bc
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4663b5
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x4663ed
and esi, 0x3f
movzx edx, byte [esi + 0x64f790]
mov eax, edx
dec edx
test eax, eax
jle 0x4663ed
inc edi
jmp 0x4663e3
inc dword [ebp - 0xf4]
jmp 0x46637a
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x466444
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46643d
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x466490
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466490
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466479
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
xor esi, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx ecx, byte [eax*8 + 0x65b8b1]
cmp ecx, 9
sete dl
cmp ecx, 5
sete al
or eax, edx
test al, 1
jne 0x4664cd
cmp ecx, 8
jne 0x4664d2
mov esi, 1
cmp esi, dword [ebp - 0x12c]
je 0x46182a
inc dword [ebp - 0xf4]
jmp 0x4663ff
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x466537
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466530
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x466583
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466583
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46656c
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
mov esi, dword [ebp - 0x128]
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], esi
sete al
movzx eax, al
cmp eax, dword [ebp - 0x12c]
je 0x461831
inc dword [ebp - 0xf4]
jmp 0x4664f3
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x466620
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466619
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x46666c
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x46666c
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466655
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx ecx, byte [eax*8 + 0x65b8b1]
xor eax, eax
cmp ecx, dword [ebp - 0x128]
sete al
cmp eax, dword [ebp - 0x12c]
je 0x461838
inc dword [ebp - 0xf4]
jmp 0x4665db
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x466700
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4666f9
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x46674c
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x46674c
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466735
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b0]
cmp eax, dword [ebp - 0x128]
sete al
movzx eax, al
cmp eax, dword [ebp - 0x12c]
je 0x46183f
inc dword [ebp - 0xf4]
jmp 0x4666bc
mov edx, 0xfffffff2
jmp case.default.0x467818
cmp dword [ebp - 0x134], 0x16
jne 0x46695a
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
mov esi, dword [esi + 0x68]
mov dword [ebp - 0x194], esi
cmp edi, esi
jb 0x466804
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4667fd
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x466850
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466850
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466839
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
je 0x461846
cmp edi, dword [ebp - 0x194]
jae 0x46694f
mov dword [ebp - 0x198], 1
cmp dword [ebp - 0xf8], 0
mov al, byte [edi]
jne 0x4668a8
movzx esi, al
jmp 0x466916
movzx esi, al
cmp esi, 0xbf
jbe 0x466916
mov eax, esi
mov dword [ebp - 0x19c], 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
mov dword [ebp - 0x1fc], ecx
shl esi, cl
cmp dword [ebp - 0x198], edx
jg 0x46690f
sub dword [ebp - 0x1fc], 6
mov ecx, dword [ebp - 0x19c]
movzx eax, byte [ecx + edi]
inc dword [ebp - 0x19c]
and eax, 0x3f
mov cl, byte [ebp - 0x1fc]
shl eax, cl
or esi, eax
cmp dword [ebp - 0x19c], edx
jmp 0x4668e1
inc edx
mov dword [ebp - 0x198], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
jne 0x46694f
add edi, dword [ebp - 0x198]
jmp 0x466882
inc dword [ebp - 0xf4]
jmp 0x4667b4
mov esi, dword [ebp - 0x134]
cmp dword [ebp - 0xf8], 0
lea eax, [esi - 6]
je 0x4671cd
cmp eax, 0xf
ja case.0x466979.9
jmp dword [eax*4 + 0x64ef40]
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x68]
cmp edi, edx
jb 0x4669d1
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4669ca
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x4669f8
push dword [ebp - 0xf8]
mov eax, esi
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x466a18
jmp 0x466a1f
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x466a1f
mov edx, eax
mov al, byte [eax + 0x2c]
cmp byte [edi], al
jne 0x466a1f
dec ecx
je 0x466a18
mov al, byte [edx + 0x2d]
cmp byte [edi + 1], al
jne 0x466a1f
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
inc edi
mov edx, dword [ecx + 0x68]
jmp 0x466a36
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x466a3a
inc edi
cmp edi, edx
jb 0x466a28
inc dword [ebp - 0xf4]
jmp 0x46698a
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
mov edx, dword [esi + 0x68]
cmp edi, edx
jb 0x466aa0
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466a8c
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x466aa5
inc edi
cmp edi, edx
jb 0x466a93
inc dword [ebp - 0xf4]
jmp 0x466a4f
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x68]
sub eax, ebx
cmp edi, eax
ja 0x46184d
jmp 0x4672f4
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
mov ecx, dword [ecx + 0x68]
mov dword [ebp - 0x1a0], ecx
cmp edi, ecx
jb 0x466b19
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466b12
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x466b54
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466b54
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466b3d
cmp esi, 0xd
je 0x466b80
ja 0x466b64
cmp esi, 0xa
je 0x466b9d
jb 0x466b79
jmp 0x466b90
cmp esi, 0x85
je 0x466b90
jb 0x466b79
lea eax, [esi - 0x2028]
cmp eax, 1
jbe 0x466b90
xor edx, edx
jmp case.default.0x467818
cmp edi, dword [ebp - 0x1a0]
jae 0x466b9d
cmp byte [edi], 0xa
jne 0x466b9d
inc edi
jmp 0x466b9d
mov esi, dword [ebp + 0x10]
cmp dword [esi + 0x5c], 0
jne 0x461854
inc dword [ebp - 0xf4]
jmp 0x466acc
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x466bf7
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466bf0
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x466c32
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466c32
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466c1b
cmp esi, 0x180e
je 0x466c7f
ja 0x466c58
cmp esi, 0x20
je 0x466c7f
ja 0x466c48
cmp esi, 9
jmp 0x466c7d
cmp esi, 0xa0
je 0x466c7f
cmp esi, 0x1680
jmp 0x466c7d
cmp esi, 0x202f
je 0x466c7f
ja 0x466c6f
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja 0x466c86
jmp 0x466c7f
cmp esi, 0x205f
je 0x466c7f
cmp esi, 0x3000
jne 0x466c86
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x466bb2
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x466cdf
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466cd8
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x466d1a
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466d1a
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466d03
cmp esi, 0x180e
je 0x466d6e
ja 0x466d40
cmp esi, 0x20
je 0x466d6e
ja 0x466d30
cmp esi, 9
jmp 0x466d65
cmp esi, 0xa0
je 0x466d6e
cmp esi, 0x1680
jmp 0x466d65
cmp esi, 0x202f
je 0x466d6e
ja 0x466d57
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja 0x466d67
jmp 0x466d6e
cmp esi, 0x205f
je 0x466d6e
cmp esi, 0x3000
je 0x466d6e
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x466c9b
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x466dc5
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466dbe
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x466e00
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466e00
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466de9
cmp esi, 0x85
je 0x466e1d
ja 0x466e12
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x466e1b
lea eax, [esi - 0x2028]
cmp eax, 1
ja 0x466e24
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x466d83
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x466e7e
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466e77
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x466eb9
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466eb9
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466ea2
cmp esi, 0x85
je 0x466edd
ja 0x466ecb
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x466ed4
lea eax, [esi - 0x2028]
cmp eax, 1
jbe 0x466edd
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x466e39
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x466f36
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466f2f
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x466f71
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x466f71
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x466f5a
cmp esi, 0x7f
ja 0x466f86
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 4
jne 0x46185b
inc dword [ebp - 0xf4]
jmp 0x466ef2
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x466fdf
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x466fd8
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov al, byte [edi]
test al, al
js 0x466ff5
mov esi, dword [ebp + 0x10]
inc edi
movzx edx, al
mov eax, dword [esi + 0x34]
test byte [edx + eax], 4
jne 0x466ffc
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x466f9b
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x68]
cmp edi, ecx
jb 0x467055
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46704e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov al, byte [edi]
test al, al
js 0x46706e
mov esi, dword [ebp + 0x10]
movzx edx, al
mov eax, dword [esi + 0x34]
test byte [edx + eax], 1
jne 0x461862
inc edi
cmp edi, ecx
jae 0x467080
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
je 0x46706e
inc dword [ebp - 0xf4]
jmp 0x46700e
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x4670d7
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4670d0
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov al, byte [edi]
test al, al
js 0x4670ed
mov ecx, dword [ebp + 0x10]
inc edi
movzx edx, al
mov eax, dword [ecx + 0x34]
test byte [edx + eax], 1
jne 0x4670f4
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x467092
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x68]
cmp edi, ecx
jae 0x46712e
mov al, byte [edi]
test al, al
js 0x467135
movzx edx, al
mov eax, dword [esi + 0x34]
test byte [edx + eax], 0x10
je 0x467135
xor edx, edx
jmp case.default.0x467818
inc edi
cmp edi, ecx
jae 0x467147
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
je 0x467135
inc dword [ebp - 0xf4]
jmp 0x467106
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x46719e
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467197
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov al, byte [edi]
test al, al
js 0x4671b4
mov ecx, dword [ebp + 0x10]
inc edi
movzx edx, al
mov eax, dword [ecx + 0x34]
test byte [edx + eax], 0x10
jne 0x4671bb
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x467159
mov edx, 0xfffffff2
jmp case.default.0x467818
cmp eax, 0xf
ja case.0x4671d6.9
jmp dword [eax*4 + 0x64ef80]
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
mov edx, dword [esi + 0x68]
cmp edi, edx
jb 0x46722b
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467224
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x46724c
add eax, 0x1c
push 0
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x46726a
jmp 0x467271
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x467271
mov al, byte [esi + 0x2c]
cmp byte [edi], al
jne 0x467271
dec ecx
je 0x46726a
mov al, byte [esi + 0x2d]
cmp byte [edi + 1], al
jne 0x467271
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
inc edi
jmp 0x4671e7
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x68]
sub eax, ebx
cmp edi, eax
jbe 0x4672f4
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4672b3
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
mov eax, dword [esi + 0x68]
sub eax, ebx
cmp edi, eax
jbe 0x4672f4
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4672ed
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
add edi, ebx
jmp 0x4677da
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x68]
cmp edi, edx
jb 0x46734c
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467345
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp eax, 0xc
jg 0x467361
cmp eax, 0xb
jge 0x467380
cmp eax, 0xa
je 0x46738d
jmp 0x46736d
cmp eax, 0xd
je 0x467374
cmp eax, 0x85
je 0x467380
xor edx, edx
jmp case.default.0x467818
cmp edi, edx
jae 0x46738d
cmp byte [edi], 0xa
jne 0x46738d
inc edi
jmp 0x46738d
mov ecx, dword [ebp + 0x10]
cmp dword [ecx + 0x5c], 0
jne 0x461869
inc dword [ebp - 0xf4]
jmp 0x467305
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x4673e4
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4673dd
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp eax, 0x20
je 0x4673fb
jg 0x4673f4
cmp eax, 9
jmp 0x4673f9
cmp eax, 0xa0
jne 0x467402
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x4673a2
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x467459
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467452
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp eax, 0x20
je 0x467477
jg 0x467469
cmp eax, 9
jmp 0x46746e
cmp eax, 0xa0
je 0x467477
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x467414
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x4674cd
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4674c6
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp eax, 0xa
jl 0x4674e9
cmp eax, 0xd
jle 0x4674e2
cmp eax, 0x85
jne 0x4674e9
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x467489
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x46753d
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467536
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx eax, byte [edi]
inc edi
cmp eax, 0xa
jl 0x467552
cmp eax, 0xd
jle 0x467559
cmp eax, 0x85
je 0x467559
xor edx, edx
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x4674fb
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x4675b0
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4675a9
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
inc edi
test byte [edx + eax], 4
jne 0x461870
inc dword [ebp - 0xf4]
jmp 0x46756b
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x467618
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467611
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
inc edi
test byte [edx + eax], 4
je 0x461877
inc dword [ebp - 0xf4]
jmp 0x4675d6
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x467680
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467679
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
inc edi
test byte [edx + eax], 1
jne 0x46187e
inc dword [ebp - 0xf4]
jmp 0x46763e
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x4676e8
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4676e1
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
inc edi
test byte [edx + eax], 1
je 0x461885
inc dword [ebp - 0xf4]
jmp 0x4676a6
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x467750
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467749
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
inc edi
test byte [edx + eax], 0x10
jne 0x46188c
inc dword [ebp - 0xf4]
jmp 0x46770e
mov dword [ebp - 0xf4], 1
cmp dword [ebp - 0xf4], ebx
jg 0x4677da
mov esi, dword [ebp + 0x10]
cmp edi, dword [esi + 0x68]
jb 0x4677b4
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4677ad
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [ecx + 0x34]
inc edi
test byte [edx + eax], 0x10
je 0x461893
inc dword [ebp - 0xf4]
jmp 0x467776
mov edx, 0xfffffff2
jmp case.default.0x467818
cmp ebx, dword [ebp - 0x13c]
je 0x461977
cmp dword [ebp - 0xfc], 0
je 0x468486
cmp dword [ebp - 0x124], 0
js 0x467cf9
mov edx, 0xfffffff2
cmp dword [ebp - 0x124], 4
ja case.default.0x467818
mov esi, dword [ebp - 0x124]
jmp dword [esi*4 + 0x64efc0]
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46189a
mov eax, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], eax
jge 0x4618a1
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x4678a0
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467899
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x4678c0
and esi, 0x3f
movzx edx, byte [esi + 0x64f790]
mov eax, edx
dec edx
test eax, eax
jle 0x4678c0
inc edi
jmp 0x4678b6
cmp dword [ebp - 0x12c], 0
jne 0x4618a8
inc dword [ebp - 0xf4]
jmp 0x467825
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4618af
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jge 0x4618b6
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x467959
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467952
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x467994
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x467994
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x46797d
mov eax, esi
and esi, 0x7f
shr eax, 7
xor ebx, ebx
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx ecx, byte [eax*8 + 0x65b8b1]
cmp ecx, 9
sete dl
cmp ecx, 5
sete al
or eax, edx
test al, 1
jne 0x4679d1
cmp ecx, 8
jne 0x4679d6
mov ebx, 1
cmp ebx, dword [ebp - 0x12c]
je 0x4618bd
inc dword [ebp - 0xf4]
jmp 0x4678de
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4618c4
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x4618cb
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x467a6b
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467a64
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x467aa6
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x467aa6
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x467a8f
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
mov esi, dword [ebp - 0x128]
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], esi
sete al
movzx eax, al
cmp eax, dword [ebp - 0x12c]
je 0x4618d2
inc dword [ebp - 0xf4]
jmp 0x4679f3
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4618d9
mov eax, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], eax
jge 0x4618e0
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x467b75
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467b6e
mov ebx, dword [ebp + 0x10]
mov edx, 0xfffffff4
dec ecx
mov dword [ebx + 0x58], 1
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x467bb0
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x467bb0
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x467b99
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx ecx, byte [eax*8 + 0x65b8b1]
xor eax, eax
cmp ecx, dword [ebp - 0x128]
sete al
cmp eax, dword [ebp - 0x12c]
je 0x4618e7
inc dword [ebp - 0xf4]
jmp 0x467afa
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x4618ee
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jge 0x4618f5
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jb 0x467c77
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467c70
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x467cb2
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x467cb2
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x467c9b
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b0]
cmp eax, dword [ebp - 0x128]
sete al
movzx eax, al
cmp eax, dword [ebp - 0x12c]
je 0x4618fc
inc dword [ebp - 0xf4]
jmp 0x467bfc
cmp dword [ebp - 0x134], 0x16
jne 0x467ec1
mov dword [ebp - 0xf4], ebx
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461903
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jge 0x46190a
mov ebx, dword [ebp + 0x10]
mov ebx, dword [ebx + 0x68]
mov dword [ebp - 0x1a4], ebx
cmp edi, ebx
jb 0x467d8f
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467d88
mov dword [esi + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x467ddb
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x467ddb
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x467dc4
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
je 0x461911
cmp edi, dword [ebp - 0x1a4]
jae 0x467eb6
mov dword [ebp - 0x1a8], 1
cmp dword [ebp - 0xf8], 0
mov al, byte [edi]
jne 0x467e33
movzx esi, al
jmp 0x467e7d
movzx esi, al
cmp esi, 0xbf
jbe 0x467e7d
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1a8], edx
jg 0x467e76
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x467e61
inc edx
mov dword [ebp - 0x1a8], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
jne 0x467eb6
add edi, dword [ebp - 0x1a8]
jmp 0x467e0d
inc dword [ebp - 0xf4]
jmp 0x467d0c
mov dword [ebp - 0xf4], ebx
cmp dword [ebp - 0xf8], 0
je 0x468238
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461918
mov eax, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], eax
jge 0x46191f
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x68]
cmp edi, edx
jb 0x467f50
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x467f49
mov dword [ebx + 0x58], 1
mov edx, 0xfffffff4
dec ecx
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
cmp dword [ebp - 0x134], 0xc
jne 0x467fa7
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x467f80
push dword [ebp - 0xf8]
mov eax, esi
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x467fa0
jmp 0x467fa7
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x467fa7
mov edx, eax
mov al, byte [eax + 0x2c]
cmp byte [edi], al
jne 0x467fa7
dec ecx
je 0x467fa0
mov al, byte [edx + 0x2d]
cmp byte [edi + 1], al
jne 0x467fa7
xor edx, edx
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp esi, 0xbf
jbe 0x467fe2
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x467fe2
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x467fcb
mov eax, dword [ebp - 0x134]
sub eax, 6
cmp eax, 0xf
ja case.0x467ff4.15
jmp dword [eax*4 + 0x64efd4]
cmp esi, 0xd
je 0x46802b
ja 0x46800f
cmp esi, 0xa
je case.0x467ff4.12
jb 0x468024
jmp 0x468046
cmp esi, 0x85
je 0x468046
jb 0x468024
lea eax, [esi - 0x2028]
cmp eax, 1
jbe 0x468046
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jae case.0x467ff4.12
cmp byte [edi], 0xa
jne case.0x467ff4.12
inc edi
jmp case.0x467ff4.12
mov ebx, dword [ebp + 0x10]
cmp dword [ebx + 0x5c], 0
je case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x180e
je 0x4680af
ja 0x468080
cmp esi, 0x20
je 0x4680af
ja 0x468070
cmp esi, 9
jmp 0x4680a9
cmp esi, 0xa0
je 0x4680af
cmp esi, 0x1680
jmp 0x4680a9
cmp esi, 0x202f
je 0x4680af
ja 0x46809b
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja case.0x467ff4.12
jmp 0x4680af
cmp esi, 0x205f
je 0x4680af
cmp esi, 0x3000
jne case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x180e
je case.0x467ff4.12
ja 0x4680e8
cmp esi, 0x20
je case.0x467ff4.12
ja 0x4680d4
cmp esi, 9
jmp 0x468118
cmp esi, 0xa0
je case.0x467ff4.12
cmp esi, 0x1680
jmp 0x468118
cmp esi, 0x202f
je case.0x467ff4.12
ja 0x468106
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja 0x46811e
jmp case.0x467ff4.12
cmp esi, 0x205f
je case.0x467ff4.12
cmp esi, 0x3000
je case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x85
je 0x468146
ja 0x468137
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x468140
lea eax, [esi - 0x2028]
cmp eax, 1
ja case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x85
je case.0x467ff4.12
ja 0x468163
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x46816c
lea eax, [esi - 0x2028]
cmp eax, 1
jbe case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xff
ja case.0x467ff4.12
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 4
je case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xff
ja 0x4681b0
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 4
jne case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xff
ja case.0x467ff4.12
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x34]
test byte [esi + eax], 1
je case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xff
ja 0x4681e6
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 1
jne case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xff
ja case.0x467ff4.12
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 0x10
je case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xff
ja 0x46821c
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x34]
test byte [esi + eax], 0x10
jne case.0x467ff4.12
xor edx, edx
jmp case.default.0x467818
mov edx, 0xfffffff2
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x467ed4
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461926
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jge 0x46192d
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x68]
cmp edi, edx
jb 0x4682b5
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x4682ae
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
mov edx, 0xfffffff4
jg case.default.0x467818
xor edx, edx
jmp case.default.0x467818
cmp dword [ebp - 0x134], 0xc
jne 0x468306
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x18]
test ecx, ecx
je 0x4682e1
mov eax, ebx
push 0
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x4682ff
jmp 0x468306
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x468306
mov al, byte [esi + 0x2c]
cmp byte [edi], al
jne 0x468306
dec ecx
je 0x4682ff
mov al, byte [esi + 0x2d]
cmp byte [edi + 1], al
jne 0x468306
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp - 0x134]
sub eax, 6
movzx esi, byte [edi]
inc edi
cmp eax, 0xf
ja case.0x46831c.15
jmp dword [eax*4 + 0x64f014]
cmp esi, 0xc
ja 0x468338
cmp esi, 0xb
jae 0x468367
cmp esi, 0xa
je case.0x46831c.12
jmp 0x468345
cmp esi, 0xd
je 0x46834c
cmp esi, 0x85
je 0x468367
xor edx, edx
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
cmp edi, dword [eax + 0x68]
jae case.0x46831c.12
cmp byte [edi], 0xa
jne case.0x46831c.12
inc edi
jmp case.0x46831c.12
mov edx, dword [ebp + 0x10]
cmp dword [edx + 0x5c], 0
je case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x20
je 0x468393
ja 0x468387
cmp esi, 9
jmp 0x46838d
cmp esi, 0xa0
jne case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0x20
je case.0x46831c.12
ja 0x4683aa
cmp esi, 9
jmp 0x4683b0
cmp esi, 0xa0
je case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xa
jb case.0x46831c.12
cmp esi, 0xd
jbe 0x4683d7
cmp esi, 0x85
jne case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
cmp esi, 0xa
jb 0x4683f8
cmp esi, 0xd
jbe case.0x46831c.12
cmp esi, 0x85
je case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 4
je case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x34]
test byte [esi + eax], 4
jne case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 1
je case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 1
jne case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov ebx, dword [ebp + 0x10]
mov eax, dword [ebx + 0x34]
test byte [esi + eax], 0x10
je case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 0x10
jne case.0x46831c.12
xor edx, edx
jmp case.default.0x467818
mov edx, 0xfffffff2
jmp case.default.0x467818
inc dword [ebp - 0xf4]
jmp 0x468238
mov dword [ebp - 0x10c], edi
cmp dword [ebp - 0x124], 0
js 0x4689bc
cmp dword [ebp - 0x124], 4
ja case.default.0x4684ac
mov ecx, dword [ebp - 0x124]
jmp dword [ecx*4 + 0x64f054]
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge case.default.0x4684ac
mov eax, dword [ebp + 0x10]
mov ecx, 1
cmp edi, dword [eax + 0x68]
jb 0x468507
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je case.default.0x4684ac
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle case.default.0x4684ac
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x46852d
and esi, 0x3f
mov edx, 1
movzx eax, byte [esi + 0x64f790]
cmp ecx, eax
jg 0x46852a
inc edx
cmp edx, eax
jmp 0x468523
lea ecx, [eax + 1]
cmp dword [ebp - 0x12c], 0
jne case.default.0x4684ac
inc dword [ebp - 0xf4]
add edi, ecx
mov ecx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ecx
jmp 0x4684c1
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge case.default.0x4684ac
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1ac], 1
cmp edi, dword [eax + 0x68]
jb 0x4685ac
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je case.default.0x4684ac
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle case.default.0x4684ac
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x4685f6
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1ac], edx
jg 0x4685ef
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4685da
inc edx
mov dword [ebp - 0x1ac], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
xor ebx, ebx
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx ecx, byte [eax*8 + 0x65b8b1]
cmp ecx, 9
sete dl
cmp ecx, 5
sete al
or eax, edx
test al, 1
jne 0x468633
cmp ecx, 8
jne 0x468638
mov ebx, 1
cmp ebx, dword [ebp - 0x12c]
je case.default.0x4684ac
inc dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1ac]
cmp dword [ebp - 0xf4], ecx
jmp 0x468561
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge case.default.0x4684ac
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1b0], 1
cmp edi, dword [eax + 0x68]
jb 0x4686ba
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je case.default.0x4684ac
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle case.default.0x4684ac
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x468704
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1b0], edx
jg 0x4686fd
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4686e8
inc edx
mov dword [ebp - 0x1b0], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
mov ecx, dword [ebp - 0x128]
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], ecx
sete al
movzx eax, al
cmp eax, dword [ebp - 0x12c]
je case.default.0x4684ac
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1b0]
cmp dword [ebp - 0xf4], ebx
jmp 0x46866f
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge case.default.0x4684ac
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1b4], 1
cmp edi, dword [eax + 0x68]
jb 0x4687bd
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je case.default.0x4684ac
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle case.default.0x4684ac
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x468807
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1b4], edx
jg 0x468800
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4687eb
inc edx
mov dword [ebp - 0x1b4], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx ecx, byte [eax*8 + 0x65b8b1]
xor eax, eax
cmp ecx, dword [ebp - 0x128]
sete al
cmp eax, dword [ebp - 0x12c]
je case.default.0x4684ac
inc dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1b4]
cmp dword [ebp - 0xf4], ecx
jmp 0x468772
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge case.default.0x4684ac
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1b8], 1
cmp edi, dword [eax + 0x68]
jb 0x4688b8
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je case.default.0x4684ac
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle case.default.0x4684ac
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x468902
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1b8], edx
jg 0x4688fb
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4688e6
inc edx
mov dword [ebp - 0x1b8], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b0]
cmp eax, dword [ebp - 0x128]
sete al
movzx eax, al
cmp eax, dword [ebp - 0x12c]
je case.default.0x4684ac
inc dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1b8]
cmp dword [ebp - 0xf4], ecx
jmp 0x46886d
cmp dword [ebp - 0x100], 0
jne 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461934
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x469e8e
cmp dword [ebp - 0xf8], 0
je 0x468964
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x468964
dec edi
jmp 0x4689ac
cmp dword [ebp - 0x134], 0x16
jne 0x468c42
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x468b61
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x68]
mov dword [ebp - 0x1bc], eax
cmp edi, eax
jb 0x468a23
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x468b61
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x468b61
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
inc edi
cmp dword [ebp - 0xf8], 0
setne dl
xor eax, eax
cmp esi, 0xbf
seta al
test edx, eax
je 0x468a6f
mov eax, esi
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
mov eax, edx
dec edx
test eax, eax
jle 0x468a6f
movzx eax, byte [edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc edi
jmp 0x468a58
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
je 0x468b61
cmp edi, dword [ebp - 0x1bc]
jae 0x468b4a
mov dword [ebp - 0x1c0], 1
cmp dword [ebp - 0xf8], 0
mov al, byte [edi]
jne 0x468ac7
movzx esi, al
jmp 0x468b11
movzx esi, al
cmp esi, 0xbf
jbe 0x468b11
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1c0], edx
jg 0x468b0a
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x468af5
inc edx
mov dword [ebp - 0x1c0], edx
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
jne 0x468b4a
add edi, dword [ebp - 0x1c0]
jmp 0x468aa1
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jmp 0x4689d7
cmp dword [ebp - 0x100], 0
jne 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x46193b
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x469e8e
cmp dword [ebp - 0xf8], 0
mov al, byte [edi]
jne 0x468bbd
movzx esi, al
jmp 0x468c0a
and eax, 0xc0
add eax, 0xffffff80
jne 0x468bcd
dec edi
movzx eax, byte [edi]
jmp 0x468bbd
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x468c0a
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp ebx, edx
jg 0x468c0a
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
or esi, eax
inc ebx
jmp 0x468bf5
mov eax, esi
and esi, 0x7f
shr eax, 7
movzx eax, byte [eax + 0x6596b0]
shl eax, 7
add eax, esi
movzx eax, word [eax + eax + 0x64f8b0]
movzx eax, byte [eax*8 + 0x65b8b1]
cmp dword [eax*4 + 0x64f710], 2
jne 0x468b6e
dec edi
jmp 0x468bad
mov edx, dword [ebp - 0x134]
cmp dword [ebp - 0xf8], 0
lea eax, [edx - 6]
je 0x4697ba
cmp eax, 0xf
ja case.0x468c61.9
jmp dword [eax*4 + 0x64f068]
cmp dword [ebp - 0x13c], 0x7fffffff
je 0x468d4b
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, ecx
jge 0x46975e
mov ebx, dword [ebp + 0x10]
mov edx, dword [ebx + 0x68]
cmp edi, edx
jb 0x468cc6
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov dword [ebx + 0x58], 1
dec ecx
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x18]
test ecx, ecx
je 0x468cf1
push dword [ebp - 0xf8]
mov eax, esi
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x46975e
jmp 0x468d19
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x468d19
mov edx, eax
mov al, byte [eax + 0x2c]
cmp byte [edi], al
jne 0x468d19
dec ecx
je 0x46975e
mov al, byte [edx + 0x2d]
cmp byte [edi + 1], al
je 0x46975e
mov ecx, dword [ebp + 0x10]
inc edi
mov edx, dword [ecx + 0x68]
jmp 0x468d30
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x468d34
inc edi
cmp edi, edx
jb 0x468d22
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], ebx
jmp 0x468c86
mov dword [ebp - 0xf4], ebx
cmp ebx, 0x7fffffff
jge 0x46975e
mov esi, dword [ebp + 0x10]
mov edx, dword [esi + 0x68]
cmp edi, edx
jb 0x468d97
mov ecx, dword [esi + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov dword [esi + 0x58], 1
dec ecx
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
mov eax, dword [ebp + 0x10]
mov ecx, dword [eax + 0x18]
test ecx, ecx
je 0x468dc0
push dword [ebp - 0xf8]
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x46975e
jmp 0x468de6
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x468de6
mov al, byte [ebx + 0x2c]
cmp byte [edi], al
jne 0x468de6
dec ecx
je 0x46975e
mov al, byte [ebx + 0x2d]
cmp byte [edi + 1], al
je 0x46975e
mov esi, dword [ebp + 0x10]
inc edi
mov edx, dword [esi + 0x68]
jmp 0x468dfd
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x468e01
inc edi
cmp edi, edx
jb 0x468def
inc dword [ebp - 0xf4]
cmp dword [ebp - 0xf4], 0x7fffffff
jmp 0x468d57
cmp dword [ebp - 0x13c], 0x7fffffff
je 0x468e98
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x46975e
mov ecx, dword [ebp + 0x10]
mov edx, dword [ecx + 0x68]
cmp edi, edx
jb 0x468e7f
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov dword [ebx + 0x58], 1
dec ecx
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x468e84
inc edi
cmp edi, edx
jb 0x468e72
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], esi
jmp 0x468e30
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + 0x68]
jmp 0x46975e
mov ecx, dword [ebp + 0x10]
mov esi, dword [ebp - 0x13c]
sub esi, ebx
mov edx, dword [ecx + 0x68]
mov eax, edx
sub eax, edi
cmp esi, eax
jbe 0x468eed
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
mov edi, edx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov dword [ebx + 0x58], 1
dec ecx
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
add edi, esi
jmp 0x46975e
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46975e
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1c4], 1
mov eax, dword [eax + 0x68]
mov dword [ebp - 0x1c8], eax
cmp edi, eax
jb 0x468f58
mov edx, dword [ebp + 0x10]
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x468fa2
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1c4], edx
jg 0x468f9b
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x468f86
inc edx
mov dword [ebp - 0x1c4], edx
cmp esi, 0xd
jne 0x468fbc
inc edi
cmp edi, dword [ebp - 0x1c8]
jae 0x46975e
cmp byte [edi], 0xa
jne 0x469008
inc edi
jmp 0x469008
cmp esi, 0xa
je 0x469002
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x5c], 0
jne 0x46975e
lea eax, [esi - 0xb]
cmp eax, 1
seta dl
xor eax, eax
cmp esi, 0x85
setne al
test edx, eax
je 0x469002
cmp esi, 0x2028
setne dl
xor eax, eax
cmp esi, 0x2029
setne al
test edx, eax
jne 0x46975e
add edi, dword [ebp - 0x1c4]
inc dword [ebp - 0xf4]
mov edx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], edx
jmp 0x468f02
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, ecx
jge 0x46975e
mov ebx, dword [ebp + 0x10]
mov dword [ebp - 0x1cc], 1
cmp edi, dword [ebx + 0x68]
jb 0x469075
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov dword [ebx + 0x58], 1
dec ecx
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x4690bf
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1cc], edx
jg 0x4690b8
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4690a3
inc edx
mov dword [ebp - 0x1cc], edx
cmp esi, 0x180e
je 0x469110
ja 0x4690e5
cmp esi, 0x20
je 0x469110
ja 0x4690d5
cmp esi, 9
jmp 0x46910a
cmp esi, 0xa0
je 0x469110
cmp esi, 0x1680
jmp 0x46910a
cmp esi, 0x202f
je 0x469110
ja 0x4690fc
lea eax, [esi - 0x2000]
cmp eax, 0xa
ja 0x46910c
jmp 0x469110
cmp esi, 0x205f
je 0x469110
cmp esi, 0x3000
je 0x469110
xor edx, edx
jmp 0x469115
mov edx, 1
xor eax, eax
cmp dword [ebp - 0x134], 0x12
sete al
cmp edx, eax
je 0x46975e
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1cc]
cmp dword [ebp - 0xf4], esi
jmp 0x46902d
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x46975e
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x1d0], 1
cmp edi, dword [edx + 0x68]
jb 0x46919f
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x4691e9
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1d0], edx
jg 0x4691e2
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4691cd
inc edx
mov dword [ebp - 0x1d0], edx
cmp esi, 0x85
je 0x46920a
ja 0x4691fb
lea eax, [esi - 0xa]
cmp eax, 3
jmp 0x469204
lea eax, [esi - 0x2028]
cmp eax, 1
jbe 0x46920a
xor edx, edx
jmp 0x46920f
mov edx, 1
xor eax, eax
cmp dword [ebp - 0x134], 0x14
sete al
cmp edx, eax
je 0x46975e
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1d0]
cmp dword [ebp - 0xf4], esi
jmp 0x469154
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x46975e
mov edx, dword [ebp + 0x10]
mov dword [ebp - 0x1d4], 1
cmp edi, dword [edx + 0x68]
jb 0x469299
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x4692e3
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1d4], edx
jg 0x4692dc
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x4692c7
inc edx
mov dword [ebp - 0x1d4], edx
cmp esi, 0xff
ja 0x4692fb
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x34]
test byte [esi + eax], 4
jne 0x46975e
inc dword [ebp - 0xf4]
mov ecx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1d4]
cmp dword [ebp - 0xf4], ecx
jmp 0x46924e
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46975e
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1d8], 1
cmp edi, dword [eax + 0x68]
jb 0x469371
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x4693bb
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1d8], edx
jg 0x4693b4
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x46939f
inc edx
mov dword [ebp - 0x1d8], edx
cmp esi, 0xff
ja 0x46975e
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 4
je 0x46975e
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1d8]
cmp dword [ebp - 0xf4], ebx
jmp 0x469326
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46975e
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1dc], 1
cmp edi, dword [eax + 0x68]
jb 0x46944d
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x469497
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1dc], edx
jg 0x469490
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x46947b
inc edx
mov dword [ebp - 0x1dc], edx
cmp esi, 0xff
ja 0x4694af
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 1
jne 0x46975e
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1dc]
cmp dword [ebp - 0xf4], ebx
jmp 0x469402
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46975e
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1e0], 1
cmp edi, dword [eax + 0x68]
jb 0x469525
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x46956f
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1e0], edx
jg 0x469568
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x469553
inc edx
mov dword [ebp - 0x1e0], edx
cmp esi, 0xff
ja 0x46975e
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 1
je 0x46975e
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1e0]
cmp dword [ebp - 0xf4], ebx
jmp 0x4694da
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46975e
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1e4], 1
cmp edi, dword [eax + 0x68]
jb 0x469601
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x46964b
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1e4], edx
jg 0x469644
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x46962f
inc edx
mov dword [ebp - 0x1e4], edx
cmp esi, 0xff
ja 0x469663
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 0x10
jne 0x46975e
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1e4]
cmp dword [ebp - 0xf4], ebx
jmp 0x4695b6
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x46975e
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x1e8], 1
cmp edi, dword [eax + 0x68]
jb 0x4696d9
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x46975e
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle 0x46975e
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xbf
jbe 0x469723
mov eax, esi
mov ebx, 1
and eax, 0x3f
movzx edx, byte [eax + 0x64f790]
imul ecx, edx, 6
and esi, dword [edx*4 + 0x64f7d0]
shl esi, cl
cmp dword [ebp - 0x1e8], edx
jg 0x46971c
movzx eax, byte [ebx + edi]
sub ecx, 6
and eax, 0x3f
shl eax, cl
inc ebx
or esi, eax
cmp ebx, edx
jmp 0x469707
inc edx
mov dword [ebp - 0x1e8], edx
cmp esi, 0xff
ja 0x46975e
mov ecx, dword [ebp + 0x10]
mov eax, dword [ecx + 0x34]
test byte [esi + eax], 0x10
je 0x46975e
inc dword [ebp - 0xf4]
mov ebx, dword [ebp - 0x13c]
add edi, dword [ebp - 0x1e8]
cmp dword [ebp - 0xf4], ebx
jmp 0x46968e
mov edx, 0xfffffff2
jmp case.default.0x467818
cmp dword [ebp - 0x100], 0
jne 0x461977
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461942
mov eax, edi
dec edi
cmp eax, dword [ebp - 0x10c]
je 0x469e8e
movzx eax, byte [edi]
and eax, 0xc0
add eax, 0xffffff80
jne 0x46976b
dec edi
jmp 0x4697aa
cmp eax, 0xf
ja case.0x4697c3.9
jmp dword [eax*4 + 0x64f0a8]
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x469e46
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x68]
cmp edi, edx
jb 0x46981b
mov ecx, dword [eax + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov edx, dword [ebp + 0x10]
dec ecx
mov dword [edx + 0x58], 1
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov ebx, dword [ebp + 0x10]
mov ecx, dword [ebx + 0x18]
test ecx, ecx
je 0x469842
mov eax, ebx
push 0
add eax, 0x1c
push eax
push edx
push ecx
push edi
call fcn.0046b280
add esp, 0x14
test eax, eax
jne 0x469e46
jmp 0x469868
mov esi, dword [ebp + 0x10]
mov ecx, dword [esi + 0x1c]
sub edx, ecx
cmp edi, edx
ja 0x469868
mov al, byte [esi + 0x2c]
cmp byte [edi], al
jne 0x469868
dec ecx
je 0x469e46
mov al, byte [esi + 0x2d]
cmp byte [edi + 1], al
je 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x4697d8
mov ecx, dword [ebp + 0x10]
mov esi, dword [ebp - 0x13c]
sub esi, ebx
mov edx, dword [ecx + 0x68]
mov eax, edx
sub eax, edi
cmp esi, eax
jbe 0x4698ca
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
mov edi, edx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
add edi, esi
jmp 0x469e46
mov esi, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, esi
jge 0x469e46
mov edx, dword [ebp + 0x10]
mov eax, dword [edx + 0x68]
cmp edi, eax
jb 0x469922
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 0xd
jne 0x46993a
inc edi
cmp edi, eax
jae 0x469e46
cmp byte [edi], 0xa
jne 0x469969
jmp 0x469968
cmp esi, 0xa
je 0x469968
mov eax, dword [ebp + 0x10]
cmp dword [eax + 0x5c], 0
jne 0x469e46
lea eax, [esi - 0xb]
cmp eax, 1
seta dl
xor eax, eax
cmp esi, 0x85
setne al
test edx, eax
jne 0x469e46
inc edi
inc dword [ebp - 0xf4]
mov edx, dword [ebp - 0x13c]
cmp dword [ebp - 0xf4], edx
jmp 0x4698df
mov ecx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, ecx
jge 0x469e46
mov ebx, dword [ebp + 0x10]
cmp edi, dword [ebx + 0x68]
jb 0x4699cc
mov ecx, dword [ebx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 9
sete dl
cmp esi, 0x20
sete al
or eax, edx
test al, 1
jne 0x469e46
cmp esi, 0xa0
je 0x469e46
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], esi
jmp 0x46998e
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x469e46
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x469a55
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
cmp esi, 9
setne dl
xor eax, eax
cmp esi, 0x20
setne al
test edx, eax
je 0x469a76
cmp esi, 0xa0
jne 0x469e46
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], esi
jmp 0x469a14
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x469e46
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x469ada
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
lea eax, [esi - 0xa]
cmp eax, 3
setbe dl
cmp esi, 0x85
sete al
or eax, edx
test al, 1
jne 0x469e46
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], esi
jmp 0x469a99
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x469e46
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x469b5d
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
movzx esi, byte [edi]
lea eax, [esi - 0xa]
cmp eax, 3
seta dl
xor eax, eax
cmp esi, 0x85
setne al
test edx, eax
jne 0x469e46
inc dword [ebp - 0xf4]
mov esi, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], esi
jmp 0x469b1c
mov eax, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, eax
jge 0x469e46
mov edx, dword [ebp + 0x10]
cmp edi, dword [edx + 0x68]
jb 0x469be0
mov ecx, dword [edx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov ebx, dword [ebp + 0x10]
dec ecx
mov dword [ebx + 0x58], 1
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [esi + 0x34]
test byte [edx + eax], 4
jne 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x469b9f
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, edx
jge 0x469e46
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x469c56
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [esi + 0x34]
test byte [edx + eax], 4
je 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x469c16
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, edx
jge 0x469e46
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x469ccc
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [esi + 0x34]
test byte [edx + eax], 1
jne 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x469c8c
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, edx
jge 0x469e46
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x469d42
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [esi + 0x34]
test byte [edx + eax], 1
je 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x469d02
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, edx
jge 0x469e46
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x469db8
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [esi + 0x34]
test byte [edx + eax], 0x10
jne 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x469d78
mov edx, dword [ebp - 0x13c]
mov dword [ebp - 0xf4], ebx
cmp ebx, edx
jge 0x469e46
mov ecx, dword [ebp + 0x10]
cmp edi, dword [ecx + 0x68]
jb 0x469e1b
mov ebx, ecx
mov ecx, dword [ecx + 0x78]
test ecx, ecx
setne dl
xor eax, eax
cmp edi, dword [ebp + 8]
seta al
test edx, eax
je 0x469e46
mov dword [ebx + 0x58], 1
dec ecx
jle 0x469e46
mov edx, 0xfffffff4
jmp case.default.0x467818
mov esi, dword [ebp + 0x10]
movzx edx, byte [edi]
mov eax, dword [esi + 0x34]
test byte [edx + eax], 0x10
je 0x469e46
inc dword [ebp - 0xf4]
mov eax, dword [ebp - 0x13c]
inc edi
cmp dword [ebp - 0xf4], eax
jmp 0x469dea
mov edx, 0xfffffff2
jmp case.default.0x467818
cmp dword [ebp - 0x100], 0
jne 0x461977
cmp edi, dword [ebp - 0x10c]
jb 0x469e8e
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp - 0xf0]
inc eax
push eax
push 0
push dword [ebp + 0x18]
push dword [ebp + 0x14]
push dword [ebp + 0x10]
push dword [ebp + 0xc]
push dword [ebp + 8]
mov eax, edi
dec edi
call fcn.004614a6
add esp, 0x1c
mov ebx, eax
test eax, eax
jne 0x461949
jmp 0x469e53
xor edx, edx
jmp case.default.0x467818
mov edx, 0xfffffffb
lea esp, [ebp - 0xc]
mov eax, edx
pop ebx
pop esi
pop edi
pop ebp
ret