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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x8c
push ebx
push ebp
mov ebp, dword [esp + 0xa8]
push esi
push edi
mov esi, dword [ebp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0xa4]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0xa8]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0xac]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0xb4]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0xb8]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
nop
mov edx, dword [ebp]
mov ebx, dword [ebp + 0x4c]
mov dword [esp + 0x28], ebx
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, dword [ebp + 4]
jb 0x4412db
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44edb2
mov edi, 0xfffffff8
jmp 0x44aea4
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x4412f9
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44edc2
mov edi, 0xffffffeb
jmp 0x44aea4
cmp dword [ebp + 0x98], 2
jne 0x441323
mov eax, dword [esi + 8]
lea ecx, [esi + 0x128]
mov dword [esi + 0x12c], eax
mov eax, dword [esi + 0x18]
mov dword [ecx], eax
mov dword [esi + 0x18], ecx
mov dword [ebp + 0x98], 0
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], ebx
mov cl, byte [eax]
movzx eax, cl
mov dword [esi + 0x9c], eax
cmp cl, 0xa1
ja case.0x44134f.98
movzx eax, byte [eax + 0x44effc]
jmp dword [eax*4 + 0x44eeb0]
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x44138d
push 0x134
call dword [0x3207984]
mov edi, eax
add esp, 4
test edi, edi
je 0x44eb58
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x37
mov eax, dword [esi + 8]
mov dword [edi + 8], eax
mov edx, dword [esi + 0xc]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
movzx eax, byte [eax + 0x524940]
add eax, edx
add ecx, eax
mov dword [edi + 0xc], ecx
mov eax, dword [esi + 0x10]
mov dword [edi + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edi + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edi + 0x1c], eax
mov dword [edi], esi
mov esi, edi
jmp 0x4412a0
mov edx, dword [esi + 4]
test edx, edx
jne 0x4413fc
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x34
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov edx, dword [esi + 4]
test edx, edx
jne 0x441439
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x33
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x441488
push 0x134
call dword [0x3207984]
mov edi, eax
add esp, 4
test edi, edi
je 0x44eb58
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x441397
mov edx, dword [esi + 4]
test edx, edx
jne 0x4414bc
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x35
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov eax, dword [ebp + 0x28]
inc eax
mov dword [ebp + 0x28], eax
cmp eax, dword [ebp + 0x2c]
ja 0x4414fd
mov edx, dword [esi + 0xc]
movzx eax, byte [edx]
movzx ecx, byte [edx + 1]
movzx eax, byte [eax + 0x524940]
add eax, edx
add ecx, eax
mov dword [esi + 0xc], ecx
jmp 0x441323
mov edi, dword [esi + 4]
test edi, edi
jne 0x441522
push 0x134
call dword [0x3207984]
mov edi, eax
add esp, 4
test edi, edi
je 0x44eb58
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x441397
mov edx, dword [esi + 4]
test edx, edx
jne 0x441556
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], ebx
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x36
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xb0], eax
mov dword [ebp + 0xac], ebx
mov edi, dword [esi + 4]
test edi, edi
jne 0x4415a5
push 0x134
call dword [0x3207984]
mov edi, eax
add esp, 4
test edi, edi
je 0x44eb58
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x441397
mov eax, dword [esi + 0xc]
mov dword [esi + 0x34], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x38], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
jmp 0x44c509
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [ebp + 0x14]
jge case.0x44134f.129
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x10]
sub edx, dword [ebp + 0x74]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov dword [eax + ecx*4], edx
jmp 0x44af43
mov dword [esi + 0x54], ebx
jmp 0x441e2f
mov dword [esi + 0x54], ebx
jmp 0x441e53
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x78], ecx
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0xc], eax
cmp byte [eax], 0x76
jne 0x441771
mov edi, dword [0x320d64c]
test edi, edi
je 0x44175d
mov dword [esp + 0x34], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x38], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x3c], eax
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x40], ecx
mov eax, dword [ebp + 0x78]
sub eax, ecx
mov dword [esp + 0x44], eax
mov eax, dword [esi + 0x10]
sub eax, ecx
mov dword [esp + 0x48], eax
mov eax, dword [esi + 8]
sub eax, ecx
mov dword [esp + 0x4c], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x5c], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x60], ecx
mov ecx, 0xffffffff
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [esp + 0x54], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x64], eax
lea eax, [esp + 0x34]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.default.0x44d1fa
jns 0x44175d
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44afe4
jmp 0x44aea0
movzx eax, byte [0x5249b6]
add dword [esi + 0xc], eax
movzx eax, byte [0x5249b6]
sub dword [esi + 0x78], eax
mov dword [esi + 0x58], ebx
mov ebx, dword [esi + 0xc]
movzx ecx, byte [ebx]
mov dword [esp + 0x2c], ecx
lea eax, [ecx - 0x8d]
cmp eax, 0x10
ja case.0x441794.146
movzx eax, byte [eax + 0x44f0b8]
jmp dword [eax*4 + 0x44f0a0]
mov edx, dword [ebp + 0xa4]
test edx, edx
je case.0x441794.145
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
cmp ecx, 0xffff
je 0x441872
cmp ecx, dword [edx + 4]
je 0x441872
xor eax, eax
mov dword [esi + 0x58], eax
mov ecx, dword [esp + 0x2c]
cmp dword [esi + 0x58], 0
je 0x44b21d
movzx ecx, byte [ecx + 0x524940]
jmp 0x44b220
cmp dword [ebp + 0xa4], 0
je case.0x441794.145
movzx edi, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx ecx, byte [ebx + 1]
shl edi, 8
or edi, eax
shl ecx, 8
movzx eax, byte [ebx + 2]
or ecx, eax
mov eax, dword [ebp + 0x30]
imul ecx, dword [ebp + 0x24]
add eax, ecx
test edi, edi
je 0x4417cc
mov ebx, eax
movzx edx, byte [eax + 1]
dec edi
movzx eax, byte [eax]
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
mov ecx, dword [eax + 4]
xor eax, eax
cmp edx, ecx
sete al
mov dword [esi + 0x58], eax
je 0x4417cc
mov eax, dword [ebp + 0x24]
add eax, ebx
mov ebx, eax
test edi, edi
jg 0x441818
jmp 0x4417cc
movzx ecx, byte [ebx + 1]
movzx eax, byte [ebx + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x4417c7
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x4417c7
mov eax, 1
jmp 0x4417c9
movzx edi, byte [ebx + 3]
movzx eax, byte [ebx + 4]
movzx edx, byte [ebx + 1]
shl edi, 8
shl edx, 8
or edi, eax
movzx eax, byte [ebx + 2]
or edx, eax
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
test edi, edi
je case.0x441794.145
movzx eax, byte [edx]
dec edi
movzx ecx, byte [edx + 1]
shl eax, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x4418cf
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], 0
jl 0x4418cf
mov eax, 1
jmp 0x4418d1
xor eax, eax
mov dword [esi + 0x58], eax
test eax, eax
jne 0x4417cc
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x4418a5
jmp 0x4417cc
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44191b
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 3
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
jmp 0x44b491
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x98]
cmp edx, dword [ebp + 0x14]
jl 0x441988
or eax, 0x10000
mov dword [ebp + 0x90], eax
add dword [esi + 0xc], 3
jmp 0x441323
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [ecx + eax*4]
mov dword [ecx + edx*4], eax
mov ecx, dword [esi + 0x98]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esi + 0x98]
mov ecx, dword [esi + 0x14]
cmp edx, ecx
jl 0x44197f
mov eax, dword [ebp + 0xc]
lea ecx, [eax + ecx*4]
lea edx, [eax + edx*4]
cmp ecx, edx
jae 0x4419df
mov eax, ecx
nop dword [eax]
mov dword [ecx], 0xffffffff
lea ecx, [eax + 4]
mov eax, ecx
cmp ecx, edx
jb 0x4419d0
mov eax, dword [esi + 0x98]
add eax, 2
mov dword [esi + 0x14], eax
add dword [esi + 0xc], 3
jmp 0x441323
mov edi, dword [esi + 8]
mov edx, dword [esi + 0x10]
cmp edi, edx
jne 0x441a2a
cmp cl, 0x9f
je 0x441a2a
cmp dword [ebp + 0xa4], ebx
jne 0x441a2a
cmp dword [ebp + 0x5c], ebx
jne case.default.0x44d1fa
cmp dword [ebp + 0x60], ebx
je 0x441a2a
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp edx, eax
je case.default.0x44d1fa
mov dword [ebp + 0x80], edi
mov edi, 0xfffffc19
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov eax, 1
cmp dword [esi + 0x9c], ebx
cmove edi, eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44afe4
jmp 0x44aea0
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x441a87
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x44b308
mov dword [esi + 0x58], ebx
jmp 0x44b308
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x441ab3
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x44b452
mov dword [esi + 0x58], ebx
jmp 0x44b452
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0xc]
test ebx, ebx
je 0x441b02
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jbe 0x441b20
mov ecx, dword [esi + 8]
dec edx
dec ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x74]
jb case.0x44bdfa.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x441afc
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x441af0
test edx, edx
jg 0x441ad5
jmp 0x441b20
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [esi + 8]
sub eax, ecx
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x74]
jb case.0x44bdfa.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x44197f
mov dword [ebp + 0x84], eax
add dword [esi + 0xc], 3
jmp 0x441323
mov edi, dword [0x320d64c]
test edi, edi
je 0x441c23
mov dword [esp + 0x68], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x6c], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x70], eax
mov ecx, dword [ebp + 0x74]
mov dword [esp + 0x74], ecx
mov eax, dword [ebp + 0x78]
sub eax, ecx
mov dword [esp + 0x78], eax
mov eax, dword [esi + 0x10]
sub eax, ecx
mov dword [esp + 0x7c], eax
mov eax, dword [esi + 8]
sub eax, ecx
mov dword [esp + 0x80], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 2]
movzx eax, byte [eax + 3]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 4]
movzx eax, byte [eax + 5]
shl ecx, 8
or ecx, eax
mov dword [esp + 0x94], ecx
mov ecx, 0xffffffff
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x84], eax
mov eax, dword [ebp + 0x90]
and eax, 0xffff
cmove eax, ecx
mov dword [esp + 0x88], eax
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x8c], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x98], eax
lea eax, [esp + 0x68]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jg case.default.0x44d1fa
jns 0x441c23
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44afe4
jmp 0x44aea0
add dword [esi + 0xc], 6
jmp 0x441323
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, dword [ebp + 0x70]
add eax, ecx
mov dword [esi + 0x20], eax
cmp eax, dword [ebp + 0x70]
jne 0x441c4d
xor edx, edx
jmp 0x441c5a
movzx edx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl edx, 8
or edx, eax
mov ecx, dword [ebp + 0xa4]
test ecx, ecx
je 0x441c79
cmp edx, dword [ecx + 4]
jne 0x441c71
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x441cb6
mov eax, dword [ecx]
mov ecx, eax
test eax, eax
jne 0x441c64
mov dword [esi + 0x40], edx
lea ecx, [esi + 0x3c]
mov eax, dword [ebp + 0x90]
mov dword [esi + 0x4c], eax
mov eax, dword [esi + 8]
mov dword [esi + 0x50], eax
mov eax, dword [ebp + 0xa4]
mov dword [ecx], eax
mov dword [ebp + 0xa4], ecx
add dword [esi + 0xc], 3
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], eax
cmp eax, 0x1e
jg 0x441ccc
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
jmp 0x441ce4
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44edd2
mov edi, 0xffffffe6
jmp 0x44aea0
shl eax, 2
push eax
call dword [0x320797c]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
je 0x44eb58
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call fcn.0042c880
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x44b578
mov edx, dword [esi + 0xc]
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x441d10
jmp 0x441323
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x441d58
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xa
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
jmp 0x44bfbc
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0x2c], eax
cmp byte [edx], 0x77
je 0x441d80
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x441dbe
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xb
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x2c]
add eax, 3
jmp 0x44bfbc
mov edx, dword [esi + 0xc]
inc edx
mov dword [esi + 0x2c], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0x2c], eax
cmp byte [edx], 0x77
je 0x441de0
add eax, 3
mov dword [esi + 0xc], eax
jmp 0x441323
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx eax, byte [eax]
mov dword [esi + 0x9c], eax
mov dword [esi + 0x54], 1
mov eax, dword [esi + 0x9c]
cmp eax, 0x86
je 0x441e2f
cmp eax, 0x8b
jne 0x441e53
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
cmp eax, dword [ebp + 0x14]
jl 0x441e70
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
jmp 0x44c0c6
mov dword [esi + 0x5c], ebx
mov eax, dword [esi + 0xc]
sub eax, dword [ebp + 0x70]
mov dword [esi + 0x78], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xa4], eax
mov ecx, dword [esi + 0x98]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4 + 4]
mov dword [esi + 0xa8], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov eax, dword [ebp + 0xc]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xac], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov ecx, dword [ebp + 0x10]
sub ecx, dword [esi + 0x94]
mov edx, dword [esi + 8]
mov eax, dword [ebp + 0xc]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4], edx
cmp dword [esi + 0x9c], 0x88
jb 0x441eed
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x441f16
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x3f
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov dword [esi + 0x34], edx
mov al, byte [edx]
cmp al, 0x88
jae 0x441f52
cmp al, 0x81
je 0x441f52
mov dword [esi + 0x38], ebx
jmp 0x441f63
mov eax, dword [esi + 0x18]
mov eax, dword [eax + 4]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x18]
mov eax, dword [eax]
mov dword [esi + 0x18], eax
mov edx, dword [esi + 0x34]
mov al, byte [edx]
cmp al, 0x7d
jb 0x441f70
cmp al, 0x80
jbe 0x441f74
cmp al, 0x82
jne 0x441f91
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
jmp 0x44b422
cmp al, 0x85
je 0x441fa5
cmp al, 0x8a
je 0x441fa5
cmp al, 0x86
je 0x441fa5
cmp al, 0x8b
jne 0x44207b
movzx ecx, byte [edx + 3]
movzx eax, byte [edx + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x94], ecx
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
mov eax, dword [ebp + 0xa4]
test eax, eax
je 0x441fea
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x441fea
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
jmp 0x44b422
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0x98]
cmp edx, dword [ebp + 0x14]
jl 0x442019
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x44207b
mov ecx, dword [esi + 0x14]
cmp edx, ecx
jle 0x44203f
mov eax, dword [ebp + 0xc]
lea ecx, [eax + ecx*4]
lea edx, [eax + edx*4]
cmp ecx, edx
jae 0x44203f
mov eax, ecx
nop
mov dword [ecx], 0xffffffff
lea ecx, [eax + 4]
mov eax, ecx
cmp ecx, edx
jb 0x442030
mov eax, dword [ebp + 0x10]
sub eax, dword [esi + 0x94]
mov edx, dword [ebp + 0xc]
mov ecx, dword [esi + 0x98]
mov eax, dword [edx + eax*4]
mov dword [edx + ecx*4], eax
mov eax, dword [ebp + 0xc]
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0x98]
sub edx, dword [ebp + 0x74]
mov dword [eax + ecx*4 + 4], edx
mov eax, dword [esi + 0x98]
cmp dword [esi + 0x14], eax
jg 0x44207b
add eax, 2
mov dword [esi + 0x14], eax
mov edi, dword [esi + 0xc]
mov cl, byte [edi]
cmp cl, 0x7b
jne 0x4420b3
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ede2
mov edi, 0xfffffc1a
jmp 0x44aea0
cmp cl, 0x78
je 0x442143
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x442143
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x442109
test ecx, ecx
jne 0x4420ee
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 7
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x44bfbc
test ecx, ecx
jne 0x44212b
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xd
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x44bfbc
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x443a82
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x442174
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], ebx
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xc
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x44bfbc
cmp dword [ebp + 0x44], ebx
je case.0x44134f.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je case.default.0x44d1fa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je case.0x443246.10
jmp case.default.0x44d1fa
cmp dword [ebp + 0x44], ebx
je 0x4421c2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je case.default.0x44d1fa
mov ecx, dword [esi + 8]
mov edi, dword [ebp + 0x74]
cmp ecx, edi
je case.0x443246.10
cmp ecx, dword [ebp + 0x78]
je case.default.0x44d1fa
mov edx, dword [ebp + 0x18]
test edx, edx
je 0x44220d
cmp ecx, edi
jbe 0x442202
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edi
push edx
push ecx
call fcn.00451a30
add esp, 0x14
test eax, eax
je 0x442202
mov eax, 1
jmp 0x442204
xor eax, eax
test eax, eax
jne case.0x443246.10
jmp case.default.0x44d1fa
mov edx, dword [ebp + 0x1c]
lea eax, [edx + edi]
cmp ecx, eax
jb case.default.0x44d1fa
mov eax, ecx
sub eax, edx
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.default.0x44d1fa
cmp edx, 1
je case.0x443246.10
sub ecx, edx
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x443246.10
jmp case.default.0x44d1fa
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
je case.0x443246.10
jmp case.default.0x44d1fa
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x441323
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x442304
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x442292
mov ebx, dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push ebx
push eax
push edx
push edi
push ecx
call fcn.004518a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
jne case.0x443246.10
jmp 0x4422b3
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4422af
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4422af
cmp edi, 1
je case.0x443246.10
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x443246.10
mov ebx, dword [esp + 0x28]
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44bdfa.14
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb case.0x44bdfa.14
cmp dword [ebp + 0x18], 0
jne case.0x44bdfa.14
cmp dword [ebp + 0x1c], 2
jne case.0x44bdfa.14
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne case.0x44bdfa.14
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x44ebba
jmp case.0x44bdfa.14
cmp dword [ebp + 0x48], ebx
jne case.default.0x44d1fa
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x443246.10
cmp ecx, dword [ebp + 0x84]
jbe case.0x443246.10
cmp eax, 1
mov dword [ebp + 0x64], 1
jle case.0x443246.10
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee72
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x44aea4
cmp dword [ebp + 0x48], ebx
jne case.default.0x44d1fa
cmp dword [ebp + 0x58], ebx
je case.0x44134f.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443252
jmp case.default.0x44d1fa
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x44230d
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x44239e
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004518a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x4423cc
jmp 0x4423bb
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4423cc
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4423cc
cmp edi, 1
je 0x4423bb
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x4423cc
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x1c]
mov ecx, dword [esi + 8]
cmp ecx, eax
je 0x44230d
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.default.0x44d1fa
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb case.default.0x44d1fa
cmp dword [ebp + 0x18], ebx
jne case.default.0x44d1fa
cmp dword [ebp + 0x1c], 2
jne case.default.0x44d1fa
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne case.default.0x44d1fa
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle case.default.0x44d1fa
jmp 0x442337
cmp dword [esp + 0x28], ebx
je 0x4426d4
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x442436
mov dword [esi + 0x5c], ebx
jmp 0x442561
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
jne 0x44244e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
mov ecx, edx
cmp al, 0x80
je 0x442442
cmp ecx, dword [ebp + 0x84]
jae 0x44245c
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
mov eax, ebx
mov ecx, ebx
mov edi, ebx
cmp ebx, 0xc0
jb 0x442513
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x44248a
and eax, 0x1f
mov ebx, ecx
shl eax, 6
jmp 0x44250b
movzx eax, byte [edx + 2]
test bl, 0x10
jne 0x44249d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x442505
and eax, 0x3f
test bl, 8
jne 0x4424b8
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x442505
test bl, 4
jne 0x4424dc
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
jmp 0x442505
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 5]
shl ebx, 6
and eax, 0x3f
or ebx, eax
mov eax, ebx
mov ecx, ebx
mov edi, ebx
cmp dword [ebp + 0x54], 0
mov edx, ebx
je 0x442597
cmp edx, 0x5f
jne 0x442529
mov dword [esi + 0x5c], 1
jmp 0x442561
shr eax, 7
and ecx, 0x7f
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x4425a8
cmp eax, 3
je 0x4425a8
xor eax, eax
mov dword [esi + 0x5c], eax
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4425af
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44258b
cmp edi, dword [ebp + 0x84]
jbe 0x44258b
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
mov dword [esi + 0x54], 0
jmp 0x4427ef
cmp edi, 0x100
jae 0x44255c
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x44255c
mov eax, 1
jmp 0x44255e
movzx edx, byte [edi]
mov eax, edx
mov ecx, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x442666
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4425dd
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x44265e
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x4425f0
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x442658
and eax, 0x3f
test dl, 8
jne 0x44260b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x442658
test dl, 4
jne 0x44262f
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x442658
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
mov ebx, edx
cmp dword [ebp + 0x54], 0
mov edi, edx
je 0x4426b9
cmp edi, 0x5f
jne 0x44267f
mov dword [esi + 0x54], 1
jmp 0x4427ef
shr eax, 7
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
and ecx, 0x7f
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x4426ca
cmp eax, 3
je 0x4426ca
xor eax, eax
jmp 0x4427ec
cmp ebx, 0x100
jae 0x4426b2
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x4426b2
mov eax, 1
jmp 0x4427ec
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x4426e4
mov dword [esi + 0x5c], ebx
jmp 0x44276e
cmp eax, dword [ebp + 0x84]
ja 0x4426f3
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
movzx ecx, byte [eax - 1]
cmp dword [ebp + 0x54], ebx
je 0x44275e
cmp ecx, 0x5f
jne 0x44270d
mov dword [esi + 0x5c], 1
jmp 0x44276e
mov eax, ecx
test eax, eax
jns 0x442716
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
and ecx, 0x8000007f
jns 0x442730
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x442757
cmp eax, 3
je 0x442757
xor eax, eax
jmp 0x44276b
mov eax, 1
jmp 0x44276b
mov eax, dword [ebp + 0x40]
movzx eax, byte [ecx + eax]
shr eax, 4
and eax, 1
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44279d
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x442798
cmp eax, dword [ebp + 0x84]
jbe 0x442798
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x442337
mov dword [esi + 0x54], ebx
jmp 0x4427ef
movzx ecx, byte [eax]
cmp dword [ebp + 0x54], ebx
je 0x4427df
cmp ecx, 0x5f
jne 0x4427b3
mov dword [esi + 0x54], 1
jmp 0x4427ef
mov eax, ecx
test eax, eax
jns 0x4427bc
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
and ecx, 0x8000007f
jns 0x44268f
dec ecx
or ecx, 0xffffff80
inc ecx
jmp 0x44268f
mov eax, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0xc]
mov cl, byte [eax]
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0x54]
cmp cl, 5
jne 0x44280a
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x442812
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
test ecx, ecx
je 0x441323
jmp case.default.0x44d1fa
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x442859
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x44284e
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.004518a0
add esp, 0x14
test eax, eax
je 0x44284e
mov eax, 1
jmp 0x442850
xor eax, eax
test eax, eax
je 0x442884
jmp case.default.0x44d1fa
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x442884
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x442884
cmp edx, 1
je case.default.0x44d1fa
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x44d1fa
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44134f.13
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
dec eax
cmp edx, eax
jne case.0x44134f.13
cmp dword [ebp + 0x18], ebx
jne case.0x44134f.13
cmp dword [ebp + 0x1c], 2
jne case.0x44134f.13
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne case.0x44134f.13
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x442337
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x4428f2
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp ecx, dword [ebp + 0x84]
jbe case.default.0x44d1fa
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.default.0x44d1fa
jmp 0x442337
inc ecx
mov dword [esi + 8], ecx
cmp dword [esp + 0x28], ebx
je case.0x443246.10
cmp ecx, dword [ebp + 0x78]
jae case.0x443246.10
nop dword [eax]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne case.0x443246.10
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x442910
inc dword [esi + 0xc]
jmp 0x441323
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x442954
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.default.0x44d1fa
cmp eax, dword [ebp + 0x84]
jbe case.default.0x44d1fa
jmp 0x442407
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x441323
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x442981
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov eax, edx
mov dword [esi + 8], edi
test ebx, ebx
je 0x442a6b
cmp edx, 0xc0
jb 0x442a6b
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x4429bf
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x442a66
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x4429e0
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x442a66
test dl, 8
jne 0x442a03
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x442a66
test dl, 4
jne 0x442a32
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x442a66
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, edx
cmp eax, 0x100
jae case.0x443246.10
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x443246.10
jmp case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x442aa9
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edx, dword [ebp + 0x84]
jmp 0x4428d7
movzx ecx, byte [edx]
inc edx
mov ebx, dword [esp + 0x28]
mov eax, ecx
mov dword [esi + 8], edx
test ebx, ebx
je 0x442ba6
cmp ecx, 0xc0
jb 0x442ba6
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x442ae5
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x442ba1
test cl, 0x10
jne 0x442b06
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x442ba1
test cl, 8
jne 0x442b30
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x442ba1
test cl, 4
jne 0x442b66
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x442ba1
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ecx
cmp eax, 0xff
ja case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x443246.10
jmp case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x442be4
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov eax, edx
mov dword [esi + 8], edi
test ebx, ebx
je 0x442cec
cmp edx, 0xc0
jb 0x442cec
test dl, 0x20
jne 0x442c20
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x442ce7
test dl, 0x10
jne 0x442c47
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x442ce7
test dl, 8
jne 0x442c77
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x442ce7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x442cb3
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x442ce7
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, edx
cmp eax, 0x100
jae case.0x443246.10
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x443246.10
jmp case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x442d2a
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edx, dword [ebp + 0x84]
jmp 0x4428d7
movzx ecx, byte [edx]
inc edx
mov ebx, dword [esp + 0x28]
mov eax, ecx
mov dword [esi + 8], edx
test ebx, ebx
je 0x442e27
cmp ecx, 0xc0
jb 0x442e27
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x442d66
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x442e22
test cl, 0x10
jne 0x442d87
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x442e22
test cl, 8
jne 0x442db1
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x442e22
test cl, 4
jne 0x442de7
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x442e22
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ecx
cmp eax, 0xff
ja case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x443246.10
jmp case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x442e65
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov eax, edx
mov dword [esi + 8], edi
test ebx, ebx
je 0x442f6d
cmp edx, 0xc0
jb 0x442f6d
test dl, 0x20
jne 0x442ea1
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x442f68
test dl, 0x10
jne 0x442ec8
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x442f68
test dl, 8
jne 0x442ef8
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x442f68
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x442f34
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x442f68
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, edx
cmp eax, 0x100
jae case.0x443246.10
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x443246.10
jmp case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x442fab
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edx, dword [ebp + 0x84]
jmp 0x4428d7
movzx ecx, byte [edx]
inc edx
mov ebx, dword [esp + 0x28]
mov eax, ecx
mov dword [esi + 8], edx
test ebx, ebx
je 0x4430a8
cmp ecx, 0xc0
jb 0x4430a8
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x442fe7
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4430a3
test cl, 0x10
jne 0x443008
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4430a3
test cl, 8
jne 0x443032
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4430a3
test cl, 4
jne 0x443068
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4430a3
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ecx
cmp eax, 0xff
ja case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x443246.10
jmp case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4430e6
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov eax, edi
mov dword [esi + 8], edi
mov ebx, edx
mov ecx, edx
mov dword [esp + 0x20], edi
je 0x443226
mov dword [esp + 0x20], edi
cmp edx, 0xc0
jb 0x443226
test dl, 0x20
jne 0x443136
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x44322a
test dl, 0x10
jne 0x443166
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x44322a
test dl, 8
jne 0x4431a2
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x44322a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x4431e7
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x44322a
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ebx, edx
mov ecx, edx
mov edi, eax
jmp 0x44322a
mov edi, dword [esp + 0x20]
cmp ebx, 0x85
ja 0x443289
cmp ecx, 0x85
je case.0x443246.11
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x44d1fa
jmp dword [edx*4 + 0x44f0cc]
cmp edi, dword [ebp + 0x78]
jb 0x443274
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x443246.10
cmp eax, dword [ebp + 0x84]
jbe case.0x443246.10
cmp ecx, 1
jmp 0x44232a
cmp byte [eax], 0xa
jne case.0x443246.10
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x441323
sub edx, 0x2028
je case.0x443246.11
sub edx, 1
jne case.default.0x44d1fa
cmp dword [ebp + 0x68], 0
je case.0x443246.10
jmp case.default.0x44d1fa
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4432ca
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov ebx, edx
mov dword [esi + 8], edi
mov eax, edx
mov dword [esp + 0x20], edx
mov ecx, edx
je 0x4433e5
mov dword [esp + 0x20], edx
cmp edx, 0xc0
jb 0x4433e5
test dl, 0x20
jne 0x443311
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4433d8
test dl, 0x10
jne 0x443338
movzx eax, byte [edi]
and edx, 0xf
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4433d8
test dl, 8
jne 0x443368
movzx eax, byte [edi]
and edx, 7
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x4433d8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 4
jne 0x4433a4
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x4433d8
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ebx, edx
mov dword [esp + 0x20], edx
mov eax, edx
mov ecx, edx
cmp dword [esp + 0x20], 0x2000
mov edi, edx
ja 0x44344b
cmp ebx, 0x2000
je case.default.0x44d1fa
cmp edx, 0xa0
ja 0x44342b
cmp edi, 0xa0
je case.default.0x44d1fa
cmp edx, 9
je case.default.0x44d1fa
cmp edx, 0x20
je case.default.0x44d1fa
inc dword [esi + 0xc]
jmp 0x441323
cmp edx, 0x1680
je case.default.0x44d1fa
cmp edx, 0x180e
je case.default.0x44d1fa
inc dword [esi + 0xc]
jmp 0x441323
cmp eax, 0x3000
ja case.0x443246.10
cmp ecx, 0x3000
je case.default.0x44d1fa
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x443246.10
movzx eax, byte [edx + 0x44f0e4]
jmp dword [eax*4 + 0x44f0dc]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x4434a0
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edx, dword [ebp + 0x84]
jmp 0x4428d7
movzx ecx, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ebx, ecx
mov dword [esi + 8], edx
mov eax, ecx
mov dword [esp + 0x20], ecx
mov edi, ecx
je 0x4435b0
mov dword [esp + 0x20], ecx
cmp ecx, 0xc0
jb 0x4435b0
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4434e7
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4435a3
test cl, 0x10
jne 0x443508
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4435a3
test cl, 8
jne 0x443532
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4435a3
test cl, 4
jne 0x443568
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4435a3
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov ebx, ecx
mov dword [esp + 0x20], ecx
mov eax, ecx
mov edi, ecx
cmp dword [esp + 0x20], 0x2000
mov edx, ecx
ja 0x443610
cmp ebx, 0x2000
je case.0x443246.10
cmp ecx, 0xa0
ja 0x4435f3
cmp edx, 0xa0
je case.0x443246.10
cmp ecx, 9
je case.0x443246.10
cmp ecx, 0x20
je case.0x443246.10
jmp case.default.0x44d1fa
cmp ecx, 0x1680
je case.0x443246.10
cmp ecx, 0x180e
je case.0x443246.10
jmp case.default.0x44d1fa
cmp eax, 0x3000
ja case.default.0x44d1fa
cmp edi, 0x3000
je case.0x443246.10
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x44d1fa
movzx eax, byte [ecx + 0x44f14c]
jmp dword [eax*4 + 0x44f144]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x443665
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov ecx, edx
mov dword [esi + 8], edi
mov eax, edx
test ebx, ebx
je 0x44377d
cmp edx, 0xc0
jb 0x44377d
test dl, 0x20
jne 0x4436a5
movzx ecx, byte [edi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
mov edx, ecx
or edx, eax
lea eax, [edi + 1]
jmp 0x443776
test dl, 0x10
jne 0x4436cc
movzx ecx, byte [edi]
and edx, 0xf
movzx eax, byte [edi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x443776
test dl, 8
jne 0x4436ff
movzx ecx, byte [edi]
and edx, 7
movzx eax, byte [edi + 1]
and ecx, 0x3f
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x443776
movzx eax, byte [edi]
and eax, 0x3f
test dl, 4
jne 0x44373b
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x443776
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov eax, edx
cmp ecx, 0x85
ja 0x4437a3
cmp eax, 0x85
je case.0x44bdfa.14
add edx, 0xfffffff6
cmp edx, 3
ja case.0x443246.10
jmp dword [edx*4 + 0x44f1ac]
sub edx, 0x2028
je case.0x44bdfa.14
sub edx, 1
jne case.0x443246.10
jmp case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4437de
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
mov ebx, dword [esp + 0x28]
mov ecx, edx
mov dword [esi + 8], edi
mov eax, edx
test ebx, ebx
je 0x4438d0
cmp edx, 0xc0
jb 0x4438d0
test dl, 0x20
jne 0x44381c
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4438c9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x443843
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4438c9
test dl, 8
jne 0x443866
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x4438c9
test dl, 4
jne 0x443895
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x4438c9
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov eax, edx
cmp ecx, 0x85
ja 0x4438f6
cmp eax, 0x85
je case.0x443246.10
add edx, 0xfffffff6
cmp edx, 3
ja case.0x44bdfa.14
jmp dword [edx*4 + 0x44f1bc]
sub edx, 0x2028
je case.0x443246.10
sub edx, 1
je case.0x443246.10
jmp case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x443931
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov ecx, edx
mov dword [esi + 8], edi
mov ebx, edx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], edx
je 0x443a44
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], edx
mov dword [esp + 0x1c], edx
cmp edx, 0xc0
jb 0x443a44
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x44398a
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x443a31
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x4439ab
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x443a31
test dl, 8
jne 0x4439ce
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x443a31
test dl, 4
jne 0x4439fd
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x443a31
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov ecx, edx
mov dword [esi + 8], eax
mov ebx, ecx
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x1c], ecx
mov edi, dword [esi + 0xc]
and ebx, 0x7f
shr ecx, 7
movzx eax, byte [ecx + 0x5262c8]
movzx ecx, byte [edi + 1]
shl eax, 7
add eax, ebx
movzx ebx, word [eax*2 + 0x5284c8]
cmp ecx, 0xa
ja case.0x44d178.15
jmp dword [ecx*4 + 0x44f1cc]
cmp dword [esi + 0x9c], 0xf
je case.default.0x44d1fa
lea eax, [edi + 3]
mov dword [esi + 0xc], eax
jmp 0x441323
mov al, byte [ebx*8 + 0x524c49]
cmp al, 9
je 0x443aa4
cmp al, 5
je 0x443aa4
cmp al, 8
je 0x443aa4
xor ecx, ecx
jmp 0x443aa9
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x443a82
jmp case.default.0x44d1fa
movzx ecx, byte [ebx*8 + 0x524c49]
xor edx, edx
movzx eax, byte [edi + 2]
cmp eax, dword [ecx*4 + 0x524a58]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x443a82
jmp case.default.0x44d1fa
mov al, byte [edi + 2]
xor ecx, ecx
cmp al, byte [ebx*8 + 0x524c49]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x443a82
jmp case.default.0x44d1fa
mov al, byte [edi + 2]
xor ecx, ecx
cmp al, byte [ebx*8 + 0x524c48]
jmp 0x443af7
movzx eax, byte [ebx*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x443aa4
cmp eax, 3
je 0x443aa4
xor ecx, ecx
jmp 0x443aa9
cmp edx, 0x20
ja 0x443b63
je case.0x443a6e.0
add edx, 0xfffffff7
cmp edx, 4
ja case.0x443bdf.8203
jmp dword [edx*4 + 0x44f1f8]
cmp edx, 0x2000
ja 0x443bbf
je case.0x443a6e.0
cmp edx, 0x1680
ja 0x443bb7
je case.0x443a6e.0
sub edx, 0x85
je case.0x443a6e.0
sub edx, 0x1b
je case.0x443a6e.0
movzx eax, byte [ebx*8 + 0x524c49]
xor ecx, ecx
cmp dword [eax*4 + 0x524a58], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x443b03
cmp edx, 0x180e
jmp 0x443b8e
cmp edx, 0x3000
ja case.0x443bdf.8203
je case.0x443a6e.0
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x443bdf.8203
movzx eax, byte [edx + 0x44f214]
jmp dword [eax*4 + 0x44f20c]
movzx eax, byte [ebx*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x443aa4
cmp eax, 3
je 0x443aa4
cmp edx, 0x5f
je 0x443aa4
xor ecx, ecx
jmp 0x443aa9
movzx eax, byte [edi + 2]
mov ecx, dword [esp + 0x20]
lea eax, [eax*4 + 0x524b08]
cmp ecx, dword [eax]
jb 0x443c3d
mov ecx, dword [eax]
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x443c4f
mov ecx, dword [eax]
cmp edx, ecx
jae 0x443c30
cmp dword [esi + 0x9c], 0x10
jne 0x443a82
jmp case.default.0x44d1fa
cmp dword [esi + 0x9c], 0x10
je 0x443a82
jmp case.default.0x44d1fa
cmp dword [esp + 0x24], 0x24
je 0x443aa4
cmp dword [esp + 0x1c], 0x40
je 0x443aa4
cmp edx, 0x60
je 0x443aa4
cmp edx, 0xa0
jb 0x443c94
cmp edx, 0xd7ff
jbe 0x443aa4
cmp edx, 0xe000
jae 0x443aa4
xor ecx, ecx
jmp 0x443aa9
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x443cc8
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edx, dword [ebp + 0x84]
jmp 0x4428d7
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ecx, eax
mov dword [esi + 8], edx
mov ebx, eax
mov edi, edx
mov dword [esp + 0x10], edx
je 0x443db5
mov dword [esp + 0x10], edx
cmp eax, 0xc0
jb 0x443db5
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x20
jne 0x443d0b
and eax, 0x1f
lea edi, [edx + 1]
shl eax, 6
jmp 0x443daa
test al, 0x10
jne 0x443d23
and eax, 0xf
lea edi, [edx + 2]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
jmp 0x443da4
test al, 8
jne 0x443d44
and eax, 7
lea edi, [edx + 3]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x443da4
test al, 4
jne 0x443d71
and eax, 3
lea edi, [edx + 4]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x443da4
and eax, 1
lea edi, [edx + 5]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 8], edi
mov ebx, ecx
mov dword [esp + 0x10], edi
mov edx, dword [ebp + 0x78]
and ebx, 0x7f
shr ecx, 7
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c4a]
mov dword [esp + 0x1c], eax
cmp dword [esp + 0x10], edx
jae 0x443f25
mov dword [esp + 0x10], edx
nop dword [eax]
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x443ecc
cmp edx, 0xc0
jb 0x443ecc
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x443e31
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x443ec8
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x443e4c
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x443ec2
and eax, 0x3f
test dl, 8
jne 0x443e6c
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x443ec2
test dl, 4
jne 0x443e95
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x443ec2
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x1c]
and ecx, 0x7f
shr edx, 7
movzx eax, byte [edx + 0x5262c8]
mov edx, dword [esp + 0x10]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx ecx, byte [eax*8 + 0x524c4a]
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x524ad0], eax
mov ebp, dword [esp + 0xb0]
je 0x443f25
add edi, ebx
mov dword [esp + 0x1c], ecx
mov dword [esi + 8], edi
mov edx, dword [ebp + 0x78]
mov dword [esp + 0x10], edx
cmp edi, edx
jb 0x443df0
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x443246.10
mov eax, dword [esi + 8]
cmp eax, edx
jb case.0x443246.10
jmp 0x443260
mov edx, dword [esi + 0xc]
xor eax, eax
cmp cl, 0x74
sete al
movzx ebx, byte [edx + 3]
movzx edi, byte [edx + 1]
mov dword [esp + 0x30], eax
movzx eax, byte [edx + 4]
shl ebx, 8
or ebx, eax
shl edi, 8
movzx eax, byte [edx + 2]
or edi, eax
lea eax, [edx + 5]
imul edi, dword [ebp + 0x24]
add edi, dword [ebp + 0x30]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov dword [esi + 0x98], 0
test ebx, ebx
je 0x444038
mov edx, edi
mov dword [esp + 0x10], edi
movzx ecx, byte [edi]
dec ebx
movzx eax, byte [edi + 1]
shl ecx, 8
or ecx, eax
lea eax, [ecx + ecx]
mov dword [esi + 0x98], eax
cmp eax, dword [esi + 0x14]
jge 0x443fca
mov eax, dword [ebp + 0xc]
mov edx, dword [esp + 0x10]
mov edi, dword [eax + ecx*8]
test edi, edi
jns 0x443fdb
mov edi, dword [ebp + 0x24]
add edi, edx
mov dword [esp + 0x10], edi
mov edx, edi
test ebx, ebx
jg 0x443fa1
jmp 0x444038
mov eax, dword [eax + ecx*8 + 4]
sub eax, edi
jmp 0x444032
xor eax, eax
cmp cl, 0x72
sete al
mov dword [esp + 0x30], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
add dword [esi + 0xc], 3
mov eax, dword [esi + 0x98]
cmp eax, dword [esi + 0x14]
jge 0x444028
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + eax*4]
test edx, edx
js 0x444028
mov eax, dword [ecx + eax*4 + 4]
sub eax, edx
jmp 0x444032
mov eax, dword [ebp + 0x50]
neg eax
sbb eax, eax
neg eax
dec eax
mov dword [esi + 0x88], eax
mov edx, dword [esi + 0xc]
mov bl, byte [edx]
movzx ecx, bl
add ecx, 0xffffff9e
cmp ecx, 7
ja case.default.0x444053
movzx eax, byte [ecx + 0x44f27c]
jmp dword [eax*4 + 0x44f274]
lea eax, [edx + 1]
mov ebx, ecx
mov dword [esi + 0xc], eax
and ebx, 1
movsx eax, byte [ecx + 0x523f98]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x523fa4]
mov dword [esp + 0x10], ebx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4440d8
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x4440d8
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x10], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x4440d4
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
test eax, eax
je 0x441323
jns 0x4440f5
cmp dword [esi + 0x90], 0
je 0x441323
mov eax, dword [esi + 0x90]
mov ecx, eax
cmp eax, 1
jl 0x44413a
mov ebx, 1
push dword [esp + 0x30]
mov edi, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0044fdf0
add esp, 0x14
test eax, eax
js 0x444158
add eax, edi
inc ebx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
cmp ebx, eax
jle 0x444107
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x10], 0
je 0x444183
mov dword [esi + 0x84], eax
jmp 0x44b7f3
mov ecx, edi
cmp eax, 0xfffffffe
jne 0x444167
mov edi, dword [ebp + 0x78]
mov ecx, edi
mov dword [esi + 8], edi
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x78]
jb case.default.0x44d1fa
jmp 0x4428d1
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
mov eax, edi
cmp eax, dword [esi + 0x8c]
jge 0x44b83f
push dword [esp + 0x30]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0044fdf0
add esp, 0x14
test eax, eax
js 0x4441c6
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x44418f
cmp eax, 0xfffffffe
jne 0x44b83f
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x44b83f
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x44b83f
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle 0x44b83f
jmp 0x442337
push dword [esp + 0x30]
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.0044fdf0
mov ecx, eax
add esp, 0x14
mov dword [esi + 0x88], ecx
test ecx, ecx
jns 0x44425f
cmp ecx, 0xfffffffe
jne 0x444234
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.default.0x44d1fa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.default.0x44d1fa
cmp eax, dword [ebp + 0x84]
jbe case.default.0x44d1fa
jmp 0x442407
add dword [esi + 8], ecx
jmp 0x441323
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
lea eax, [edx + 0x21]
mov dword [esi + 0xc], eax
mov bl, byte [eax]
movzx ecx, bl
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x44428f
movzx eax, byte [ecx + 0x44f28c]
jmp dword [eax*4 + 0x44f284]
lea eax, [edx + 0x22]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x4442ac
mov eax, ecx
and eax, 1
mov dword [esp + 0x20], eax
jmp 0x4442b4
mov dword [esp + 0x24], 1
movsx eax, byte [ecx + 0x523f98]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x523fa4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x444349
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x444349
movzx ecx, byte [edx + 0x22]
xor eax, eax
cmp bl, 0x69
sete al
mov dword [esp + 0x20], eax
xor eax, eax
cmp bl, 0x6d
sete al
shl ecx, 8
mov dword [esp + 0x24], eax
movzx eax, byte [edx + 0x23]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x44432f
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x444349
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ecx, dword [esp + 0x28]
mov ebx, 1
mov dword [esp + 0x10], ebx
test ecx, ecx
je 0x4444c3
cmp dword [esi + 0x90], ebx
jl 0x44450b
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov ecx, ebx
mov eax, ebx
cmp ebx, 0xc0
jb 0x444483
test bl, 0x20
jne 0x4443b7
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x444483
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4443e5
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x444483
test bl, 8
jne 0x444412
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 3]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x444483
test bl, 4
jne 0x444448
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 4]
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, ebx
jmp 0x444483
and ebx, 1
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov ebx, ecx
mov eax, ecx
cmp eax, 0xff
jbe 0x444493
cmp dword [esi + 0x9c], 0x6e
jmp 0x4444a6
mov eax, dword [esi + 0x28]
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.default.0x44d1fa
mov ebx, dword [esp + 0x10]
inc ebx
mov dword [esp + 0x10], ebx
cmp ebx, dword [esi + 0x90]
jle 0x444370
jmp 0x444507
cmp dword [esi + 0x90], ebx
jl 0x44450b
nop dword [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx edi, byte [eax]
mov edx, 1
inc eax
mov ecx, edi
mov dword [esi + 8], eax
and ecx, 7
mov eax, dword [esi + 0x28]
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4444d0
mov ecx, dword [esp + 0x28]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x444537
mov dword [esi + 0x84], eax
test ecx, ecx
jne 0x44c907
jmp 0x44b8ec
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
test ecx, ecx
je 0x44471c
cmp eax, dword [esi + 0x8c]
jge 0x44470c
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4446ea
movzx ebx, byte [edi]
mov dword [esp + 0x1c], 1
mov ecx, ebx
mov edx, ebx
cmp ebx, 0xc0
jb 0x444695
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test bl, 0x20
jne 0x4445b5
mov eax, ebx
mov dword [esp + 0x1c], 2
and eax, 0x1f
mov ebx, ecx
shl eax, 6
or ebx, eax
mov eax, 2
mov ecx, ebx
mov edx, ebx
jmp 0x44469a
movzx eax, byte [edi + 2]
and eax, 0x3f
test bl, 0x10
jne 0x4445e4
and ebx, 0xf
mov dword [esp + 0x1c], 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
mov eax, 3
mov ecx, ebx
mov edx, ebx
jmp 0x44469a
test bl, 8
jne 0x444618
and ebx, 7
mov dword [esp + 0x1c], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, 4
mov ecx, ebx
mov edx, ebx
jmp 0x44469a
test bl, 4
jne 0x444655
and ebx, 3
mov dword [esp + 0x1c], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, 5
mov ecx, ebx
mov edx, ebx
jmp 0x44469a
and ebx, 1
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, 6
mov ecx, ebx
mov dword [esp + 0x1c], eax
mov edx, ebx
jmp 0x44469a
mov eax, 1
cmp edx, 0xff
jbe 0x4446ad
cmp dword [esi + 0x9c], 0x6e
je 0x44470c
jmp 0x4446ce
mov eax, dword [esp + 0x1c]
and ecx, 7
mov dword [esp + 0x1c], eax
mov edx, 1
mov eax, dword [esi + 0x28]
shr ebx, 3
shl edx, cl
test byte [ebx + eax], dl
je 0x44470c
mov eax, dword [esp + 0x1c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jl 0x444560
jmp 0x44470c
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44470c
cmp edi, dword [ebp + 0x84]
jbe 0x44470c
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44c971
cmp eax, dword [esi + 0x8c]
jge 0x444781
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x44475f
movzx edi, byte [ebx]
mov edx, 1
mov eax, dword [esi + 0x28]
mov ecx, edi
and ecx, 7
shr edi, 3
shl edx, cl
test byte [edi + eax], dl
je 0x444781
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jl 0x444724
jmp 0x444781
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x444781
cmp ebx, dword [ebp + 0x84]
jbe 0x444781
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44b92f
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov bl, byte [edx]
movzx ecx, bl
add ecx, 0xffffff9e
cmp ecx, 0xb
ja case.default.0x4447c7
movzx eax, byte [ecx + 0x44f2a0]
jmp dword [eax*4 + 0x44f298]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x4447e4
mov eax, ecx
and eax, 1
mov dword [esp + 0x20], eax
jmp 0x4447ec
mov dword [esp + 0x24], 1
movsx eax, byte [ecx + 0x523f98]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x523fa4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x444881
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x444881
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
mov dword [esp + 0x20], eax
xor eax, eax
cmp bl, 0x6d
sete al
shl ecx, 8
mov dword [esp + 0x24], eax
movzx eax, byte [edx + 2]
or ecx, eax
mov dword [esi + 0x90], ecx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 3]
movzx eax, byte [eax + 4]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
jne 0x444867
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x444881
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov eax, dword [esi + 0x90]
mov ebx, 1
mov ecx, eax
cmp eax, ebx
jl 0x4449c0
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
cmp dword [esp + 0x28], 0
lea edi, [eax + 1]
movzx edx, byte [eax]
mov dword [esi + 8], edi
je 0x444997
cmp edx, 0xc0
jb 0x444997
test dl, 0x20
jne 0x4448e7
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x444994
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x44490e
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x444994
test dl, 8
jne 0x444931
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x444994
test dl, 4
jne 0x444960
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x444994
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
push dword [esp + 0x28]
push dword [esi + 0x28]
push edx
call fcn.00451180
add esp, 0xc
test eax, eax
je case.default.0x44d1fa
mov eax, dword [esi + 0x90]
inc ebx
cmp ebx, eax
jle 0x4448a0
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x4449de
mov dword [esi + 0x84], eax
jmp 0x44c6e2
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jge 0x444b31
nop word [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444b0f
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
je 0x444ae1
cmp edx, 0xc0
jb 0x444ae1
test dl, 0x20
jne 0x444a41
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x444ad9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x444a63
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x444ad9
and eax, 0x3f
test dl, 8
jne 0x444a83
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x444ad9
test dl, 4
jne 0x444aac
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x444ad9
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
push dword [esp + 0x28]
push dword [esi + 0x28]
push edx
call fcn.00451180
add esp, 0xc
test eax, eax
je 0x444b31
mov eax, dword [esp + 0x10]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jl 0x444a00
jmp 0x444b31
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x444b31
cmp edi, dword [ebp + 0x84]
jbe 0x444b31
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44c754
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x444cfd
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x444c88
test bl, 0x20
jne 0x444b9b
mov eax, dword [esi + 0xc]
and ebx, 0x1f
shl ebx, 6
movzx eax, byte [eax + 1]
and eax, 0x3f
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x444c88
test bl, 0x10
jne 0x444bd0
mov eax, dword [esi + 0xc]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x444c88
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
and eax, 0x3f
test bl, 8
jne 0x444c11
and ebx, 7
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x444c88
test bl, 4
jne 0x444c4a
and ebx, 3
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x444c88
and ebx, 1
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov edi, dword [ebp + 0x78]
mov eax, edi
mov edx, dword [esi + 8]
sub eax, edx
mov ecx, dword [esi + 0x88]
cmp ecx, eax
jle 0x444cbd
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edx, edi
jb case.default.0x44d1fa
cmp edx, dword [ebp + 0x84]
jmp 0x4428d7
test ecx, ecx
jle 0x444cef
lea eax, [ecx - 1]
mov dword [esi + 0x88], eax
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 8]
mov bl, byte [eax]
mov dl, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc dword [esi + 0xc]
cmp bl, dl
jne case.default.0x44d1fa
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x444cc1
lea eax, [ecx - 1]
mov dword [esi + 0x88], eax
jmp 0x441323
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x444d39
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edi, dword [ebp + 0x84]
jbe case.0x44bdfa.14
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x44ebba
jmp case.0x44bdfa.14
mov eax, dword [esi + 0xc]
mov cl, byte [edi]
mov dl, byte [eax + 1]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dl, cl
je 0x445057
jmp case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x444d75
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp edi, dword [ebp + 0x84]
jmp 0x4428d7
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x445038
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x444ebc
test bl, 0x20
jne 0x444dcf
mov eax, dword [esi + 0xc]
and ebx, 0x1f
shl ebx, 6
movzx eax, byte [eax + 1]
and eax, 0x3f
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x444ebc
test bl, 0x10
jne 0x444e04
mov eax, dword [esi + 0xc]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x444ebc
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
and eax, 0x3f
test bl, 8
jne 0x444e45
and ebx, 7
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x444ebc
test bl, 4
jne 0x444e7e
and ebx, 3
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x444ebc
and ebx, 1
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov eax, dword [esi + 8]
mov edi, dword [esi + 0x80]
movzx ecx, byte [eax]
cmp edi, 0x80
jae 0x444eea
mov edx, dword [ebp + 0x38]
mov al, byte [edx + edi]
cmp al, byte [ecx + edx]
jne case.default.0x44d1fa
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x441323
lea edx, [eax + 1]
mov edi, ecx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x444fdd
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x444f19
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x444fd8
test cl, 0x10
jne 0x444f3a
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x444fd8
test cl, 8
jne 0x444f67
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x444fd8
test cl, 4
jne 0x444f9d
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x444fd8
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
mov edx, dword [esi + 0x80]
cmp edx, ecx
je 0x441323
mov eax, edx
test eax, eax
jns 0x444ffd
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5262c8]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x445018
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5284c8]
mov eax, dword [eax*8 + 0x524c4c]
add eax, edx
cmp edi, eax
je 0x441323
jmp case.default.0x44d1fa
mov eax, dword [esi + 0xc]
mov edx, dword [ebp + 0x38]
movzx ecx, byte [edi]
movzx eax, byte [eax + 1]
mov al, byte [eax + edx]
cmp al, byte [ecx + edx]
jne case.0x44bdfa.14
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x441323
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x445175
mov dword [esp + 0x24], 1
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x28
je 0x4450ba
mov dword [esp + 0x20], ebx
cmp al, 0x35
jne 0x4450c2
mov dword [esp + 0x20], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x445175
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x445175
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x445175
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x445175
mov edx, dword [esi + 0xc]
cmp cl, 0x2e
sbb eax, eax
and eax, 0xfffffff3
movzx ebx, byte [edx]
add eax, 0x2e
sub ebx, eax
lea eax, [edx + 1]
mov ecx, ebx
mov dword [esi + 0xc], eax
and ebx, 1
mov dword [esp + 0x20], ebx
movsx eax, byte [ecx + 0x523f98]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x523fa4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x445175
mov dword [esi + 0x8c], 0x7fffffff
mov ebx, dword [esp + 0x28]
test ebx, ebx
je 0x4455c9
mov dword [esi + 0x88], 1
mov eax, dword [esi + 0xc]
mov dword [esi + 0x24], eax
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
mov dword [esi + 0x80], ebx
cmp ebx, 0xc0
jb 0x4452be
test bl, 0x20
jne 0x4451d1
mov eax, dword [esi + 0xc]
and ebx, 0x1f
shl ebx, 6
movzx eax, byte [eax + 1]
and eax, 0x3f
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x4452be
test bl, 0x10
jne 0x445206
mov eax, dword [esi + 0xc]
and ebx, 0xf
shl ebx, 6
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
and ecx, 0x3f
or ecx, ebx
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x4452be
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
and edx, 0x3f
and eax, 0x3f
test bl, 8
jne 0x445247
and ebx, 7
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x4452be
test bl, 4
jne 0x445280
and ebx, 3
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x4452be
and ebx, 1
shl ebx, 6
or edx, ebx
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 5
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
cmp dword [esi + 0x88], 1
jle 0x4455da
cmp dword [esi + 0x9c], 0x2e
jb 0x445330
mov edx, dword [esi + 0x80]
mov eax, edx
test eax, eax
jns 0x4452ec
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5262c8]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x445307
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5284c8]
mov ecx, dword [eax*8 + 0x524c4c]
add ecx, edx
cmp ecx, edx
je 0x445330
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.00451120
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x445337
mov dword [esi + 0x6c], 0
mov eax, dword [esi + 0x90]
mov ecx, eax
mov dword [esp + 0x10], 1
cmp eax, 1
jl 0x445444
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x88]
sub eax, edi
mov ebx, dword [esi + 8]
cmp ebx, eax
ja 0x4453be
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x445381
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x445386
add ecx, 4
add edx, 4
sub edi, 4
jae 0x445370
cmp edi, 0xfffffffc
je 0x4453b3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4453bb
cmp edi, 0xfffffffd
je 0x4453b3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4453bb
cmp edi, 0xfffffffe
je 0x4453b3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4453bb
cmp edi, 0xffffffff
je 0x4453b3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4453bb
mov eax, dword [esi + 0x88]
jmp 0x445426
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x445462
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x445462
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x4453f1
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4453f6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4453e0
cmp edi, 0xfffffffc
je 0x445423
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x445462
cmp edi, 0xfffffffd
je 0x445423
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x445462
cmp edi, 0xfffffffe
je 0x445423
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x445462
cmp edi, 0xffffffff
je 0x445423
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x445462
mov eax, dword [esi + 0x6c]
mov edx, dword [esp + 0x10]
add eax, ebx
inc edx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], edx
cmp edx, eax
jle 0x445350
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x445484
mov dword [esi + 0x84], eax
jmp 0x44cae1
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp ebx, dword [ebp + 0x78]
jb case.default.0x44d1fa
cmp ebx, dword [ebp + 0x84]
jmp 0x4428d7
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x10], eax
cmp eax, dword [esi + 0x8c]
jge 0x4455b9
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x88]
sub eax, edi
mov ebx, dword [esi + 8]
cmp ebx, eax
ja 0x44550e
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x4454d1
nop
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4454d6
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4454c0
cmp edi, 0xfffffffc
je 0x445503
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x44550b
cmp edi, 0xfffffffd
je 0x445503
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x44550b
cmp edi, 0xfffffffe
je 0x445503
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x44550b
cmp edi, 0xffffffff
je 0x445503
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x44550b
mov eax, dword [esi + 0x88]
jmp 0x445576
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x445592
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x445592
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x445541
nop dword [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x445546
add ecx, 4
add edx, 4
sub edi, 4
jae 0x445530
cmp edi, 0xfffffffc
je 0x445573
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x445592
cmp edi, 0xfffffffd
je 0x445573
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x445592
cmp edi, 0xfffffffe
je 0x445573
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x445592
cmp edi, 0xffffffff
je 0x445573
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x445592
mov eax, dword [esi + 0x6c]
mov ecx, dword [esp + 0x10]
add eax, ebx
inc ecx
mov dword [esi + 8], eax
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x8c]
jl 0x4454a0
jmp 0x4455b9
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4455b9
cmp ebx, dword [ebp + 0x78]
jb 0x4455b9
cmp ebx, dword [ebp + 0x84]
jbe 0x4455b9
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44cb8d
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
jmp 0x4455de
mov ebx, dword [esp + 0x28]
cmp dword [esi + 0x9c], 0x2e
mov edi, 1
jb 0x4456d8
mov ecx, dword [esi + 0x80]
mov eax, dword [ebp + 0x3c]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x90]
mov ecx, eax
cmp eax, edi
jl 0x445644
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44b8a5
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x445633
cmp dword [esi + 0x94], ecx
jne case.0x44bdfa.14
inc eax
inc edi
mov dword [esi + 8], eax
mov eax, dword [esi + 0x90]
cmp edi, eax
jle 0x445610
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x445662
mov dword [esi + 0x84], eax
jmp 0x44b9d9
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
jge 0x4456c8
mov edi, ecx
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4456a6
movzx edx, byte [eax]
cmp dword [esi + 0x80], edx
je 0x445695
mov ecx, edi
cmp dword [esi + 0x94], edx
jne 0x4456c8
inc eax
inc ecx
mov dword [esi + 8], eax
mov edi, ecx
cmp ecx, dword [esi + 0x8c]
jl 0x445678
jmp 0x4456c8
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x4456c8
cmp eax, dword [ebp + 0x84]
jbe 0x4456c8
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x44ebba
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44ba1c
mov eax, dword [esi + 0x90]
mov ecx, eax
cmp eax, 1
jl 0x44570f
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x44572d
movzx edx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
jne case.default.0x44d1fa
mov eax, dword [esi + 0x90]
inc edi
cmp edi, eax
jle 0x4456e5
mov ecx, eax
cmp ecx, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x445746
mov dword [esi + 0x84], eax
jmp 0x44baa1
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp ebx, dword [ebp + 0x84]
jmp 0x4428d7
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4457a6
nop word [eax + eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x445784
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x4457a6
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x445760
jmp 0x4457a6
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4457a6
cmp ecx, dword [ebp + 0x84]
jbe 0x4457a6
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44bae4
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0xc]
test ebx, ebx
je 0x445a7f
inc eax
mov dword [esi + 0xc], eax
movzx ebx, byte [eax]
lea ecx, [eax + 1]
mov dword [esi + 0xc], ecx
cmp ebx, 0xc0
jb 0x4458c4
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x445805
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 1]
jmp 0x4458c1
test bl, 0x10
jne 0x445826
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 2]
jmp 0x4458c1
test bl, 8
jne 0x445850
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x4458c1
test bl, 4
jne 0x445886
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x4458c1
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea ecx, [eax + 1]
mov dword [esi + 8], ecx
mov edi, edx
mov dword [esp + 0x10], edx
mov eax, edx
mov dword [esp + 0x1c], edx
cmp edx, 0xc0
jb 0x445a05
movzx eax, byte [ecx]
and eax, 0x3f
test dl, 0x20
jne 0x445910
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x445a09
test dl, 0x10
jne 0x44593e
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 2]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x445a09
test dl, 8
jne 0x445978
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 3]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x445a09
test dl, 4
jne 0x4459bb
and edx, 3
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 4]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x445a09
and edx, 1
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov edi, edx
mov dword [esp + 0x1c], edx
mov eax, edx
jmp 0x445a09
mov ecx, dword [esp + 0x10]
cmp dword [esi + 0x9c], 0x1f
jne 0x445a1f
cmp ebx, eax
jne 0x441323
jmp case.default.0x44d1fa
cmp ebx, 0x7f
jbe 0x445a5d
mov eax, ebx
test eax, eax
jns 0x445a2d
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5262c8]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x445a48
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x5284c8]
mov eax, dword [eax*8 + 0x524c4c]
add eax, ebx
jmp 0x445a6a
mov eax, dword [ebp + 0x3c]
mov edx, ecx
mov edi, dword [esp + 0x1c]
movzx eax, byte [eax + ebx]
cmp ebx, edx
je case.default.0x44d1fa
cmp eax, edi
jne 0x441323
jmp case.default.0x44d1fa
movzx edx, byte [eax + 1]
lea eax, [ecx + 1]
movzx edi, byte [ecx]
mov dword [esi + 8], eax
cmp edx, edi
je case.0x44bdfa.14
cmp dword [esi + 0x9c], 0x20
jne 0x445057
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x44bdfa.14
add dword [esi + 0xc], 2
jmp 0x441323
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x445c04
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov ecx, dword [esi + 0xc]
mov al, byte [ecx]
cmp al, 0x42
je 0x445b18
cmp al, 0x4f
je 0x445b18
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x445c04
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x20], ebx
mov dword [esi + 0xc], eax
jmp 0x445c04
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x445c04
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x445c04
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x445c04
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x24], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x445c04
mov edx, dword [esi + 0xc]
cmp cl, 0x48
sbb eax, eax
and eax, 0xfffffff3
movzx ebx, byte [edx]
add eax, 0x48
sub ebx, eax
lea eax, [edx + 1]
mov ecx, ebx
mov dword [esi + 0xc], eax
and ebx, 1
mov dword [esp + 0x20], ebx
movsx eax, byte [ecx + 0x523f98]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x523fa4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x445c04
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
mov edx, dword [esi + 0xc]
mov eax, dword [esp + 0x28]
inc edx
mov dword [esi + 0xc], edx
test eax, eax
je 0x445d35
mov ecx, dword [esi + 0x80]
cmp ecx, 0xc0
jb 0x445d35
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x445c56
and ecx, 0x1f
shl ecx, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0xc]
jmp 0x445d31
test cl, 0x10
jne 0x445c7e
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 2
jmp 0x445d31
test cl, 8
jne 0x445cb2
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 3
jmp 0x445d31
test cl, 4
jne 0x445cef
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 4
jmp 0x445d31
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 5
mov eax, dword [esp + 0x28]
cmp dword [esi + 0x9c], 0x48
jb 0x446121
test eax, eax
je 0x445d95
mov edx, dword [esi + 0x80]
cmp edx, 0x7f
jbe 0x445d95
mov eax, edx
test eax, eax
jns 0x445d5a
add eax, 0x7f
sar eax, 7
movzx ecx, byte [eax + 0x5262c8]
mov eax, edx
shl ecx, 7
and eax, 0x8000007f
jns 0x445d75
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
mov edi, 1
movzx eax, word [ecx*2 + 0x5284c8]
mov eax, dword [eax*8 + 0x524c4c]
add eax, edx
mov dword [esi + 0x94], eax
jmp 0x445db8
cmp dword [esp + 0x28], 0
mov edi, 1
mov ecx, dword [esi + 0x80]
mov eax, dword [ebp + 0x3c]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
je 0x445ef6
cmp dword [esi + 0x90], 1
jl 0x445f34
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, ecx
cmp ecx, 0xc0
jb 0x445ecf
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x445e0e
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x445eca
test cl, 0x10
jne 0x445e2f
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x445eca
test cl, 8
jne 0x445e59
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x445eca
test cl, 4
jne 0x445e8f
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x445eca
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ecx
cmp dword [esi + 0x80], ecx
je case.default.0x44d1fa
cmp dword [esi + 0x94], eax
je case.default.0x44d1fa
inc edi
cmp edi, dword [esi + 0x90]
jle 0x445dd0
jmp 0x445f34
cmp dword [esi + 0x90], edi
jl 0x445f34
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.default.0x44d1fa
cmp dword [esi + 0x94], ecx
je case.default.0x44d1fa
inc eax
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x445f00
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x441323
test ebx, ebx
je 0x445f60
cmp dword [esp + 0x28], 0
mov dword [esi + 0x84], eax
jne 0x44cd18
jmp 0x44bb8e
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test ebx, ebx
je 0x4460b7
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4460a7
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x446085
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x446060
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x445fc4
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x44605c
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x445fdf
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x446056
and eax, 0x3f
test dl, 8
jne 0x445fff
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x446056
test dl, 4
jne 0x446028
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x446056
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp dword [esi + 0x80], edx
je 0x4460a7
cmp dword [esi + 0x94], eax
je 0x4460a7
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x445f84
jmp 0x4460a7
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x4460a7
cmp edi, dword [ebp + 0x84]
jbe 0x4460a7
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44cd7c
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x446111
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4460ef
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x446111
cmp dword [esi + 0x94], ecx
je 0x446111
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4460c5
jmp 0x446111
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x446111
cmp eax, dword [ebp + 0x84]
jbe 0x446111
mov dword [ebp + 0x64], 1
cmp ecx, 1
jg 0x44ebba
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44bbd1
mov ebx, dword [esp + 0x28]
mov edi, 1
mov dword [esp + 0x10], edi
test ebx, ebx
je 0x446279
cmp dword [esi + 0x90], edi
jl 0x4462af
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ebx, byte [eax]
inc eax
mov dword [esp + 0x1c], ebx
mov dword [esi + 8], eax
cmp ebx, 0xc0
jb 0x44625a
mov cl, byte [eax]
test bl, 0x20
jne 0x44617b
inc eax
and ebx, 0x1f
mov dword [esi + 8], eax
movzx eax, cl
jmp 0x446252
mov dl, byte [eax + 1]
test bl, 0x10
jne 0x44619f
add eax, 2
movzx ecx, cl
and ebx, 0xf
mov dword [esi + 8], eax
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, dl
jmp 0x446252
test bl, 8
jne 0x4461da
mov bl, byte [eax + 2]
add eax, 3
mov dword [esi + 8], eax
mov eax, dword [esp + 0x1c]
movzx ecx, cl
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx ebx, bl
shl ecx, 6
and ebx, 0x3f
movzx eax, dl
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
jmp 0x44625a
mov ch, byte [eax + 3]
movzx edi, cl
and edi, 0x3f
test bl, 4
mov bl, byte [eax + 2]
movzx ebx, bl
jne 0x446218
add eax, 4
and ebx, 0x3f
mov dword [esi + 8], eax
mov eax, dword [esp + 0x1c]
and eax, 3
shl eax, 6
or edi, eax
movzx eax, dl
shl edi, 6
and eax, 0x3f
or edi, eax
movzx eax, ch
shl edi, 6
or ebx, edi
jmp 0x44624e
mov dh, byte [eax + 4]
and ebx, 0x3f
add eax, 5
mov dword [esi + 8], eax
mov eax, dword [esp + 0x1c]
and eax, 1
shl eax, 6
or edi, eax
movzx eax, dl
and eax, 0x3f
shl edi, 6
or edi, eax
movzx eax, ch
shl edi, 6
and eax, 0x3f
or ebx, edi
shl ebx, 6
or ebx, eax
movzx eax, dh
mov edi, dword [esp + 0x10]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [esi + 0x80], ebx
je case.default.0x44d1fa
inc edi
mov dword [esp + 0x10], edi
cmp edi, dword [esi + 0x90]
jle 0x446142
jmp 0x4462ab
cmp dword [esi + 0x90], edi
jl 0x4462af
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x44572d
movzx edx, byte [ebx]
lea eax, [ebx + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je case.default.0x44d1fa
inc edi
cmp edi, dword [esi + 0x90]
jle 0x446281
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x4462db
mov dword [esi + 0x84], eax
test ebx, ebx
jne 0x44cf1f
jmp 0x44bc56
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test ebx, ebx
je 0x44642e
mov ecx, dword [esi + 0x90]
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x8c]
jge 0x44641e
nop
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4463fc
movzx edx, byte [edi]
mov ebx, 1
cmp edx, 0xc0
jb 0x4463db
test dl, 0x20
jne 0x446336
movzx eax, byte [edi + 1]
mov ebx, 2
and edx, 0x1f
jmp 0x4463d3
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x446358
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4463cf
and eax, 0x3f
test dl, 8
jne 0x446378
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4463cf
test dl, 4
jne 0x4463a1
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x4463cf
and edx, 1
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
mov ecx, dword [esp + 0x10]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp dword [esi + 0x80], edx
je 0x44641e
lea eax, [ebx + edi]
inc ecx
mov dword [esi + 8], eax
mov dword [esp + 0x10], ecx
cmp ecx, dword [esi + 0x8c]
jl 0x446300
jmp 0x44641e
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44641e
cmp edi, dword [ebp + 0x84]
jbe 0x44641e
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44cf7e
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x446486
nop dword [eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x446464
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x446486
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x446440
jmp 0x446486
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x446486
cmp ecx, dword [ebp + 0x84]
jbe 0x446486
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x44ebba
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44bc99
mov eax, dword [esi + 0xc]
mov dword [esp + 0x20], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov dword [esi + 0x90], ecx
add dword [esi + 0xc], 3
jmp 0x4465c7
mov dword [esi + 0x90], ebx
xor edx, edx
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x5c
sete dl
add eax, 3
mov dword [esp + 0x20], edx
mov dword [esi + 0xc], eax
jmp 0x4465c7
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x4465c7
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x4465c7
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x24], 1
jmp 0x4465c7
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x24], 1
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov dword [esi + 0x8c], ecx
add dword [esi + 0xc], 3
jmp 0x4465c7
mov ecx, dword [esi + 0xc]
movzx ebx, byte [ecx]
lea eax, [ecx + 1]
add ebx, 0xffffffab
mov dword [esi + 0xc], eax
mov edx, ebx
and ebx, 1
mov dword [esp + 0x20], ebx
movsx eax, byte [edx + 0x523f98]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x523fa4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4465c7
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x7c], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x7c]
cmp ecx, 0x10
je 0x4465e9
cmp ecx, 0xf
je 0x4465e9
mov dword [esi + 0x60], 0xffffffff
jmp 0x44660d
xor eax, eax
cmp ecx, 0xf
sete al
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x60], eax
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
movzx eax, byte [eax]
mov dword [esi + 0x64], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x90]
test ecx, ecx
jle 0x44681a
mov eax, dword [esi + 0x60]
test eax, eax
js 0x447514
cmp eax, 0xa
ja case.0x44d178.15
jmp dword [eax*4 + 0x44f2ac]
cmp dword [esi + 0x68], 0
jne case.default.0x44d1fa
mov ebx, dword [esp + 0x28]
mov edi, 1
cmp ecx, edi
jl 0x44681e
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44bd05
movzx edx, byte [ecx]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
test ebx, ebx
je 0x44669e
cmp edx, 0xc0
jb 0x44669e
test dl, 0x20
jne 0x44667c
lea eax, [ecx + 2]
jmp 0x44669b
test dl, 0x10
jne 0x446686
lea eax, [ecx + 3]
jmp 0x44669b
test dl, 8
jne 0x446690
lea eax, [ecx + 4]
jmp 0x44669b
lea eax, [ecx + 5]
test dl, 4
je 0x44669b
lea eax, [ecx + 6]
mov dword [esi + 8], eax
inc edi
cmp edi, dword [esi + 0x90]
jle 0x446651
jmp 0x44681e
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
nop dword [eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x4467ca
cmp eax, 0xc0
jb 0x4467ca
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x20
jne 0x446709
and eax, 0x1f
shl eax, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x4467c5
test al, 0x10
jne 0x446729
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4467c5
test al, 8
jne 0x446755
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x4467c5
test al, 4
jne 0x44678a
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x4467c5
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp eax, 9
je 0x4467ff
cmp eax, 5
je 0x4467ff
cmp eax, 8
je 0x4467ff
xor eax, eax
jmp 0x446804
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4466c0
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x441323
cmp dword [esp + 0x20], 0
je 0x44888b
mov ecx, dword [esi + 0x60]
test ecx, ecx
js 0x44886e
cmp ecx, 0xa
ja case.0x44d178.15
jmp dword [ecx*4 + 0x44f2d8]
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
nop
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x44697f
cmp eax, 0xc0
jb 0x44697f
test al, 0x20
jne 0x4468a9
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x44697a
test al, 0x10
jne 0x4468cf
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44697a
test al, 8
jne 0x446901
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44697a
test al, 4
movzx eax, byte [edx]
jne 0x44693c
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44697a
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x446860
jmp 0x44681a
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
nop dword [eax + eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x446aff
cmp eax, 0xc0
jb 0x446aff
test al, 0x20
jne 0x446a29
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x446afa
test al, 0x10
jne 0x446a4f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x446afa
test al, 8
jne 0x446a81
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x446afa
test al, 4
movzx eax, byte [edx]
jne 0x446abc
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x446afa
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4469e0
jmp 0x44681a
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x446c70
cmp eax, 0xc0
jb 0x446c70
test al, 0x20
jne 0x446b9a
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x446c6b
test al, 0x10
jne 0x446bc0
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x446c6b
test al, 8
jne 0x446bf2
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x446c6b
test al, 4
movzx eax, byte [edx]
jne 0x446c2d
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x446c6b
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c48]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x446b51
jmp 0x44681a
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
je 0x446de1
cmp eax, 0xc0
jb 0x446de1
test al, 0x20
jne 0x446d0b
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x446ddc
test al, 0x10
jne 0x446d31
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x446ddc
test al, 8
jne 0x446d63
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x446ddc
test al, 4
movzx eax, byte [edx]
jne 0x446d9e
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x446ddc
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x446e18
cmp eax, 3
je 0x446e18
xor eax, eax
jmp 0x446e1d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x446cc2
jmp 0x44681a
mov dword [esp + 0x10], 1
cmp ecx, 1
jl 0x44681a
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
cmp dword [esp + 0x28], 0
lea edx, [eax + 1]
movzx ecx, byte [eax]
mov dword [esi + 8], edx
mov eax, ecx
mov dword [esp + 0x1c], ecx
mov edi, ecx
mov ebx, ecx
mov dword [esp + 0x18], ecx
je 0x446f7a
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x18], ecx
cmp ecx, 0xc0
jb 0x446f7a
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x446ead
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x446f69
test cl, 0x10
jne 0x446ece
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x446f69
test cl, 8
jne 0x446ef8
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x446f69
test cl, 4
jne 0x446f2e
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x446f69
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
mov dword [esp + 0x1c], ecx
mov eax, ecx
mov ebx, ecx
mov dword [esp + 0x18], ecx
cmp dword [esp + 0x1c], 0x20
mov edx, ecx
ja 0x446f9b
cmp eax, 0x20
je case.0x447070.8193
lea eax, [ecx - 9]
cmp eax, 4
ja case.0x447070.8203
jmp dword [eax*4 + 0x44f304]
cmp edx, 0x2000
ja 0x447048
cmp edi, 0x2000
je case.0x447070.8193
cmp ecx, 0x1680
ja 0x447040
je case.0x447070.8193
mov eax, ecx
sub eax, 0x85
je case.0x447070.8193
sub eax, 0x1b
je case.0x447070.8193
mov eax, ecx
test eax, eax
jns 0x446fe4
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
and ecx, 0x8000007f
jns 0x446ffe
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
xor ecx, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp dword [eax*4 + 0x524a58], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x44d1fa
mov edx, dword [esp + 0x10]
inc edx
mov dword [esp + 0x10], edx
cmp edx, dword [esi + 0x90]
jle 0x446e50
jmp 0x44681a
cmp ecx, 0x180e
jmp 0x446fd5
cmp ebx, 0x3000
ja case.0x447070.8203
cmp dword [esp + 0x18], 0x3000
je case.0x447070.8193
lea eax, [ecx - 0x2001]
cmp eax, 0x5e
ja case.0x447070.8203
movzx eax, byte [eax + 0x44f320]
jmp dword [eax*4 + 0x44f318]
cmp dword [esi + 0x68], 0
jne case.default.0x44d1fa
jmp 0x447026
mov dword [esp + 0x18], 1
cmp ecx, 1
jl 0x44681a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edx, [ecx + 1]
movzx eax, byte [ecx]
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
mov ebx, eax
je 0x44719f
cmp eax, 0xc0
jb 0x44719f
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x20
jne 0x4470df
and eax, 0x1f
shl eax, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x447198
test al, 0x10
jne 0x4470ff
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x447198
test al, 8
jne 0x447128
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x447198
test al, 4
jne 0x44715d
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x447198
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
mov ebx, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x4471db
cmp eax, 3
je 0x4471db
cmp ebx, 0x5f
je 0x4471db
xor eax, eax
jmp 0x4471e0
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x44d1fa
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x90]
jle 0x447094
jmp 0x44681a
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
cmp dword [esp + 0x28], 0
lea edi, [eax + 1]
movzx edx, byte [eax]
mov dword [esi + 8], edi
mov ecx, edx
je 0x447309
cmp edx, 0xc0
jb 0x447309
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x44725d
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x447304
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x44727e
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x447304
test dl, 8
jne 0x4472a1
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x447304
test dl, 4
jne 0x4472d0
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x447304
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov eax, dword [esi + 0x64]
cmp ecx, dword [eax*4 + 0x524b08]
lea eax, [eax*4 + 0x524b08]
jb 0x44732d
mov ecx, dword [eax]
nop
lea eax, [eax + 4]
cmp edx, ecx
je 0x447349
mov ecx, dword [eax]
cmp edx, ecx
jae 0x447320
cmp dword [esi + 0x68], 0
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447210
jmp 0x44681a
cmp dword [esi + 0x68], 0
jne case.default.0x44d1fa
jmp 0x447337
mov dword [esp + 0x18], 1
cmp ecx, 1
jl 0x44681a
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
cmp dword [esp + 0x28], 0
lea edi, [eax + 1]
movzx ecx, byte [eax]
mov dword [esi + 8], edi
mov edx, ecx
mov eax, ecx
mov dword [esp + 0x10], ecx
mov ebx, ecx
je 0x4474bd
mov dword [esp + 0x10], ecx
cmp ecx, 0xc0
jb 0x4474bd
movzx eax, byte [edi]
and eax, 0x3f
test cl, 0x20
jne 0x4473d0
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edi + 1]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x4474c1
test cl, 0x10
jne 0x4473fc
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x4474c1
test cl, 8
jne 0x447434
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 3]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x4474c1
test cl, 4
jne 0x447475
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 4]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x4474c1
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov edx, ecx
mov dword [esi + 8], eax
mov eax, edx
mov ebx, edx
mov edi, edx
jmp 0x4474c1
mov edi, dword [esp + 0x10]
cmp edx, 0x24
je 0x4474ec
cmp eax, 0x40
je 0x4474ec
cmp ebx, 0x60
je 0x4474ec
cmp edi, 0xa0
jb 0x4474e0
cmp ecx, 0xd7ff
jbe 0x4474ec
cmp ecx, 0xe000
jae 0x4474ec
xor eax, eax
jmp 0x4474f1
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x44d1fa
mov edx, dword [esp + 0x18]
inc edx
mov dword [esp + 0x18], edx
cmp edx, dword [esi + 0x90]
jle 0x447370
jmp 0x44681a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x44780b
mov dword [esp + 0x18], 1
cmp ecx, 1
jl 0x44681a
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4428c3
cmp dword [esp + 0x28], 0
lea edi, [ecx + 1]
movzx eax, byte [ecx]
mov edx, edi
mov dword [esi + 8], edi
mov ecx, eax
mov ebx, eax
mov dword [esp + 0x10], edi
je 0x44763c
mov dword [esp + 0x10], edi
cmp eax, 0xc0
jb 0x44763c
test al, 0x20
jne 0x44757c
movzx eax, byte [edi]
lea edx, [edi + 1]
and ecx, 0x1f
jmp 0x44762b
test al, 0x10
jne 0x44759c
mov ecx, eax
lea edx, [edi + 2]
movzx eax, byte [edi]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
jmp 0x44762b
test al, 8
jne 0x4475c5
mov ecx, eax
lea edx, [edi + 3]
movzx eax, byte [edi]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
jmp 0x44762b
movzx ecx, byte [edi]
and ecx, 0x3f
test al, 4
jne 0x4475f8
and eax, 3
lea edx, [edi + 4]
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x44762b
and eax, 1
lea edx, [edi + 5]
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x10], edx
shr ecx, 7
and ebx, 0x7f
movzx eax, byte [ecx + 0x5262c8]
mov ecx, edx
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c4a]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x78]
cmp dword [esp + 0x10], eax
jae 0x4477cb
mov edi, edx
mov dword [esp + 0x10], eax
nop word [eax + eax]
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x447759
cmp edx, 0xc0
jb 0x447759
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4476c1
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x447755
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x4476d9
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x44774f
and eax, 0x3f
test dl, 8
jne 0x4476f9
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44774f
test dl, 4
jne 0x447722
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44774f
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x1c]
and ecx, 0x7f
shr edx, 7
mov dword [esp + 0x14], edi
movzx eax, byte [edx + 0x5262c8]
mov edx, edi
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx ecx, byte [eax*8 + 0x524c4a]
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x524ad0], eax
mov ebp, dword [esp + 0xb0]
je 0x4477c3
lea edx, [ebx + edi]
mov dword [esp + 0x1c], ecx
mov dword [esi + 8], edx
mov edi, edx
mov eax, dword [ebp + 0x78]
mov ecx, edx
mov dword [esp + 0x10], eax
cmp edx, eax
jb 0x447680
jmp 0x4477cb
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x4477f1
cmp edx, eax
jb 0x4477f1
cmp ecx, dword [ebp + 0x84]
jbe 0x4477f1
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x44cb4c
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, dword [esi + 0x90]
jle 0x447531
jmp 0x44681a
mov ebx, dword [esp + 0x28]
add eax, 0xfffffffa
test ebx, ebx
je 0x4483d0
cmp eax, 0xf
ja case.0x44d178.15
jmp dword [eax*4 + 0x44f380]
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x4428c3
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x447879
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004518a0
mov ecx, dword [ebp + 0x18]
add esp, 0x14
test eax, eax
je 0x44786d
mov eax, 1
jmp 0x44786f
xor eax, eax
test eax, eax
jne case.default.0x44d1fa
jmp 0x4478a0
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x44789e
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44789e
cmp edi, 1
je case.default.0x44d1fa
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x44d1fa
xor ecx, ecx
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x4478d6
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb 0x4478d6
test ecx, ecx
jne 0x4478d6
cmp dword [ebp + 0x1c], 2
jne 0x4478d6
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x4478d6
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x44cb4c
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4478f2
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4478f2
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x4478e1
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447837
jmp 0x44681a
mov edi, 1
cmp ecx, edi
jl 0x44681e
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x44b8a5
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x447948
nop word [eax + eax]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x447948
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x447930
inc edi
cmp edi, dword [esi + 0x90]
jle 0x447914
jmp 0x44681e
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja case.0x44bdfa.14
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x44681e
mov dword [esp + 0x14], 1
cmp ecx, 1
jl 0x44681e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov edi, ecx
mov eax, ecx
mov ebx, edx
cmp ecx, 0xc0
jb 0x447a87
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4479c2
and ecx, 0x1f
shl ecx, 6
or ecx, eax
inc edx
jmp 0x447a7e
test cl, 0x10
jne 0x4479e3
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 2
jmp 0x447a7e
test cl, 8
jne 0x447a0d
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 3
jmp 0x447a7e
test cl, 4
jne 0x447a43
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 4
jmp 0x447a7e
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 2]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 3]
shl ecx, 6
and eax, 0x3f
or ecx, eax
movzx eax, byte [edx + 4]
shl ecx, 6
and eax, 0x3f
or ecx, eax
add edx, 5
mov dword [esi + 8], edx
mov edi, ecx
mov eax, ecx
mov ebx, edx
cmp edi, 0x85
ja 0x447abb
cmp eax, 0x85
je case.0x447aa2.11
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x44d1fa
jmp dword [ecx*4 + 0x44f3c0]
cmp ebx, dword [ebp + 0x78]
jae case.0x447aa2.10
cmp byte [edx], 0xa
jne case.0x447aa2.10
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x447aa2.10
sub ecx, 0x2028
je case.0x447aa2.11
sub ecx, 1
jne case.default.0x44d1fa
cmp dword [ebp + 0x68], 0
jne case.default.0x44d1fa
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [esi + 0x90]
jle 0x447982
jmp 0x44681a
mov dword [esp + 0x14], 1
cmp ecx, 1
jl 0x44681e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp ecx, 0xc0
jb 0x447c10
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x447b47
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x447c03
test cl, 0x10
jne 0x447b68
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x447c03
test cl, 8
jne 0x447b92
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x447c03
test cl, 4
jne 0x447bc8
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x447c03
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp dword [esp + 0x18], 0x2000
mov edx, ecx
ja 0x447c7c
cmp ebx, 0x2000
je case.default.0x44d1fa
cmp ecx, 0xa0
ja 0x447c62
je case.default.0x44d1fa
cmp ecx, 9
je case.default.0x44d1fa
cmp ecx, 0x20
je case.default.0x44d1fa
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [esi + 0x90]
jle 0x447b01
jmp 0x44681a
cmp edx, 0x1680
je case.default.0x44d1fa
cmp ecx, 0x180e
je case.default.0x44d1fa
jmp case.0x447ca1.8203
cmp eax, 0x3000
ja case.0x447ca1.8203
cmp edi, 0x3000
je case.default.0x44d1fa
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.0x447ca1.8203
movzx eax, byte [ecx + 0x44f3d8]
jmp dword [eax*4 + 0x44f3d0]
mov dword [esp + 0x14], 1
cmp ecx, 1
jl 0x44681e
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp ecx, 0xc0
jb 0x447dcf
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x447d06
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x447dc2
test cl, 0x10
jne 0x447d27
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x447dc2
test cl, 8
jne 0x447d51
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x447dc2
test cl, 4
jne 0x447d87
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x447dc2
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov eax, ecx
mov edi, ecx
cmp dword [esp + 0x18], 0x2000
mov edx, ecx
ja 0x447e2b
cmp ebx, 0x2000
je case.0x447e54.8193
cmp ecx, 0xa0
ja 0x447e15
je case.0x447e54.8193
cmp ecx, 9
je case.0x447e54.8193
cmp ecx, 0x20
jne case.default.0x44d1fa
mov edx, dword [esp + 0x14]
inc edx
mov dword [esp + 0x14], edx
cmp edx, dword [esi + 0x90]
jle 0x447cc0
jmp 0x44681a
cmp edx, 0x1680
je case.0x447e54.8193
cmp ecx, 0x180e
jne case.default.0x44d1fa
jmp case.0x447e54.8193
cmp eax, 0x3000
ja case.default.0x44d1fa
cmp edi, 0x3000
je case.0x447e54.8193
add ecx, 0xffffdfff
cmp ecx, 0x5e
ja case.default.0x44d1fa
movzx eax, byte [ecx + 0x44f440]
jmp dword [eax*4 + 0x44f438]
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
nop dword [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, ecx
mov edi, ecx
cmp ecx, 0xc0
jb 0x447f73
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x447eb0
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x447f6c
test cl, 0x10
jne 0x447ed1
and ecx, 0xf
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x447f6c
test cl, 8
jne 0x447efb
and ecx, 7
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x447f6c
test cl, 4
jne 0x447f31
and ecx, 3
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x447f6c
and ecx, 1
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
mov eax, ecx
cmp eax, 0x85
ja 0x447f95
cmp edi, 0x85
je case.default.0x44d1fa
add ecx, 0xfffffff6
cmp ecx, 3
ja case.default.0x447f8e
jmp dword [ecx*4 + 0x44f4a0]
sub ecx, 0x2028
je case.default.0x44d1fa
sub ecx, 1
je case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447e70
jmp 0x44681a
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x4480c0
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x448012
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4480b9
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x448033
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4480b9
test dl, 8
jne 0x448056
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x4480b9
test dl, 4
jne 0x448085
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x4480b9
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov eax, edx
cmp eax, 0x85
ja 0x4480e2
cmp ecx, 0x85
je case.0x4480db.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x44d1fa
jmp dword [edx*4 + 0x44f4b0]
sub edx, 0x2028
je case.0x4480db.10
sub edx, 1
jne case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447fd0
jmp 0x44681a
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442935
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
mov eax, edx
cmp edx, 0xc0
jb 0x4481fe
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x448152
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4481f9
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x448173
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x4481f9
test dl, 8
jne 0x448196
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x4481f9
test dl, 4
jne 0x4481c5
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x4481f9
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov eax, edx
cmp eax, 0x80
jae 0x448212
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.default.0x44d1fa
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x448112
jmp 0x44681a
cmp ecx, 1
jl 0x44681e
mov edi, 1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44bd05
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x44bdfa.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448232
jmp 0x44681e
mov edi, 1
cmp ecx, edi
jl 0x44681e
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x44bd05
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x4482a3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x44bdfa.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4482c8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4482c8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4482b0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x448280
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44bd05
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x44bdfa.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4482e4
jmp 0x44681e
mov edi, 1
cmp ecx, edi
jl 0x44681e
mov edx, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x44bd05
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x448353
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x44bdfa.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x448378
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x448378
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x448360
inc edi
cmp edi, dword [esi + 0x90]
jle 0x448330
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44bd05
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x44bdfa.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448394
jmp 0x44681e
cmp eax, 0xf
ja case.0x44d178.15
jmp dword [eax*4 + 0x44f4c0]
mov ebx, 1
cmp ecx, ebx
jl 0x44681a
nop dword [eax]
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x78]
cmp edx, ecx
jae 0x442a90
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x448430
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
push edi
push edx
call fcn.004518a0
mov ecx, dword [ebp + 0x78]
add esp, 0x14
test eax, eax
je 0x448424
mov eax, 1
jmp 0x448426
xor eax, eax
test eax, eax
jne case.default.0x44d1fa
jmp 0x448457
mov edi, dword [ebp + 0x1c]
mov eax, ecx
sub eax, edi
cmp edx, eax
ja 0x448457
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x448457
cmp edi, 1
je case.default.0x44d1fa
mov al, byte [edx + 1]
cmp al, byte [ebp + 0x35]
je case.default.0x44d1fa
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x44848e
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, ecx
jb 0x44848e
cmp dword [ebp + 0x18], 0
jne 0x44848e
cmp dword [ebp + 0x1c], 2
jne 0x44848e
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x44848e
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x44cb4c
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4483f0
jmp 0x44681a
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x447966
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
mov edx, 1
cmp ecx, edx
jl 0x44681e
nop dword [eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44bd05
mov al, byte [ecx]
inc ecx
movzx eax, al
add eax, 0xfffffff6
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x44bdfa.14
movzx eax, byte [eax + 0x44f510]
jmp dword [eax*4 + 0x44f500]
cmp ecx, dword [ebp + 0x78]
jae case.0x448508.10
cmp byte [ecx], 0xa
jne case.0x448508.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x448508.10
cmp dword [ebp + 0x68], 0
jne case.0x44bdfa.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4484e0
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edx, 1
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44b8a5
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x44bdfa.14
cmp ecx, 0x20
je case.0x44bdfa.14
cmp ecx, 0xa0
je case.0x44bdfa.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x448550
jmp 0x44681e
mov edx, 1
cmp ecx, edx
jl 0x44681e
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44b8a5
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x4485c9
cmp ecx, 0x20
je 0x4485c9
cmp ecx, 0xa0
jne case.0x44bdfa.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4485a0
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edx, 1
mov edi, edx
nop word [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44b8a5
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
movzx eax, cl
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x448616.11
movzx eax, byte [eax + 0x44f594]
mov edx, edi
jmp dword [eax*4 + 0x44f58c]
inc edx
mov edi, edx
cmp edx, dword [esi + 0x90]
jle 0x4485f0
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edx, 1
nop dword [eax + eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44b8a5
mov cl, byte [eax]
inc eax
mov dword [esi + 8], eax
movzx eax, cl
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x44bdfa.14
movzx eax, byte [eax + 0x44f618]
jmp dword [eax*4 + 0x44f610]
inc edx
cmp edx, dword [esi + 0x90]
jle 0x448640
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
nop dword [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4484b3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x44bdfa.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448690
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4484b3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x44bdfa.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4486d0
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4484b3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x44bdfa.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448710
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4484b3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x44bdfa.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448750
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4484b3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x44bdfa.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448790
jmp 0x44681e
cmp ecx, 1
jl 0x44681e
mov edi, 1
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4484b3
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x44bdfa.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4487d0
jmp 0x44681e
mov dword [esi + 0x84], eax
jmp 0x44d5e6
mov dword [esi + 0x84], eax
jmp 0x44d7b4
mov dword [esi + 0x84], eax
jmp 0x44d97a
mov dword [esi + 0x84], eax
jmp 0x44db38
mov dword [esi + 0x84], eax
jmp 0x44dcf6
mov dword [esi + 0x84], eax
jmp 0x44e4dd
mov dword [esi + 0x84], eax
jmp 0x44e8f7
mov dword [esi + 0x84], eax
jmp 0x44eb35
mov dword [esi + 0x84], eax
jmp 0x44ed16
mov dword [esi + 0x84], eax
jmp 0x44e6c0
cmp dword [esi + 0x7c], 0x16
mov dword [esi + 0x84], eax
je 0x44e02b
test ebx, ebx
jne 0x44d26b
jmp 0x44bf04
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4497f3
cmp eax, 0xa
ja case.0x44d178.15
jmp dword [eax*4 + 0x44f694]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x448922
nop word [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x448932
movzx ecx, byte [edx]
mov eax, 1
test ebx, ebx
je 0x44890e
cmp ecx, 0xc0
jb 0x44890e
test cl, 0x20
jne 0x4488e8
mov eax, 2
jmp 0x44890e
test cl, 0x10
jne 0x4488f4
mov eax, 3
jmp 0x44890e
test cl, 8
jne 0x448900
mov eax, 4
jmp 0x44890e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x448922
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4488c0
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44e08e
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x448922
cmp edx, dword [ebp + 0x84]
jbe 0x448922
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x448922
jmp 0x44ebba
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop word [eax + eax]
mov edx, dword [esi + 8]
mov ebx, 1
cmp edx, dword [ebp + 0x78]
jae 0x448ac7
cmp dword [esp + 0x28], 0
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x448a64
cmp eax, 0xc0
jb 0x448a64
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x4489b9
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x448a60
test al, 0x10
jne 0x4489d3
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x448a5a
test al, 8
jne 0x4489f6
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x448a5a
test al, 4
jne 0x448a25
and eax, 3
mov ebx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x448a5a
and eax, 1
mov ebx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp eax, 9
je 0x448a99
cmp eax, 5
je 0x448a99
cmp eax, 8
je 0x448a99
xor eax, eax
jmp 0x448a9e
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x448922
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x448970
jmp 0x448922
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x448922
cmp edx, dword [ebp + 0x84]
jbe 0x448922
mov dword [ebp + 0x64], ebx
cmp eax, 1
jle 0x448922
jmp 0x442337
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop dword [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x448c5e
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x448c04
cmp eax, 0xc0
jb 0x448c04
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x448b59
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x448c00
test al, 0x10
jne 0x448b73
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x448bfa
test al, 8
jne 0x448b96
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x448bfa
test al, 4
jne 0x448bc5
and eax, 3
mov ebx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x448bfa
and eax, 1
mov ebx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x448922
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x448b10
jmp 0x448922
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x448922
cmp edx, dword [ebp + 0x84]
jbe 0x448922
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x448922
jmp 0x442337
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x448c5e
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x448d93
cmp eax, 0xc0
jb 0x448d93
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x448ce8
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x448d8f
test al, 0x10
jne 0x448d02
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x448d89
test al, 8
jne 0x448d25
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x448d89
test al, 4
jne 0x448d54
and eax, 3
mov ebx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x448d89
and eax, 1
mov ebx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x448922
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x448ca3
jmp 0x448922
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop dword [eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x448c5e
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x448ef4
cmp eax, 0xc0
jb 0x448ef4
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x448e49
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x448ef0
test al, 0x10
jne 0x448e63
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x448eea
test al, 8
jne 0x448e86
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x448eea
test al, 4
jne 0x448eb5
and eax, 3
mov ebx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x448eea
and eax, 1
mov ebx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c48]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x448922
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x448e00
jmp 0x448922
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop dword [eax]
mov edx, dword [esi + 8]
mov ebx, 1
cmp edx, dword [ebp + 0x78]
jae 0x448ac7
cmp dword [esp + 0x28], 0
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
je 0x449054
cmp eax, 0xc0
jb 0x449054
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x448fa9
and eax, 0x1f
mov ebx, 2
shl eax, 6
jmp 0x449050
test al, 0x10
jne 0x448fc3
and eax, 0xf
mov ebx, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x44904a
test al, 8
jne 0x448fe6
and eax, 7
mov ebx, 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x44904a
test al, 4
jne 0x449015
and eax, 3
mov ebx, 5
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x44904a
and eax, 1
mov ebx, 6
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x44908b
cmp eax, 3
je 0x44908b
xor eax, eax
jmp 0x449090
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x448922
lea eax, [ebx + edx]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x448f60
jmp 0x448922
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x4492f9
cmp dword [esp + 0x28], 0
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
mov eax, edx
mov ecx, edx
mov dword [esp + 0x1c], edx
mov ebx, edx
je 0x4491e9
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], edx
cmp edx, 0xc0
jb 0x4491e9
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x449135
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
jmp 0x4491d9
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x449153
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
jmp 0x4491d3
and eax, 0x3f
test dl, 8
jne 0x449176
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4491d3
test dl, 4
jne 0x4491a2
and edx, 3
mov dword [esp + 0x18], 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x4491d3
and edx, 1
mov dword [esp + 0x18], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esp + 0x10], edx
mov eax, edx
mov ecx, edx
mov dword [esp + 0x1c], edx
mov ebx, edx
cmp dword [esp + 0x10], 0x20
ja 0x449208
cmp eax, 0x20
je case.0x4492e6.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x4492e6.8203
jmp dword [eax*4 + 0x44f6c0]
cmp edx, 0x2000
ja 0x4492be
cmp ecx, 0x2000
je case.0x4492e6.8193
cmp edx, 0x1680
ja 0x4492b6
je case.0x4492e6.8193
mov eax, edx
sub eax, 0x85
je case.0x4492e6.8193
sub eax, 0x1b
je case.0x4492e6.8193
mov eax, edx
test eax, eax
jns 0x449251
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
and edx, 0x8000007f
jns 0x44926b
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp dword [eax*4 + 0x524a58], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x448922
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x4490d0
jmp 0x448922
cmp edx, 0x180e
jmp 0x449242
cmp ebx, 0x3000
ja case.0x4492e6.8203
cmp dword [esp + 0x1c], 0x3000
je case.0x4492e6.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x4492e6.8203
movzx eax, byte [eax + 0x44f6dc]
jmp dword [eax*4 + 0x44f6d4]
cmp dword [esi + 0x68], 0
jne 0x448922
jmp 0x449293
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x448922
cmp edi, dword [ebp + 0x84]
jmp 0x448c72
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop dword [eax + eax]
mov edx, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edx, dword [ebp + 0x78]
jae 0x448c5e
cmp dword [esp + 0x28], 0
movzx eax, byte [edx]
mov ecx, eax
mov edi, eax
mov ebx, eax
je 0x44943a
cmp eax, 0xc0
jb 0x44943a
movzx ecx, byte [edx + 1]
and ecx, 0x3f
test al, 0x20
jne 0x449381
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
jmp 0x449434
test al, 0x10
jne 0x44939e
and eax, 0xf
mov dword [esp + 0x18], 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x44942e
test al, 8
jne 0x4493c4
and eax, 7
mov dword [esp + 0x18], 4
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x44942e
test al, 4
jne 0x4493f6
and eax, 3
mov dword [esp + 0x18], 5
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
jmp 0x44942e
and eax, 1
mov dword [esp + 0x18], 6
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 5]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov edi, ecx
mov ebx, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x449476
cmp eax, 3
je 0x449476
cmp ebx, 0x5f
je 0x449476
xor eax, eax
jmp 0x44947b
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x448922
mov eax, dword [esp + 0x18]
add eax, edx
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x449330
jmp 0x448922
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
nop dword [eax]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449603
cmp dword [esp + 0x28], 0
movzx edx, byte [edi]
mov ecx, edx
je 0x4495a8
cmp edx, 0xc0
jb 0x4495a8
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44950d
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x4495a4
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x449528
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x44959e
and eax, 0x3f
test dl, 8
jne 0x449548
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44959e
test dl, 4
jne 0x449571
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44959e
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov eax, dword [esi + 0x64]
cmp ecx, dword [eax*4 + 0x524b08]
lea eax, [eax*4 + 0x524b08]
jb 0x4495cd
mov ecx, dword [eax]
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x4495f7
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4495c0
cmp dword [esi + 0x68], 0
je 0x448922
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x4494c0
jmp 0x448922
cmp dword [esi + 0x68], 0
jne 0x448922
jmp 0x4495d7
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x448922
cmp edi, dword [ebp + 0x84]
jmp 0x448adb
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x448922
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x4497cd
cmp dword [esp + 0x28], 0
movzx edx, byte [edi]
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
je 0x44976f
mov dword [esp + 0x10], edx
cmp edx, 0xc0
jb 0x44976f
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44969b
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
or edx, eax
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
jmp 0x44976f
movzx eax, byte [edi + 2]
and eax, 0x3f
test dl, 0x10
jne 0x4496cb
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
jmp 0x44976f
test dl, 8
jne 0x449700
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov dword [esp + 0x10], edx
mov ecx, edx
mov ebx, edx
jmp 0x44976f
test dl, 4
jne 0x44972c
and edx, 3
mov dword [esp + 0x18], 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44975d
and edx, 1
mov dword [esp + 0x18], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, edx
mov dword [esp + 0x10], eax
mov ebx, eax
mov ecx, eax
cmp eax, 0x24
je 0x44979c
cmp ecx, 0x40
je 0x44979c
cmp ebx, 0x60
je 0x44979c
cmp dword [esp + 0x10], 0xa0
jb 0x449790
cmp edx, 0xd7ff
jbe 0x44979c
cmp edx, 0xe000
jae 0x44979c
xor eax, eax
jmp 0x4497a1
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x448922
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x449632
jmp 0x448922
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x448922
cmp edi, dword [ebp + 0x84]
jbe 0x448922
mov dword [ebp + 0x64], 1
jmp 0x448ae4
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x449b69
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x449b1a
nop word [eax + eax]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x449af8
cmp dword [esp + 0x28], 0
lea edi, [ecx + 1]
movzx eax, byte [ecx]
mov edx, edi
mov dword [esi + 8], edi
mov ecx, eax
mov ebx, eax
mov dword [esp + 0x18], edi
je 0x44992a
mov dword [esp + 0x18], edi
cmp eax, 0xc0
jb 0x44992a
test al, 0x20
jne 0x44986b
movzx eax, byte [edi]
lea edx, [edi + 1]
and ecx, 0x1f
jmp 0x449919
test al, 0x10
jne 0x449889
movzx eax, byte [edi]
lea edx, [edi + 2]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
jmp 0x449919
test al, 8
jne 0x4498b0
movzx eax, byte [edi]
lea edx, [edi + 3]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
jmp 0x449919
test al, 4
movzx eax, byte [edi]
jne 0x4498e3
and ecx, 3
lea edx, [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x449919
and ecx, 1
lea edx, [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 8], edx
mov ebx, ecx
mov dword [esp + 0x18], edx
shr ecx, 7
and ebx, 0x7f
movzx eax, byte [ecx + 0x5262c8]
mov ecx, edx
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c4a]
mov dword [esp + 0x10], eax
mov eax, dword [ebp + 0x78]
cmp dword [esp + 0x18], eax
jae 0x449abb
mov edi, edx
mov dword [esp + 0x18], eax
nop word [eax + eax]
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x449a49
cmp edx, 0xc0
jb 0x449a49
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x4499b1
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x449a45
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x4499c9
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x449a3f
and eax, 0x3f
test dl, 8
jne 0x4499e9
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449a3f
test dl, 4
jne 0x449a12
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x449a3f
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x10]
and ecx, 0x7f
shr edx, 7
mov dword [esp + 0x1c], edi
movzx eax, byte [edx + 0x5262c8]
mov edx, edi
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx ecx, byte [eax*8 + 0x524c4a]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x524ad0], eax
mov ebp, dword [esp + 0xb0]
je 0x449ab3
lea edx, [ebx + edi]
mov dword [esp + 0x10], ecx
mov dword [esi + 8], edx
mov edi, edx
mov eax, dword [ebp + 0x78]
mov ecx, edx
mov dword [esp + 0x18], eax
cmp edx, eax
jb 0x449970
jmp 0x449abb
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x449ae1
cmp edx, eax
jb 0x449ae1
cmp ecx, dword [ebp + 0x84]
jbe 0x449ae1
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x44cb4c
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x449820
jmp 0x449b1a
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x449b1a
cmp ecx, dword [ebp + 0x84]
jbe 0x449b1a
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x442337
cmp dword [esp + 0x24], 0
jne 0x441323
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x449b5a
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x44bfb3
add eax, 0xfffffffa
test ebx, ebx
je 0x44a97f
cmp eax, 0xf
ja case.0x44d178.15
jmp dword [eax*4 + 0x44f73c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a96f
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jae 0x449c63
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x449bd8
push dword [esp + 0x28]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004518a0
mov ecx, dword [ebp + 0x18]
add esp, 0x14
test eax, eax
je 0x449bcc
mov eax, 1
jmp 0x449bce
xor eax, eax
test eax, eax
jne 0x44a96f
jmp 0x449bff
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x449bfd
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x449bfd
cmp edi, 1
je 0x44a96f
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x44a96f
xor ecx, ecx
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x449c35
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, dword [ebp + 0x78]
jb 0x449c35
test ecx, ecx
jne 0x449c35
cmp dword [ebp + 0x1c], 2
jne 0x449c35
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x449c35
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x44cb4c
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x449c51
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x449c51
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x449c40
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x449b96
jmp 0x44a96f
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44a96f
cmp ecx, dword [ebp + 0x84]
jbe 0x44a96f
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x44a96f
jmp 0x442337
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x449ce8
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x44a96f
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x449cee
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x449cda
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x449cda
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x449cc2
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x449cb0
jmp 0x44a96f
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x44a96f
cmp eax, dword [ebp + 0x84]
jbe 0x44a96f
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle 0x44a96f
jmp 0x44ebba
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x449d69
mov dword [esi + 8], edx
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44a96f
cmp edx, dword [ebp + 0x84]
jbe 0x44a96f
mov dword [ebp + 0x64], 1
cmp eax, 1
jle 0x44a96f
jmp 0x44ebba
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x44a96f
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x44a96f
nop word [eax + eax]
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
mov ecx, edx
mov eax, edx
mov ebx, edx
cmp edx, 0xc0
jb 0x449e8e
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x449dde
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
jmp 0x449e82
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x449dfc
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
jmp 0x449e7c
and eax, 0x3f
test dl, 8
jne 0x449e1f
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449e7c
test dl, 4
jne 0x449e4b
and edx, 3
mov dword [esp + 0x18], 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x449e7c
and edx, 1
mov dword [esp + 0x18], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov dword [esp + 0x10], edx
mov eax, edx
mov ebx, edx
cmp ecx, 0xd
jne 0x449eaa
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x44a96f
cmp byte [eax], 0xa
jne 0x449eea
inc eax
jmp 0x449ee7
cmp eax, 0xa
je 0x449ee1
cmp dword [ebp + 0x68], 0
jne 0x44a96f
cmp ebx, 0xb
je 0x449ee1
cmp dword [esp + 0x10], 0xc
je 0x449ee1
cmp edx, 0x85
je 0x449ee1
cmp edx, 0x2028
je 0x449ee1
cmp edx, 0x2029
jne 0x44a96f
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x449d90
jmp 0x44a96f
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44a96f
cmp edi, dword [ebp + 0x84]
jmp 0x449c77
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x44a96f
nop dword [eax]
nop word [eax + eax]
mov edi, dword [esi + 8]
mov dword [esp + 0x18], 1
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov dword [esp + 0x10], edx
mov ebx, edx
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x44a03a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x449f8a
and eax, 0x1f
mov dword [esp + 0x18], 2
shl eax, 6
mov edx, ecx
jmp 0x44a02e
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x449fa8
and edx, 0xf
mov dword [esp + 0x18], 3
shl edx, 6
or edx, ecx
jmp 0x44a028
and eax, 0x3f
test dl, 8
jne 0x449fcb
and edx, 7
mov dword [esp + 0x18], 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a028
test dl, 4
jne 0x449ff7
and edx, 3
mov dword [esp + 0x18], 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a028
and edx, 1
mov dword [esp + 0x18], 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esp + 0x10], edx
mov ebx, edx
mov eax, edx
mov ecx, edx
cmp dword [esp + 0x10], 0x2000
ja 0x44a0aa
cmp ebx, 0x2000
je case.0x44a0cb.8193
cmp edx, 0xa0
ja 0x44a09a
je case.0x44a0cb.8193
cmp edx, 9
je case.0x44a0cb.8193
cmp edx, 0x20
je case.0x44a0cb.8193
xor ecx, ecx
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp ecx, eax
je 0x44a96f
mov eax, dword [esp + 0x18]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x449f40
jmp 0x44a96f
cmp edx, 0x1680
je case.0x44a0cb.8193
cmp edx, 0x180e
jmp 0x44a062
cmp eax, 0x3000
ja case.0x44a0cb.8203
cmp ecx, 0x3000
je case.0x44a0cb.8193
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x44a0cb.8203
movzx eax, byte [edx + 0x44f784]
jmp dword [eax*4 + 0x44f77c]
mov ecx, 1
jmp 0x44a066
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x44a96f
nop
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x44a231
movzx edx, byte [edi]
mov eax, edx
mov ecx, edx
cmp edx, 0xc0
jb 0x44a1cc
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a132
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ebx, 2
jmp 0x44a1c6
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44a14a
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x44a1c0
and eax, 0x3f
test dl, 8
jne 0x44a16a
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a1c0
test dl, 4
jne 0x44a193
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a1c0
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
mov ecx, edx
cmp eax, 0x85
ja 0x44a1ea
cmp ecx, 0x85
je case.0x44a1e3.10
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x44a1e3
jmp dword [edx*4 + 0x44f7e4]
sub edx, 0x2028
je case.0x44a1e3.10
sub edx, 1
je case.0x44a1e3.10
xor ecx, ecx
jmp 0x44a200
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp ecx, eax
je 0x44a96f
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x44a0f0
jmp 0x44a96f
mov eax, dword [ebp + 0x88]
test eax, eax
je 0x44a96f
cmp edi, dword [ebp + 0x84]
jbe 0x44a96f
mov dword [ebp + 0x64], ebx
jmp 0x449c84
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x44a96f
nop dword [eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov ebx, 1
mov eax, ebx
mov ecx, edx
cmp edx, 0xc0
jb 0x44a363
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a2b4
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x44a35d
test dl, 0x10
jne 0x44a2cf
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
mov ebx, 3
or edx, ecx
jmp 0x44a357
test dl, 8
jne 0x44a2f3
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a357
test dl, 4
jne 0x44a323
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a357
and edx, eax
mov ebx, 6
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, ebx
mov ecx, edx
cmp ecx, 0x100
jae 0x44a37a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x44a96f
mov eax, ebx
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x44a270
jmp 0x44a96f
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a96f
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x44a489
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a3f0
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x44a485
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44a408
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x44a47f
and eax, 0x3f
test dl, 8
jne 0x44a428
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a47f
test dl, 4
jne 0x44a451
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a47f
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x44a96f
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x44a96f
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x44a3b0
jmp 0x44a96f
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x44a96f
nop
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov ebx, 1
mov eax, ebx
mov ecx, edx
cmp edx, 0xc0
jb 0x44a5c3
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a514
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x44a5bd
test dl, 0x10
jne 0x44a52f
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
mov ebx, 3
or edx, ecx
jmp 0x44a5b7
test dl, 8
jne 0x44a553
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a5b7
test dl, 4
jne 0x44a583
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a5b7
and edx, eax
mov ebx, 6
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, ebx
mov ecx, edx
cmp ecx, 0x100
jae 0x44a5da
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x44a96f
mov eax, ebx
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x44a4d0
jmp 0x44a96f
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a96f
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x44a6e9
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a650
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x44a6e5
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44a668
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x44a6df
and eax, 0x3f
test dl, 8
jne 0x44a688
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a6df
test dl, 4
jne 0x44a6b1
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a6df
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x44a96f
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x44a96f
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x44a610
jmp 0x44a96f
mov eax, dword [esi + 0x90]
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jge 0x44a96f
nop
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov ebx, 1
mov eax, ebx
mov ecx, edx
cmp edx, 0xc0
jb 0x44a823
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a774
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x44a81d
test dl, 0x10
jne 0x44a78f
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
mov ebx, 3
or edx, ecx
jmp 0x44a817
test dl, 8
jne 0x44a7b3
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a817
test dl, 4
jne 0x44a7e3
movzx eax, byte [edi + 2]
and edx, 3
shl edx, 6
and eax, 0x3f
or edx, ecx
mov ebx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a817
and edx, eax
mov ebx, 6
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, ebx
mov ecx, edx
cmp ecx, 0x100
jae 0x44a83a
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x44a96f
mov eax, ebx
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
inc eax
mov dword [esp + 0x14], eax
cmp eax, dword [esi + 0x8c]
jl 0x44a730
jmp 0x44a96f
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a96f
nop dword [eax + eax]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x449f04
movzx edx, byte [edi]
mov ecx, 1
mov eax, edx
cmp edx, 0xc0
jb 0x44a94c
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44a8b0
and eax, 0x1f
mov edx, ecx
shl eax, 6
mov ecx, 2
jmp 0x44a948
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44a8cb
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x44a942
and eax, 0x3f
test dl, 8
jne 0x44a8eb
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a942
test dl, 4
jne 0x44a914
and edx, 3
shl edx, 6
or edx, ecx
mov ecx, 5
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44a942
and edx, 1
shl edx, 6
or edx, ecx
mov ecx, 6
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov eax, edx
cmp eax, 0x100
jae 0x44a96f
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x44a96f
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x44a870
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44d4f5
cmp eax, 0xf
ja case.0x44d178.15
jmp dword [eax*4 + 0x44f7f4]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge case.0x44ac60.10
mov edx, dword [esi + 8]
mov ecx, dword [ebp + 0x78]
cmp edx, ecx
jae 0x44aa5b
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x44a9e8
push 0
lea eax, [ebp + 0x1c]
push eax
push ecx
push edi
push edx
call fcn.004518a0
mov ecx, dword [ebp + 0x78]
add esp, 0x14
test eax, eax
je 0x44a9dc
mov eax, 1
jmp 0x44a9de
xor eax, eax
test eax, eax
jne case.0x44ac60.10
jmp 0x44aa0f
mov edi, dword [ebp + 0x1c]
mov eax, ecx
sub eax, edi
cmp edx, eax
ja 0x44aa0f
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x44aa0f
cmp edi, 1
je case.0x44ac60.10
mov al, byte [edx + 1]
cmp al, byte [ebp + 0x35]
je case.0x44ac60.10
mov edi, dword [ebp + 0x88]
test edi, edi
je 0x44aa46
mov edx, dword [esi + 8]
lea eax, [edx + 1]
cmp eax, ecx
jb 0x44aa46
cmp dword [ebp + 0x18], 0
jne 0x44aa46
cmp dword [ebp + 0x1c], 2
jne 0x44aa46
mov al, byte [edx]
cmp al, byte [ebp + 0x34]
jne 0x44aa46
mov dword [ebp + 0x64], 1
cmp edi, 1
jg 0x44cb4c
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x44a9a1
jmp case.0x44ac60.10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44ac60.10
cmp edx, dword [ebp + 0x84]
jbe case.0x44ac60.10
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.0x44ac60.10
jmp 0x442337
mov edx, dword [ebp + 0x78]
mov eax, edx
mov ecx, dword [esi + 0x8c]
mov edi, dword [esi + 8]
sub eax, edi
sub ecx, dword [esi + 0x90]
cmp ecx, eax
jbe 0x44aad6
mov dword [esi + 8], edx
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44ac60.10
cmp edx, dword [ebp + 0x84]
jbe case.0x44ac60.10
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.0x44ac60.10
jmp 0x44ebba
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp case.0x44ac60.10
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x44ac60.10
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44ab52
mov al, byte [ecx]
cmp al, 0xd
jne 0x44ab18
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae case.0x44ac60.10
cmp byte [eax], 0xa
jne 0x44ab44
inc eax
jmp 0x44ab41
cmp al, 0xa
je 0x44ab3e
cmp dword [ebp + 0x68], 0
jne case.0x44ac60.10
cmp al, 0xb
je 0x44ab3e
cmp al, 0xc
je 0x44ab3e
cmp al, 0x85
jne case.0x44ac60.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x44aaf3
jmp case.0x44ac60.10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44ac60.10
cmp ecx, dword [ebp + 0x84]
jmp 0x44aabb
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x44ac60.10
nop dword [eax]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44abb7
mov cl, byte [eax]
cmp cl, 9
je case.0x44ac60.10
cmp cl, 0x20
je case.0x44ac60.10
cmp cl, 0xa0
je case.0x44ac60.10
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44ab80
jmp case.0x44ac60.10
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44ac60.10
cmp eax, dword [ebp + 0x84]
jbe case.0x44ac60.10
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle case.0x44ac60.10
jmp 0x44ebba
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x44ac60.10
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44abb7
mov cl, byte [eax]
cmp cl, 9
je 0x44ac19
cmp cl, 0x20
je 0x44ac19
cmp cl, 0xa0
jne case.0x44ac60.10
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44abf8
jmp case.0x44ac60.10
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
jge case.0x44ac60.10
mov edi, ecx
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44aaa7
movzx eax, byte [edx]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x44ac60.11
movzx eax, byte [eax + 0x44f83c]
mov ecx, edi
jmp dword [eax*4 + 0x44f834]
lea eax, [edx + 1]
inc ecx
mov dword [esi + 8], eax
mov edi, ecx
cmp ecx, dword [esi + 0x8c]
jl 0x44ac40
jmp case.0x44ac60.10
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge case.0x44ac60.10
nop
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44ab52
movzx eax, byte [ecx]
add eax, 0xfffffff6
cmp eax, 0x7b
ja case.0x44ac60.10
movzx eax, byte [eax + 0x44f8c0]
jmp dword [eax*4 + 0x44f8b8]
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44ac90
jmp case.0x44ac60.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x44ac60.10
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44aaa7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x44ac60.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44ace0
jmp case.0x44ac60.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x44ac60.10
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44aaa7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x44ac60.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44ad22
jmp case.0x44ac60.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x44ac60.10
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44aaa7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x44ac60.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44ad64
jmp case.0x44ac60.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x44ac60.10
nop word [eax + eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44aaa7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x44ac60.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44adb0
jmp case.0x44ac60.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x44ac60.10
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44aaa7
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x44ac60.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44adf2
jmp case.0x44ac60.10
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge case.0x44ac60.10
nop dword [eax]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44ae55
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x44ac60.10
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44ae30
jmp case.0x44ac60.10
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44ac60.10
cmp edx, dword [ebp + 0x84]
jbe case.0x44ac60.10
mov dword [ebp + 0x64], 1
cmp eax, 1
jg 0x44ebba
cmp dword [esp + 0x24], 0
jne 0x441323
jmp 0x44bf74
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee9f
mov edi, 0xfffffffb
mov ebx, dword [esp + 0x28]
mov eax, dword [esi + 0x130]
dec eax
cmp eax, 0x42
ja case.default.0x44aeb4
jmp dword [eax*4 + 0x44f93c]
cmp edi, 0xfffffc1b
je 0x44af9e
cmp edi, 0xfffffc20
jne 0x44af09
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x44b3cc
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44af02
cmp byte [ecx], 0x77
jne case.default.0x44b3cc
xor edi, edi
jmp 0x44af11
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x44af9e
cmp dword [esi + 0x9c], 0x88
jb 0x44af5d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44af86
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 1
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
jne 0x44aea4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x8c
ret
cmp edi, 0xfffffc20
jne 0x44b0ba
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x44b114
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44b030
cmp byte [ecx], 0x77
jne 0x44b114
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne case.0x44bdfa.14
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x44b125
cmp eax, 0x81
je 0x44b125
cmp dword [ebp + 0x6c], 0
jne 0x44b12f
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
cmp byte [ecx + edx], 0x77
je 0x44b12f
movzx eax, byte [edx]
movzx eax, byte [eax + 0x524940]
add eax, edx
mov dword [esi + 0xc], eax
jmp 0x4412b0
test edi, edi
je 0x44b030
cmp edi, 0xfffffc1b
jne 0x44b114
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x81
je 0x44b109
cmp byte [eax], 0x77
mov ebx, eax
jne 0x44b0f8
mov edx, eax
nop dword [eax + eax]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov ebx, eax
mov edx, eax
cmp byte [eax], 0x77
je 0x44b0e0
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
mov eax, ebx
sub eax, ecx
xor ecx, ecx
cmp dword [ebp + 0xb4], eax
cmove edi, ecx
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44afe4
jmp 0x44aea0
mov dword [ebp + 0x98], 2
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov edx, dword [esi + 4]
test edx, edx
jne 0x44b16d
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 2
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
cmp edi, 1
jne 0x44b204
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x44b1a0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x92
jne 0x44b1b7
inc edx
mov dword [esi + 0xc], edx
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
jne 0x44b1e9
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x44b1d2
mov eax, dword [esp + 0x2c]
mov ecx, dword [esi + 0xc]
movzx eax, byte [eax + 0x524940]
sub ecx, eax
add ecx, 3
mov dword [esi + 0xc], ecx
jmp 0x4417cc
test edi, edi
je 0x4417cc
cmp edi, 0xfffffc20
je 0x4417cc
jmp case.default.0x44b3cc
mov ecx, dword [esi + 0x78]
mov eax, dword [esi + 0xc]
add eax, ecx
mov dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
jne 0x44b23c
cmp byte [eax - 3], 0x77
jne 0x441323
cmp dword [esi + 0x9c], 0x8c
jne 0x4412b0
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b27f
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x44bfb3
cmp edi, 1
je 0x44b340
cmp edi, 0xfffffc19
je 0x44b340
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x44b2e6
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x44b3cc
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44b2ee
cmp byte [ecx], 0x77
jmp 0x44b2e8
test edi, edi
jne case.default.0x44b3cc
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0xc], eax
cmp byte [eax], 0x77
jne 0x44b346
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b331
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x44b485
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x78
je case.0x44bdfa.14
cmp dword [esi + 0x58], 0
jne 0x44b422
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], eax
cmp byte [edx], 0x77
je 0x44b360
add eax, 3
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x441323
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc1c
jg 0x44b3af
je case.0x44b3cc.995
cmp edi, 0xfffffc19
jmp 0x44b4bc
test edi, edi
jg 0x44b4b7
je 0x44b438
lea eax, [edi + 0x3e3]
cmp eax, 3
ja case.default.0x44b3cc
jmp dword [eax*4 + 0x44fa48]
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x44b3cc.995
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44b438
cmp byte [ecx], 0x77
je 0x44b438
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x44b401
cmp dword [esi + 0x58], 0
je 0x44b6c7
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44edf2
mov edi, 1
jmp 0x44aea0
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
jne 0x44b418
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b47b
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 5
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov dword [ecx + 0x18], 0
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x4412a0
mov eax, edi
sub eax, 1
je case.0x44bdfa.14
jmp case.default.0x44b3cc
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call fcn.0042c880
mov eax, dword [esi + 0x4c]
lea ecx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ecx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x44ed49
cmp edi, 0xfffffc19
je 0x44ed49
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x44b530
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je case.0x44bdfa.14
push ecx
call dword [0x3207980]
add esp, 4
jmp case.0x44bdfa.14
test edi, edi
je 0x44b554
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je case.default.0x44b3cc
push ecx
call dword [0x3207980]
add esp, 4
jmp case.default.0x44b3cc
mov dword [ebp + 0xa4], ecx
mov edx, dword [esi + 0x20]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0x20], eax
cmp byte [eax], 0x77
jne 0x44b5f9
cmp dword [esi + 0x58], 0
je 0x44b58c
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44b5b5
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 6
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0x20]
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x524940]
add eax, ecx
mov dword [edx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [edx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [edx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [edx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [edx + 0x1c], eax
mov dword [edx], esi
mov esi, edx
jmp 0x4412a0
mov eax, dword [esi + 0x3c]
mov dword [ebp + 0xa4], eax
jmp 0x44b510
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 0x34]
mov al, byte [ecx]
cmp al, 0x81
jne 0x44b655
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b63d
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], edi
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 8
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x44bfbc
cmp al, 0x88
jb 0x44ed78
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b686
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x32
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x44bfbc
test edi, edi
jne case.default.0x44b3cc
mov edx, dword [esi + 0x2c]
nop dword [eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x44b6b0
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x441323
test edi, edi
je case.0x443246.10
jmp case.default.0x44b3cc
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee02
mov edi, 0xfffffc1b
jmp 0x44aea4
cmp edi, 0xfffffc1b
jne 0x44b720
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x44b722
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x44c5a6
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b75d
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 9
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x44bfbc
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
push dword [esp + 0x30]
mov edi, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0044fdf0
add esp, 0x14
test eax, eax
jns 0x44b7e8
mov ecx, edi
cmp eax, 0xfffffffe
jne 0x44b7c6
mov edi, dword [ebp + 0x78]
mov ecx, edi
mov dword [esi + 8], edi
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edi, dword [ebp + 0x78]
jb case.0x44bdfa.14
cmp ecx, dword [ebp + 0x84]
jmp 0x444d1e
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b81c
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 8]
sub eax, dword [esi + 0x88]
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.default.0x44d1fa
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b874
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44b8c4
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44bdfa.14
cmp eax, dword [ebp + 0x84]
jbe case.0x44bdfa.14
jmp 0x4422ef
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
mov edi, ecx
mov edx, dword [esi + 0x28]
and ecx, 7
shr edi, 3
mov eax, 1
shl eax, cl
test byte [edi + edx], al
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b915
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.default.0x44d1fa
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44b964
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44b9b4
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44bdfa.14
cmp eax, dword [ebp + 0x84]
jbe case.0x44bdfa.14
jmp 0x4422ef
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x44b9cf
cmp dword [esi + 0x94], ecx
jne case.0x44bdfa.14
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ba02
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x44bfb3
dec dword [esi + 8]
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ba51
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444d0a
movzx ecx, byte [edi]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
jne case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44baca
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x44bfb3
dec dword [esi + 8]
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bb19
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44bb69
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44bdfa.14
cmp eax, dword [ebp + 0x84]
jbe case.0x44bdfa.14
jmp 0x4422ef
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x44bdfa.14
cmp dword [esi + 0x94], ecx
je case.0x44bdfa.14
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bbb7
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bc06
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444d0a
movzx ecx, byte [edi]
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ecx
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bc7f
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bcce
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x44bd1e
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp ecx, dword [ebp + 0x84]
jmp 0x444d1e
cmp dword [esi + 0x7c], 0xc
jne 0x44bd79
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x44bd4c
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004518a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x44bd79
jmp case.0x44bdfa.14
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x44bd79
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44bd79
cmp edi, 1
je case.0x44bdfa.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x44bdfa.14
mov eax, dword [esi + 8]
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x44d178.15
jmp dword [eax*4 + 0x44fa58]
mov edi, dword [ebp + 0x88]
test edi, edi
je case.0x44bd94.13
cmp edx, dword [ebp + 0x78]
jb case.0x44bd94.13
cmp dword [ebp + 0x18], 0
jne case.0x44bd94.13
cmp dword [ebp + 0x1c], 2
jne case.0x44bd94.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x44bd94.13
mov dword [ebp + 0x64], 1
cmp edi, 1
jle case.0x44bd94.13
jmp 0x44ebba
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x44bdfa.14
movzx eax, byte [ecx + 0x44faa8]
jmp dword [eax*4 + 0x44fa98]
cmp edx, dword [ebp + 0x78]
jae case.0x44bd94.13
cmp byte [edx], 0xa
jne case.0x44bd94.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x44bd94.13
cmp dword [ebp + 0x68], 0
je case.0x44bd94.13
jmp case.0x44bdfa.14
cmp ecx, 9
je case.0x44bdfa.14
cmp ecx, 0x20
je case.0x44bdfa.14
cmp ecx, 0xa0
jne case.0x44bd94.13
jmp case.0x44bdfa.14
cmp ecx, 9
je case.0x44bd94.13
cmp ecx, 0x20
je case.0x44bd94.13
cmp ecx, 0xa0
je case.0x44bd94.13
jmp case.0x44bdfa.14
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x44bd94.13
movzx eax, byte [ecx + 0x44fb2c]
jmp dword [eax*4 + 0x44fb24]
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x44bdfa.14
movzx eax, byte [ecx + 0x44fbb0]
jmp dword [eax*4 + 0x44fba8]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x44bd94.13
jmp case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x44bd94.13
jmp case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x44bd94.13
jmp case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x44bd94.13
jmp case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x44bd94.13
jmp case.0x44bdfa.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bf2d
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 8]
dec eax
mov dword [esi + 8], eax
cmp dword [esi + 0x7c], 0x11
jne 0x44bf74
cmp eax, dword [esi + 0x30]
jbe 0x44bf74
cmp byte [eax], 0xa
jne 0x44bf74
dec eax
cmp byte [eax], 0xd
jne 0x44bf74
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44bfa9
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2f
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
mov dword [ecx + 0xc], eax
mov eax, dword [esi + 0x10]
mov dword [ecx + 0x10], eax
mov eax, dword [esi + 0x14]
mov dword [ecx + 0x14], eax
mov eax, dword [esi + 0x18]
mov dword [ecx + 0x18], eax
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x4412a0
cmp edi, 0xfffffc1a
jne 0x44c041
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x44c039
mov edx, dword [esi + 0xc]
nop word [eax + eax]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x44c020
jmp 0x44c0a1
mov dword [esi + 8], eax
jmp 0x44c0c6
cmp edi, 0xfffffc20
jne 0x44c07b
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x44b3cc
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44c083
cmp byte [ecx], 0x77
jmp 0x44c07d
test edi, edi
jne case.default.0x44b3cc
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x44c0ba
cmp dword [esi + 0x5c], 0
jne 0x44b6c7
cmp dword [esi + 0x54], 0
jne 0x44b6c7
jmp case.0x44bdfa.14
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x44c0e0
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44c109
push 0x134
call dword [0x3207984]
mov edx, eax
add esp, 4
test edx, edx
je 0x44eb58
mov dword [edx + 4], 0
mov dword [esi + 4], edx
mov dword [esi + 0x130], 0x30
mov eax, dword [esi + 8]
mov dword [edx + 8], eax
mov ecx, dword [esi + 0xc]
jmp 0x44b5c8
mov eax, dword [esi]
mov esi, eax
test edi, edi
je 0x44c237
jmp 0x44afdc
mov eax, dword [esi]
mov esi, eax
test edi, edi
jne 0x44afdc
test eax, eax
je 0x44ee12
mov edi, 0xfffffc1c
jmp 0x44aea4
test edi, edi
je 0x44c1e1
jmp case.default.0x44b3cc
cmp edi, 1
je 0x44c172
cmp edi, 0xfffffc19
jne 0x44c190
cmp dword [ebp + 0xac], 0
jne 0x44c190
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp case.default.0x44b3cc
cmp edi, 0xfffffc1f
jne case.default.0x44b3cc
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x44c1d4
test dl, dl
je 0x44c1cd
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x44c1d4
add eax, 2
add ecx, 2
test dl, dl
jne 0x44c1a5
xor eax, eax
jmp 0x44c1d9
sbb eax, eax
or eax, 1
test eax, eax
jne case.default.0x44b3cc
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee22
mov edi, 0xfffffc1e
jmp 0x44aea4
cmp edi, 1
je 0x44c212
cmp edi, 0xfffffc19
jne 0x44c22b
cmp dword [ebp + 0xac], 0
jne 0x44c22b
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov eax, dword [esi]
mov esi, eax
test edi, edi
jne 0x44afdc
test eax, eax
je 0x44ee32
mov edi, 0xfffffc1d
jmp 0x44aea4
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee42
mov edi, 0xfffffc1f
jmp 0x44aea4
cmp edi, 1
je 0x44c285
cmp edi, 0xfffffc19
jne case.0x44aeb4.54
cmp dword [ebp + 0xac], 0
jne case.0x44aeb4.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee52
mov edi, 0xfffffc20
jmp 0x44aea4
cmp edi, 0xfffffc1a
jne 0x44c327
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov eax, dword [esi + 0x78]
add eax, dword [ebp + 0x70]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x90]
mov dword [esi + 0xa0], eax
mov dword [esi + 0x5c], 1
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [ebp + 0x80]
cmp dword [esi + 8], eax
jne 0x44c31f
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
cmp byte [edx], 0x77
je 0x44c303
jmp 0x44c393
mov dword [esi + 8], eax
jmp 0x441ec2
cmp edi, 0xfffffc20
jne 0x44c361
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x44b3cc
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44c369
cmp byte [ecx], 0x77
jmp 0x44c363
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov dword [esi + 0xc], eax
cmp byte [eax], 0x77
je 0x441ec2
cmp dword [esi + 0x5c], 0
jne 0x44c3d3
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa4]
mov dword [ecx + edx*4], eax
mov edx, dword [esi + 0x98]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xa8]
mov dword [ecx + edx*4 + 4], eax
mov edx, dword [ebp + 0x10]
sub edx, dword [esi + 0x94]
mov ecx, dword [ebp + 0xc]
mov eax, dword [esi + 0xac]
mov dword [ecx + edx*4], eax
cmp dword [esi + 0x54], 0
jne 0x44197f
cmp dword [esi + 0x5c], 0
jne 0x44197f
jmp case.0x44bdfa.14
cmp edi, 1
jne 0x44c49d
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x44c410
cmp al, 0x77
jne case.0x44bdfa.14
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], eax
cmp byte [edx], 0x77
je 0x44c410
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 8], ecx
mov edi, dword [esi + 0xc]
mov al, byte [edi]
cmp al, 0x78
je 0x443a82
cmp ecx, dword [esi + 0x38]
je 0x443a82
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x44c54d
test ecx, ecx
jne 0x44c482
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x41
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x44bfbc
cmp edi, 0xfffffc20
jne 0x44c4d7
mov edx, dword [esi + 0xc]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add ecx, edx
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.default.0x44b3cc
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44c4df
cmp byte [ecx], 0x77
jmp 0x44c4d9
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x44c3fb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c532
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x40
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0xc]
add eax, 3
jmp 0x44bfbc
test ecx, ecx
jne 0x44c573
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x42
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x34]
jmp 0x44bfbc
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x4412b0
test edi, edi
jne case.default.0x44b3cc
add dword [esi + 0xc], 3
jmp 0x4412b0
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444d0a
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
test ebx, ebx
je 0x44c6c7
cmp edx, 0xc0
jb 0x44c6c7
test dl, 0x20
jne 0x44c60f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44c6c4
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x44c63a
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x44c6c4
test dl, 8
jne 0x44c661
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x44c6c4
test dl, 4
jne 0x44c690
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x44c6c4
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
push ebx
push dword [esi + 0x28]
push edx
call fcn.00451180
add esp, 0xc
test eax, eax
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c70b
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe case.0x44bdfa.14
test ebx, ebx
je 0x44c754
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x44c754
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x44c748
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c77d
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x44c7c7
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp ecx, dword [ebp + 0x84]
jmp 0x444d1e
movzx ebx, byte [ecx]
inc ecx
mov dword [esi + 8], ecx
mov edi, ebx
mov eax, ebx
cmp ebx, 0xc0
jb 0x44c8c3
movzx eax, byte [ecx]
and eax, 0x3f
test bl, 0x20
jne 0x44c7fd
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 1]
jmp 0x44c8bc
test bl, 0x10
jne 0x44c81e
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 2]
jmp 0x44c8bc
test bl, 8
jne 0x44c84b
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 3]
jmp 0x44c8bc
test bl, 4
jne 0x44c881
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 4]
jmp 0x44c8bc
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 2]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [ecx + 5]
mov dword [esi + 8], eax
mov edi, ebx
mov eax, ebx
cmp eax, 0xff
jbe 0x44c8ea
cmp dword [esi + 0x9c], 0x6e
jne 0x44c901
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee82
mov ebx, dword [esp + 0x28]
xor edi, edi
jmp 0x44aea4
mov edx, dword [esi + 0x28]
and edi, 7
shr ebx, 3
mov eax, 1
mov ecx, edi
shl eax, cl
test byte [ebx + edx], al
jmp 0x44c8d1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c930
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe case.default.0x44d1fa
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x44c971
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x44c965
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c99a
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov edi, dword [esi + 0x88]
sub eax, edi
mov ebx, dword [esi + 8]
cmp ebx, eax
ja 0x44ca55
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x44ca05
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x44ca0a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x44c9f0
cmp edi, 0xfffffffc
je 0x44ca47
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x44ca52
cmp edi, 0xfffffffd
je 0x44ca47
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x44ca52
cmp edi, 0xfffffffe
je 0x44ca47
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x44ca52
cmp edi, 0xffffffff
je 0x44ca47
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x44ca52
mov eax, dword [esi + 0x88]
jmp 0x44cad6
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x44cb19
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x44cb19
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x44ca95
nop word [eax + eax]
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x44ca9a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x44ca80
cmp edi, 0xfffffffc
je 0x44cad3
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x44cb19
cmp edi, 0xfffffffd
je 0x44cad3
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x44cb19
cmp edi, 0xfffffffe
je 0x44cad3
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x44cb19
cmp edi, 0xffffffff
je 0x44cad3
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x44cb19
mov eax, dword [esi + 0x6c]
add eax, ebx
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cb0a
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x44bfb3
mov eax, dword [ebp + 0x88]
test eax, eax
je case.default.0x44d1fa
cmp ebx, dword [ebp + 0x78]
jb case.default.0x44d1fa
cmp ebx, dword [ebp + 0x84]
jbe case.default.0x44d1fa
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.default.0x44d1fa
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee72
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x44aea4
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44cb8d
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44cb81
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cbc2
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444d0a
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
mov eax, edx
cmp edx, 0xc0
jb 0x44ccfa
test dl, 0x20
jne 0x44cc30
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x44ccfa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x44cc60
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x44ccfa
test dl, 8
jne 0x44cc8b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x44ccfa
test dl, 4
jne 0x44ccbf
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
mov dword [esi + 8], eax
mov eax, edx
jmp 0x44ccfa
and edx, 1
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov edx, ecx
mov eax, ecx
cmp dword [esi + 0x80], edx
je case.0x44bdfa.14
cmp dword [esi + 0x94], eax
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cd41
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44cd7c
nop dword [eax + eax]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44cd70
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cdb1
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44ce01
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44bdfa.14
cmp eax, dword [ebp + 0x84]
jbe case.0x44bdfa.14
jmp 0x4422ef
movzx ebx, byte [eax]
inc eax
mov dword [esp + 0x14], ebx
mov dword [esi + 8], eax
cmp ebx, 0xc0
jb 0x44cf0d
mov cl, byte [eax]
test bl, 0x20
jne 0x44ce32
inc eax
and ebx, 0x1f
mov dword [esi + 8], eax
movzx eax, cl
jmp 0x44cf05
mov dl, byte [eax + 1]
test bl, 0x10
jne 0x44ce56
add eax, 2
movzx ecx, cl
and ebx, 0xf
mov dword [esi + 8], eax
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, dl
jmp 0x44cf05
test bl, 8
jne 0x44ce91
mov bl, byte [eax + 2]
add eax, 3
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
movzx ecx, cl
and eax, 7
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx ebx, bl
shl ecx, 6
and ebx, 0x3f
movzx eax, dl
and eax, 0x3f
or ecx, eax
shl ecx, 6
or ebx, ecx
jmp 0x44cf0d
mov ch, byte [eax + 3]
movzx edi, cl
and edi, 0x3f
test bl, 4
mov bl, byte [eax + 2]
movzx ebx, bl
jne 0x44cecf
add eax, 4
and ebx, 0x3f
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
and eax, 3
shl eax, 6
or edi, eax
movzx eax, dl
shl edi, 6
and eax, 0x3f
or edi, eax
movzx eax, ch
shl edi, 6
or ebx, edi
jmp 0x44cf05
mov dh, byte [eax + 4]
and ebx, 0x3f
add eax, 5
mov dword [esi + 8], eax
mov eax, dword [esp + 0x14]
and eax, 1
shl eax, 6
or edi, eax
movzx eax, dl
and eax, 0x3f
shl edi, 6
or edi, eax
movzx eax, ch
shl edi, 6
and eax, 0x3f
or ebx, edi
shl ebx, 6
or ebx, eax
movzx eax, dh
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [esi + 0x80], ebx
je case.default.0x44d1fa
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cf48
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44cf7e
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44cf72
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cfb3
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x44cfff
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp ecx, dword [ebp + 0x84]
jmp 0x444d1e
cmp dword [esi + 0x7c], 0xc
jne 0x44d052
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x44d029
push ebx
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004518a0
add esp, 0x14
neg eax
sbb eax, eax
neg eax
je 0x44d052
jmp case.0x44bdfa.14
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x44d052
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44d052
cmp edi, 1
je case.0x44bdfa.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x44bdfa.14
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
mov ecx, edx
mov dword [esp + 0x14], edi
mov ebx, edx
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], edx
mov dword [esp + 0x1c], edx
mov dword [esp + 0x20], edx
cmp edx, 0xc0
jb 0x44d169
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x44d0a3
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
inc edi
jmp 0x44d14e
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x44d0c8
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
add edi, 2
jmp 0x44d14e
test dl, 8
jne 0x44d0eb
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
add edi, 3
jmp 0x44d14e
test dl, 4
jne 0x44d11a
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [edi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
add edi, 4
jmp 0x44d14e
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [edi + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [edi + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
add edi, 5
mov ecx, edx
mov dword [esi + 8], edi
mov dword [esp + 0x14], edi
mov ebx, ecx
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ecx
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x44d178.15
jmp dword [eax*4 + 0x44fc2c]
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44d178.13
mov eax, dword [esp + 0x14]
cmp eax, dword [ebp + 0x78]
jb case.0x44d178.13
cmp dword [ebp + 0x18], 0
jne case.0x44d178.13
cmp dword [ebp + 0x1c], 2
jne case.0x44d178.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x44d178.13
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle case.0x44d178.13
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee72
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x44aea4
cmp edx, 0x85
ja 0x44d213
je case.0x44d1fa.11
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x44d1fa
jmp dword [edx*4 + 0x44fc6c]
cmp edi, dword [ebp + 0x78]
jae case.0x44d178.13
cmp byte [edi], 0xa
jne case.0x44d178.13
lea eax, [edi + 1]
mov dword [esi + 8], eax
jmp case.0x44d178.13
sub edx, 0x2028
je case.0x44d1fa.11
sub edx, 1
jne case.default.0x44d1fa
cmp dword [ebp + 0x68], 0
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp edx, 0x2000
ja 0x44d2b7
je case.default.0x44d1fa
cmp edx, 0xa0
ja 0x44d2a3
je case.default.0x44d1fa
cmp edx, 9
je case.default.0x44d1fa
cmp edx, 0x20
je case.default.0x44d1fa
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44d294
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x44bfb3
cmp edx, 0x1680
je case.default.0x44d1fa
cmp edx, 0x180e
jmp 0x44d25f
cmp edx, 0x3000
ja case.0x44d178.13
je case.default.0x44d1fa
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.0x44d178.13
movzx eax, byte [edx + 0x44fc84]
jmp dword [eax*4 + 0x44fc7c]
cmp edx, 0x2000
ja 0x44d32e
je case.0x44d178.13
cmp edx, 0xa0
ja 0x44d311
je case.0x44d178.13
cmp edx, 9
je case.0x44d178.13
cmp edx, 0x20
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp edx, 0x1680
je case.0x44d178.13
cmp edx, 0x180e
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp edx, 0x3000
ja case.default.0x44d1fa
je case.0x44d178.13
add edx, 0xffffdfff
cmp edx, 0x5e
ja case.default.0x44d1fa
movzx eax, byte [edx + 0x44fcec]
jmp dword [eax*4 + 0x44fce4]
cmp edx, 0x85
ja 0x44d37e
je case.default.0x44d1fa
add edx, 0xfffffff6
cmp edx, 3
ja case.0x44d178.13
jmp dword [edx*4 + 0x44fd4c]
sub edx, 0x2028
je case.default.0x44d1fa
sub edx, 1
jne case.0x44d178.13
jmp case.default.0x44d1fa
cmp edx, 0x85
ja 0x44d3b9
je case.0x44d178.13
add edx, 0xfffffff6
cmp edx, 3
ja case.default.0x44d1fa
jmp dword [edx*4 + 0x44fd5c]
sub edx, 0x2028
je case.0x44d178.13
sub edx, 1
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp ecx, 0x100
jae case.0x44d178.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp ebx, 0x100
jae case.default.0x44d1fa
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x44d178.13
jmp case.default.0x44d1fa
cmp dword [esp + 0x18], 0x100
jae case.0x44d178.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp dword [esp + 0x10], 0x100
jae case.default.0x44d1fa
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x44d178.13
jmp case.default.0x44d1fa
cmp dword [esp + 0x1c], 0x100
jae case.0x44d178.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x44d178.13
jmp case.default.0x44d1fa
cmp dword [esp + 0x20], 0x100
jae case.default.0x44d1fa
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x44d178.13
jmp case.default.0x44d1fa
mov eax, dword [esi]
mov esi, eax
test eax, eax
je case.default.0x44aeb4
mov edi, 0xfffffff2
jmp 0x44aea0
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44d4cc
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44d4c0
cmp dword [esi + 0x7c], 0x11
jne 0x44d4f5
cmp ecx, dword [esi + 0x30]
jbe 0x44d4f5
cmp byte [ecx], 0xa
jne 0x44d4f5
dec ecx
cmp byte [ecx], 0xd
jne 0x44d4f5
mov dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44d52a
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44d57a
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je case.0x44bdfa.14
cmp eax, dword [ebp + 0x84]
jbe case.0x44bdfa.14
jmp 0x4422ef
movzx ecx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
test ebx, ebx
je 0x44d5d6
cmp ecx, 0xc0
jb 0x44d5d6
test cl, 0x20
jne 0x44d59d
lea eax, [edx + 1]
jmp 0x44d5d3
test cl, 0x10
jne 0x44d5ae
add eax, 3
jmp 0x44d5d3
test cl, 8
jne 0x44d5bf
add eax, 4
jmp 0x44d5d3
test cl, 4
jne 0x44d5d0
add eax, 5
jmp 0x44d5d3
add eax, 6
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
jne case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44d60f
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44d659
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x44d75c
cmp eax, 0xc0
jb 0x44d75c
test al, 0x20
jne 0x44d695
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x44d757
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 0x10
jne 0x44d6bb
and eax, 0xf
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44d757
test al, 8
jne 0x44d6e7
and eax, 7
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44d757
test al, 4
jne 0x44d71c
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44d757
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp eax, 9
je 0x44d7a0
cmp eax, 5
je 0x44d7a0
cmp eax, 8
je 0x44d7a0
xor eax, eax
jmp 0x44d7a5
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44d7dd
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44d827
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x44d93a
cmp eax, 0xc0
jb 0x44d93a
test al, 0x20
jne 0x44d863
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x44d935
test al, 0x10
jne 0x44d88b
mov ecx, eax
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44d935
test al, 8
jne 0x44d8bf
mov ecx, eax
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44d935
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 4
jne 0x44d8fa
and eax, 3
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44d935
and eax, 1
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44d9a3
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44d9ed
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x44daff
cmp eax, 0xc0
jb 0x44daff
test al, 0x20
jne 0x44da29
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x44dafa
test al, 0x10
jne 0x44da4f
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44dafa
test al, 8
jne 0x44da81
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44dafa
test al, 4
movzx eax, byte [edx]
jne 0x44dabc
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44dafa
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44db61
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44dbab
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x44dcbd
cmp eax, 0xc0
jb 0x44dcbd
test al, 0x20
jne 0x44dbe7
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x44dcb8
test al, 0x10
jne 0x44dc0d
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44dcb8
test al, 8
jne 0x44dc3f
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44dcb8
test al, 4
movzx eax, byte [edx]
jne 0x44dc7a
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44dcb8
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
xor ecx, ecx
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c48]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44dd1f
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44dd69
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ecx, eax
mov dword [esi + 8], edx
mov ebx, eax
mov edi, edx
mov dword [esp + 0x14], edx
je 0x44de6a
mov dword [esp + 0x14], edx
cmp eax, 0xc0
jb 0x44de6a
test al, 0x20
jne 0x44ddaa
movzx eax, byte [edx]
lea edi, [edx + 1]
and ecx, 0x1f
jmp 0x44de59
test al, 0x10
jne 0x44ddca
mov ecx, eax
lea edi, [edx + 2]
movzx eax, byte [edx]
and ecx, 0xf
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
jmp 0x44de59
test al, 8
jne 0x44ddf3
mov ecx, eax
lea edi, [edx + 3]
movzx eax, byte [edx]
and ecx, 7
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
jmp 0x44de59
movzx ecx, byte [edx]
and ecx, 0x3f
test al, 4
jne 0x44de26
and eax, 3
lea edi, [edx + 4]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x44de59
and eax, 1
lea edi, [edx + 5]
shl eax, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov dword [esi + 8], edi
mov ebx, ecx
mov dword [esp + 0x14], edi
mov edx, dword [ebp + 0x78]
and ebx, 0x7f
shr ecx, 7
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, ebx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c4a]
mov dword [esp + 0x18], eax
cmp dword [esp + 0x14], edx
jae 0x44dfe6
mov dword [esp + 0x14], edx
cmp dword [esp + 0x28], 0
mov ebx, 1
movzx edx, byte [edi]
mov ecx, edx
je 0x44df89
cmp edx, 0xc0
jb 0x44df89
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44dee6
mov eax, edx
mov ebx, 2
and eax, 0x1f
mov edx, ecx
shl eax, 6
jmp 0x44df85
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44df05
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x44df7f
and eax, 0x3f
test dl, 8
jne 0x44df29
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44df7f
test dl, 4
jne 0x44df52
and edx, 3
mov ebx, 5
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44df7f
and edx, ebx
mov ebx, 6
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
mov ebp, dword [esp + 0x18]
and ecx, 0x7f
shr edx, 7
movzx eax, byte [edx + 0x5262c8]
mov edx, dword [esp + 0x14]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx ecx, byte [eax*8 + 0x524c4a]
mov eax, 1
shl eax, cl
test dword [ebp*4 + 0x524ad0], eax
mov ebp, dword [esp + 0xb0]
je 0x44dfe6
add edi, ebx
mov dword [esp + 0x18], ecx
mov dword [esi + 8], edi
mov edx, dword [ebp + 0x78]
mov dword [esp + 0x14], edx
cmp edi, edx
jb 0x44dea1
mov ecx, dword [ebp + 0x88]
test ecx, ecx
je 0x44e025
mov eax, dword [esi + 8]
cmp eax, edx
jb 0x44e025
cmp eax, dword [ebp + 0x84]
jbe 0x44e025
mov dword [ebp + 0x64], 1
cmp ecx, 1
jle 0x44e025
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee72
mov ebx, dword [esp + 0x28]
mov edi, 0xfffffff4
jmp 0x44aea4
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e054
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov ecx, dword [esi + 8]
dec ecx
mov dword [esi + 8], ecx
test ebx, ebx
je 0x44e08e
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44e08e
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44e082
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e0c3
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov edi, dword [esi + 8]
dec edi
mov dword [esi + 8], edi
test ebx, ebx
jne 0x44e0f1
movzx edx, byte [edi]
jmp 0x44e1cd
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x44e10c
nop dword [eax]
dec edi
mov dword [esi + 8], edi
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
je 0x44e100
mov edi, dword [esi + 8]
movzx edx, byte [edi]
mov ecx, edx
cmp edx, 0xc0
jb 0x44e1cf
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44e13f
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x44e1cb
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44e159
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x44e1c5
and eax, 0x3f
test dl, 8
jne 0x44e178
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44e1c5
test dl, 4
jne 0x44e19c
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44e1c5
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
and ecx, 0x7f
movzx eax, byte [edx + 0x5262c8]
shl eax, 7
add eax, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx ebx, byte [eax*8 + 0x524c4a]
mov eax, edi
cmp eax, dword [esi + 0x30]
jbe 0x4412b0
cmp dword [esp + 0x28], 0
lea edx, [edi - 1]
mov edi, edx
jne 0x44e214
movzx edx, byte [edi]
jmp 0x44e2f0
mov cl, byte [edi]
mov al, cl
and al, 0xc0
cmp al, 0x80
jne 0x44e232
mov al, byte [edx - 1]
lea edi, [edx - 1]
mov cl, al
mov edx, edi
and al, 0xc0
cmp al, 0x80
je 0x44e222
movzx edx, cl
mov ecx, edx
cmp edx, 0xc0
jb 0x44e2f2
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x20
jne 0x44e262
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
jmp 0x44e2ee
movzx eax, byte [edi + 2]
test dl, 0x10
jne 0x44e27c
and edx, 0xf
shl edx, 6
or edx, ecx
jmp 0x44e2e8
and eax, 0x3f
test dl, 8
jne 0x44e29b
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44e2e8
test dl, 4
jne 0x44e2bf
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
jmp 0x44e2e8
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 5]
shl edx, 6
and eax, 0x3f
or edx, eax
mov ecx, edx
shr edx, 7
and ecx, 0x7f
movzx eax, byte [edx + 0x5262c8]
shl eax, 7
add eax, ecx
mov ecx, ebx
movzx eax, word [eax*2 + 0x5284c8]
movzx edx, byte [eax*8 + 0x524c4a]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x524ad0], eax
je 0x449b25
mov dword [esi + 8], edi
mov ebx, edx
jmp 0x44e1f1
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44e373
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
mov dword [esi + 8], edx
mov ecx, eax
mov edi, eax
test ebx, ebx
je 0x44e487
cmp eax, 0xc0
jb 0x44e487
test al, 0x20
jne 0x44e3af
movzx eax, byte [edx]
and ecx, 0x1f
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x44e482
test al, 0x10
jne 0x44e3d5
movzx ecx, byte [edx]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44e482
test al, 8
jne 0x44e407
movzx ecx, byte [edx]
and eax, 7
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44e482
mov ecx, eax
test al, 4
movzx eax, byte [edx]
jne 0x44e444
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44e482
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x44e4c9
cmp eax, 3
je 0x44e4c9
xor eax, eax
jmp 0x44e4ce
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e506
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444d0a
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov ecx, edx
mov dword [esi + 8], edi
mov eax, edx
mov ebx, edx
mov dword [esp + 0x14], edx
je 0x44e66a
mov dword [esp + 0x14], edx
cmp edx, 0xc0
jb 0x44e66a
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x44e58f
and eax, 0x1f
mov edx, ecx
shl eax, 6
or edx, eax
lea eax, [edi + 1]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x44e66e
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x44e5bb
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x44e66e
test dl, 8
jne 0x44e5ec
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x44e66e
test dl, 4
jne 0x44e626
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x44e66e
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov ecx, edx
mov dword [esi + 8], eax
mov eax, ecx
mov ebx, ecx
mov edi, ecx
jmp 0x44e66e
mov edi, dword [esp + 0x14]
cmp ecx, 0x24
je 0x44e6ac
cmp eax, 0x40
je 0x44e6ac
cmp ebx, 0x60
je 0x44e6ac
cmp edi, 0xa0
jb 0x44e699
cmp edx, 0xd7ff
jbe 0x44e6ac
cmp edx, 0xe000
jae 0x44e6ac
xor eax, eax
jmp 0x44e6b1
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x44d1fa
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e6e9
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x44bfb3
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x444d0a
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x28], 0
mov eax, edx
mov dword [esi + 8], edi
mov ecx, edx
mov dword [esp + 0x14], edx
mov ebx, edx
mov dword [esp + 0x18], edx
je 0x44e833
mov dword [esp + 0x14], edx
mov dword [esp + 0x18], edx
cmp edx, 0xc0
jb 0x44e833
test dl, 0x20
jne 0x44e771
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44e822
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x44e79c
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x44e822
test dl, 8
jne 0x44e7bf
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x44e822
test dl, 4
jne 0x44e7ee
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x44e822
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov dword [esp + 0x14], edx
mov eax, edx
mov ebx, edx
mov dword [esp + 0x18], edx
cmp dword [esp + 0x14], 0x20
mov edi, edx
ja 0x44e858
cmp eax, 0x20
je case.0x44e966.8193
lea eax, [edx - 9]
cmp eax, 4
ja case.0x44e966.8203
jmp dword [eax*4 + 0x44fd6c]
cmp edx, 0x2000
ja 0x44e93a
cmp ecx, 0x2000
je case.0x44e966.8193
cmp edi, 0x1680
ja 0x44e92f
cmp edx, 0x1680
je case.0x44e966.8193
mov eax, edx
sub eax, 0x85
je case.0x44e966.8193
sub eax, 0x1b
je case.0x44e966.8193
mov eax, edx
test eax, eax
jns 0x44e8ab
add eax, 0x7f
sar eax, 7
movzx eax, byte [eax + 0x5262c8]
shl eax, 7
and edx, 0x8000007f
jns 0x44e8c9
dec edx
or edx, 0xffffff80
inc edx
add eax, edx
xor ecx, ecx
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
cmp dword [eax*4 + 0x524a58], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.default.0x44d1fa
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e920
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44eb58
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x44bfb3
cmp edx, 0x180e
jmp 0x44e898
cmp ebx, 0x3000
ja case.0x44e966.8203
cmp dword [esp + 0x18], 0x3000
je case.0x44e966.8193
lea eax, [edx - 0x2001]
cmp eax, 0x5e
ja case.0x44e966.8203
movzx eax, byte [eax + 0x44fd88]
jmp dword [eax*4 + 0x44fd80]
cmp dword [esi + 0x68], 0
je 0x44e8f1
jmp case.default.0x44d1fa
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x44e9bb
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edx, dword [ebp + 0x84]
jmp 0x444d1e
movzx eax, byte [edx]
inc edx
cmp dword [esp + 0x28], 0
mov ecx, eax
mov dword [esi + 8], edx
mov edi, eax
mov ebx, eax
je 0x44ead6
cmp eax, 0xc0
jb 0x44ead6
test al, 0x20
jne 0x44e9fc
movzx ecx, byte [edx]
and eax, 0x1f
shl eax, 6
and ecx, 0x3f
or ecx, eax
lea eax, [edx + 1]
jmp 0x44eacf
test al, 0x10
jne 0x44ea22
movzx ecx, byte [edx]
and eax, 0xf
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x44eacf
test al, 8
jne 0x44ea54
movzx ecx, byte [edx]
and eax, 7
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 3]
jmp 0x44eacf
mov ecx, eax
test al, 4
movzx eax, byte [edx]
jne 0x44ea91
and ecx, 3
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 4]
jmp 0x44eacf
and ecx, 1
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 2]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov edi, ecx
mov ebx, ecx
shr ecx, 7
and edi, 0x7f
movzx eax, byte [ecx + 0x5262c8]
shl eax, 7
add eax, edi
movzx eax, word [eax*2 + 0x5284c8]
movzx eax, byte [eax*8 + 0x524c49]
mov eax, dword [eax*4 + 0x524a58]
cmp eax, 1
je 0x44eb21
cmp eax, 3
je 0x44eb21
cmp ebx, 0x5f
je 0x44eb21
xor eax, eax
jmp 0x44eb26
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.default.0x44d1fa
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ed8a
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ed80
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee8f
mov edi, 0xfffffffa
jmp 0x44aea0
test edi, edi
jne case.default.0x44b3cc
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jge case.0x44bdfa.14
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x44ebd0
mov eax, dword [ebp + 0x88]
test eax, eax
je case.0x44bdfa.14
cmp edi, dword [ebp + 0x84]
jbe case.0x44bdfa.14
mov dword [ebp + 0x64], 1
cmp eax, 1
jle case.0x44bdfa.14
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee72
mov edi, 0xfffffff4
jmp 0x44aea4
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
mov ecx, edx
test ebx, ebx
je 0x44ecc0
cmp edx, 0xc0
jb 0x44ecc0
movzx ecx, byte [edi]
and ecx, 0x3f
test dl, 0x20
jne 0x44ec10
mov eax, edx
mov edx, ecx
and eax, 0x1f
shl eax, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44ecbb
movzx eax, byte [edi + 1]
and eax, 0x3f
test dl, 0x10
jne 0x44ec35
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x44ecbb
test dl, 8
jne 0x44ec58
and edx, 7
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 3]
jmp 0x44ecbb
test dl, 4
jne 0x44ec87
and edx, 3
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 4]
jmp 0x44ecbb
and edx, 1
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl edx, 6
or edx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 5]
mov dword [esi + 8], eax
mov ecx, edx
mov eax, dword [esi + 0x64]
cmp ecx, dword [eax*4 + 0x524b08]
lea eax, [eax*4 + 0x524b08]
jb 0x44eced
mov ecx, dword [eax]
nop dword [eax]
lea eax, [eax + 4]
cmp edx, ecx
je 0x44ed0a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x44ece0
cmp dword [esi + 0x68], 0
jne 0x44ed10
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee82
xor edi, edi
jmp 0x44aea4
cmp dword [esi + 0x68], 0
jne case.0x44bdfa.14
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eda3
push 0x134
call dword [0x3207984]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ed99
mov eax, dword [esi]
mov esi, eax
test eax, eax
je 0x44ee8f
lea edi, [ecx - 6]
jmp 0x44aea4
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x44ed64
push ecx
call dword [0x3207980]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x441323
mov dword [esi + 0xc], ecx
jmp 0x4412b0
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x44bfb3
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x44bfb3
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x8c
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x8c
ret