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

Disassembly:
mov eax, dword [esp + 4]
sub esp, 0x68
push ebx
push ebp
mov ebp, dword [esp + 0x84]
push esi
push edi
mov esi, dword [ebp + 0xb8]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x80]
mov dword [esi + 0xc], eax
mov eax, dword [esp + 0x84]
mov dword [esi + 0x10], eax
mov eax, dword [esp + 0x88]
mov dword [esi + 0x14], eax
mov eax, dword [esp + 0x90]
mov dword [esi + 0x18], eax
mov eax, dword [esp + 0x94]
mov dword [esi + 0x1c], eax
lea ecx, [ecx]
mov dword [esi + 0x64], 0
mov dword [esi + 0x68], 0
mov edi, edi
mov edx, dword [ebp]
mov ecx, dword [ebp + 4]
mov edi, dword [ebp + 0x4c]
mov dword [esp + 0x8c], edi
lea eax, [edx + 1]
mov dword [ebp], eax
cmp edx, ecx
jb 0x440f2e
mov esi, dword [esi]
test esi, esi
je 0x44ebd1
mov edi, 0xfffffff8
jmp 0x44a7d9
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x440f4a
mov esi, dword [esi]
test esi, esi
je 0x44ebde
mov edi, 0xffffffeb
jmp 0x44a7d9
cmp dword [ebp + 0x98], 2
jne 0x440f81
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
jmp 0x440f81
add dword [esi + 0xc], 3
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
xor ebx, ebx
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], ebx
movzx edx, byte [eax]
mov dword [esi + 0x9c], edx
cmp edx, 0xa1
ja case.0x440fb4.98
movzx eax, byte [edx + 0x44edec]
jmp dword [eax*4 + 0x44eca0]
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 0x44e435
push 0x134
call dword [0x5a3d10]
mov edi, eax
add esp, 4
test edi, edi
jne 0x44e42f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e485
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e47f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e4a3
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e49d
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 0x44e4c1
push 0x134
call dword [0x5a3d10]
mov edi, eax
add esp, 4
test edi, edi
jne 0x44e4bb
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e4d6
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e4d0
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x44110e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x54fdd0]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x440f81
mov edi, dword [esi + 4]
test edi, edi
jne 0x44e4f4
push 0x134
call dword [0x5a3d10]
mov edi, eax
add esp, 4
test edi, edi
jne 0x44e4ee
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e509
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e503
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 0x44e527
push 0x134
call dword [0x5a3d10]
mov edi, eax
add esp, 4
test edi, edi
jne 0x44e521
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 0x44bd18
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.0x440fb4.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 0x44a87b
mov dword [esi + 0x54], ebx
jmp 0x441a1f
mov dword [esi + 0x54], ebx
jmp 0x441a43
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
add dword [esi + 0xc], 3
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x76
jne 0x441388
mov edi, dword [0x5a8e8c]
test edi, edi
je 0x441374
mov dword [esp + 0x10], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x14], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x18], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x1c], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x24], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x28], 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 + 0x38], 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 + 0x3c], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x2c], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x30], eax
test eax, eax
jne 0x44132e
mov dword [esp + 0x30], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x34], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x40], eax
lea eax, [esp + 0x10]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x441363
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
jns 0x441374
mov esi, dword [esi]
test esi, esi
je 0x44acbc
jmp 0x44a7d9
movzx eax, byte [0x54fe46]
add dword [esi + 0xc], eax
movzx eax, byte [0x54fe46]
sub dword [esi + 0x78], eax
mov dword [esi + 0x58], ebx
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx]
mov dword [esp + 0x88], edx
lea eax, [edx - 0x8d]
cmp eax, 0x10
ja case.0x4413ae.146
movzx eax, byte [eax + 0x44eea8]
jmp dword [eax*4 + 0x44ee90]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x4413ae.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x4413e7
cmp edx, dword [edi + 4]
je 0x4413e7
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x44ab13
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x44ab13
cmp dword [ebp + 0xa4], ebx
je case.0x4413ae.145
movzx ebx, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edi, byte [ecx + 1]
shl ebx, 8
shl edi, 8
or ebx, eax
movzx eax, byte [ecx + 2]
or edi, eax
imul edi, dword [ebp + 0x24]
add edi, dword [ebp + 0x30]
test ebx, ebx
jle case.0x4413ae.145
lea esp, [esp]
movzx eax, byte [edi]
xor ecx, ecx
movzx edx, byte [edi + 1]
dec ebx
shl eax, 8
or edx, eax
mov eax, dword [ebp + 0xa4]
cmp edx, dword [eax + 4]
sete cl
mov dword [esi + 0x58], ecx
test ecx, ecx
jne 0x44ab13
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x441430
jmp 0x44ab13
mov eax, dword [esi + 0xc]
movzx ecx, byte [ecx + 1]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
add ecx, ecx
mov dword [esi + 0x98], ecx
cmp ecx, dword [esi + 0x14]
jge 0x441494
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x441494
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x4413ae.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x4413ae.145
movzx edi, byte [ecx + 3]
movzx eax, byte [ecx + 4]
movzx edx, byte [ecx + 1]
shl edi, 8
shl edx, 8
or edi, eax
movzx eax, byte [ecx + 2]
or edx, eax
imul edx, dword [ebp + 0x24]
add edx, dword [ebp + 0x30]
test edi, edi
jle 0x44ab13
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 0x4414e9
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x4414f8
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x4414c7
jmp 0x44ab13
mov dword [esi + 0x58], 1
jmp 0x44ab13
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e53c
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e536
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 0x441594
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x440f76
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 ecx, dword [esi + 0x98]
mov edx, dword [esi + 0x14]
cmp ecx, edx
jl 0x440f76
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x4415e3
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
mov eax, dword [esi + 0x98]
add eax, 2
mov dword [esi + 0x14], eax
jmp 0x440f76
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x441636
cmp edx, 0x9f
je 0x441636
cmp dword [ebp + 0xa4], ebx
jne 0x441636
cmp dword [ebp + 0x5c], ebx
jne 0x441625
cmp dword [ebp + 0x60], ebx
je 0x441636
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x441636
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
mov dword [ebp + 0x80], edi
mov eax, dword [esi + 0x14]
mov dword [ebp + 0x8c], eax
mov eax, dword [esi + 0x10]
mov dword [ebp + 0x7c], eax
mov edi, dword [esi + 0x9c]
mov esi, dword [esi]
neg edi
sbb edi, edi
and edi, 0xfffffc18
inc edi
test esi, esi
je 0x44acbc
jmp 0x44a7d9
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x44168f
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x44ac0d
mov dword [esi + 0x58], ebx
jmp 0x44ac0d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x4416bb
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x44ad5b
mov dword [esi + 0x58], ebx
jmp 0x44ad5b
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x441722
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x441708
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x447f06.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x441704
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4416f8
test edx, edx
jg 0x4416e0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x440f76
mov dword [ebp + 0x84], eax
jmp 0x440f76
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0xc]
shl ecx, 8
movzx eax, byte [eax + 2]
or ecx, eax
sub dword [esi + 8], ecx
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jae 0x441708
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e0
mov edi, dword [0x5a8e8c]
test edi, edi
je 0x44182c
mov dword [esp + 0x44], 2
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
mov dword [esp + 0x48], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x4c], eax
mov eax, dword [ebp + 0x74]
mov dword [esp + 0x50], eax
mov eax, dword [ebp + 0x78]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x54], eax
mov eax, dword [esi + 0x10]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x58], eax
mov eax, dword [esi + 8]
sub eax, dword [ebp + 0x74]
mov dword [esp + 0x5c], 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 + 0x6c], 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 + 0x70], ecx
mov eax, dword [esi + 0x14]
cdq
sub eax, edx
sar eax, 1
mov dword [esp + 0x60], eax
movzx eax, word [ebp + 0x90]
mov dword [esp + 0x64], eax
test eax, eax
jne 0x4417e6
mov dword [esp + 0x64], 0xffffffff
mov eax, dword [ebp + 0xa8]
mov dword [esp + 0x68], eax
mov eax, dword [ebp + 0xb0]
mov dword [esp + 0x74], eax
lea eax, [esp + 0x44]
push eax
call edi
mov edi, eax
add esp, 4
test edi, edi
jle 0x44181b
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
jns 0x44182c
mov esi, dword [esi]
test esi, esi
je 0x44acbc
jmp 0x44a7d9
add dword [esi + 0xc], 6
jmp 0x440f7a
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 0x441856
xor edx, edx
jmp 0x441863
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 0x441883
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x44187d
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x4418e4
mov ecx, dword [ecx]
test ecx, ecx
jne 0x441870
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 0x4418f8
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x44ae44
mov esi, dword [esi]
test esi, esi
je 0x44ec02
mov edi, 0xffffffe6
jmp 0x44a7d9
shl eax, 2
push eax
call dword [0x5a3d08]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x4418be
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 0x441921
jmp 0x440f81
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e577
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e571
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x441980
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e595
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e58f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 ecx, eax
add edx, ecx
mov dword [esi + 0x2c], edx
cmp byte [edx], 0x77
je 0x4419d3
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x440f81
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x9c], eax
mov dword [esi + 0x54], 1
mov eax, dword [esi + 0x9c]
cmp eax, 0x86
je 0x441a1f
cmp eax, 0x8b
jne 0x441a43
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 0x441a60
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 0x44b92d
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 0x441add
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e927
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e91d
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 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 0x441b38
cmp al, 0x81
je 0x441b38
mov dword [esi + 0x38], ebx
jmp 0x441b49
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 0x441b56
cmp al, 0x80
jbe 0x441b5a
cmp al, 0x82
jne 0x441b86
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
mov esi, dword [esi]
test esi, esi
je 0x44ec36
mov edi, 1
jmp 0x44a7d9
cmp al, 0x85
je 0x441b9a
cmp al, 0x8a
je 0x441b9a
cmp al, 0x86
je 0x441b9a
cmp al, 0x8b
jne 0x441c61
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 0x441bd6
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x441bd6
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x441b6c
mov eax, dword [ebp + 0x90]
and eax, 0xffff0000
or eax, dword [esi + 0x94]
mov dword [ebp + 0x90], eax
mov ecx, dword [esi + 0x98]
cmp ecx, dword [ebp + 0x14]
jl 0x441c05
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x441c61
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x441c25
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x441c25
sub ecx, edi
dec ecx
shr ecx, 2
inc ecx
or eax, 0xffffffff
rep stosd dword es:[edi], eax
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 0x441c61
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x441c97
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 esi, dword [esi]
test esi, esi
je 0x44ec0f
mov edi, 0xfffffc1a
jmp 0x44a7d9
cmp cl, 0x78
je 0x441d10
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x441d10
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x441cde
test ecx, ecx
jne 0x44e5b6
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e5b0
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test ecx, ecx
jne 0x44e5d7
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e5d1
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x44af77
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e5f5
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e5ef
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
cmp dword [ebp + 0x44], ebx
je case.0x440fb4.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x440fb4.1
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x441e38
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
cmp dword [ebp + 0x44], ebx
je 0x441daa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x441daa
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x4427f4
cmp ecx, dword [ebp + 0x78]
je 0x441e10
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x441de8
cmp ecx, edx
jbe 0x441e10
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00451200
add esp, 0x14
test eax, eax
jne 0x4427f4
jmp 0x441e10
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x441e10
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x441e10
cmp edi, 1
je 0x4427f4
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4427f4
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7d9
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x441d75
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x440f81
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x441efa
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x441e75
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x4427f4
jmp 0x441e99
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x441e99
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x441e99
cmp edx, 1
je 0x4427f4
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4427f4
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x447f06.14
cmp dword [ebp + 0x18], ebx
jne case.0x447f06.14
cmp dword [edi], 2
jne case.0x447f06.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x447f06.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x447f06.14
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7d9
cmp dword [ebp + 0x48], ebx
jne 0x441d7b
cmp dword [ebp + 0x88], ebx
je 0x4427f4
cmp ecx, dword [ebp + 0x84]
jbe 0x4427f4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4427f4
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7d9
cmp dword [ebp + 0x48], ebx
jne 0x441d7b
cmp dword [ebp + 0x58], ebx
je case.0x440fb4.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x441d7b
cmp dword [ebp + 0x88], ebx
je 0x441e38
cmp eax, dword [ebp + 0x84]
jbe 0x441e38
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x441e38
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7d9
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x442005
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x441fcd
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x441ff5
jmp 0x441e99
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x441e99
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x441e99
cmp edx, 1
je 0x441ff5
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x441e99
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x441e99
cmp dword [ebp + 0x88], ebx
je 0x4427f4
cmp ecx, dword [ebp + 0x84]
jbe 0x4427f4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4427f4
jmp 0x441ee6
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x442307
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x442055
mov dword [esi + 0x5c], ebx
jmp 0x44218e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x44206a
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x442060
cmp edx, dword [ebp + 0x84]
jae 0x442078
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x44212c
test bl, 0x20
jne 0x4420a0
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x44212c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4420ba
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x442122
and eax, 0x3f
test bl, 8
jne 0x4420d5
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x442122
test bl, 4
jne 0x4420f9
and ebx, 3
shl ebx, 6
or ecx, ebx
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 0x442122
and ebx, 1
shl ebx, 6
or ecx, ebx
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]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp dword [ebp + 0x54], 0
je 0x4421c7
cmp ebx, 0x5f
jne 0x442144
mov dword [esi + 0x5c], 1
jmp 0x44218e
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x442166
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x4421d8
cmp eax, 3
je 0x4421d8
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x4421df
cmp dword [ebp + 0x88], 0
je 0x4421bb
cmp edx, dword [ebp + 0x84]
jbe 0x4421bb
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
mov dword [esi + 0x54], 0
jmp 0x442445
cmp ebx, 0x100
jae 0x442189
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x442189
mov eax, 1
jmp 0x44218b
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x442289
test bl, 0x20
jne 0x4421ff
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x442281
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x442219
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x442281
and eax, 0x3f
test bl, 8
jne 0x442234
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x442281
test bl, 4
jne 0x442258
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 0x442281
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]
and eax, 0x3f
shl ebx, 6
or ebx, eax
cmp dword [ebp + 0x54], 0
je 0x4422ec
cmp ebx, 0x5f
jne 0x4422a0
mov dword [esi + 0x54], 1
jmp 0x442445
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x4422c2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x4422fd
cmp eax, 3
je 0x4422fd
xor eax, eax
jmp 0x442442
cmp ebx, 0x100
jae 0x4422e5
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x4422e5
mov eax, 1
jmp 0x442442
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x442317
mov dword [esi + 0x5c], ebx
jmp 0x4423b2
cmp eax, dword [ebp + 0x84]
ja 0x442326
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x44239e
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x442340
mov dword [esi + 0x5c], 1
jmp 0x4423b2
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ecx, 0x8000007f
jns 0x442362
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x442390
cmp eax, 3
je 0x442390
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x4423af
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x4423af
movzx eax, byte [eax - 1]
mov ecx, dword [ebp + 0x40]
movzx eax, byte [eax + ecx]
shr eax, 4
and eax, 1
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4423f3
cmp dword [ebp + 0x88], ebx
je 0x4423ee
cmp eax, dword [ebp + 0x84]
jbe 0x4423ee
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4423ee
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7e0
mov dword [esi + 0x54], ebx
jmp 0x442445
cmp dword [ebp + 0x54], ebx
je 0x442432
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x442409
mov dword [esi + 0x54], 1
jmp 0x442445
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ecx, 0x8000007f
jns 0x44242b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x4422c4
movzx eax, byte [eax]
mov ecx, 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 0x442460
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x442468
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x440f81
jmp 0x441d7b
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x4424ad
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x4424d8
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x441d7b
jmp 0x4424d8
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x4424d8
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4424d8
cmp edx, 1
je 0x441d7b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x441d7b
cmp dword [ebp + 0x88], ebx
je case.0x440fb4.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x440fb4.13
cmp dword [ebp + 0x18], ebx
jne case.0x440fb4.13
cmp dword [ebp + 0x1c], 2
jne case.0x440fb4.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x440fb4.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x442536
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
cmp eax, dword [ebp + 0x84]
jbe case.0x447f06.14
jmp 0x441ed2
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x441e38
cmp eax, dword [ebp + 0x78]
jae 0x441e38
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x441e38
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x442552
inc dword [esi + 0xc]
jmp 0x440f81
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x442519
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x440f81
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4425ad
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
cmp edi, dword [ebp + 0x84]
jbe case.0x447f06.14
jmp 0x441ed2
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4426a9
cmp ebx, 0xc0
jb 0x4426a9
test bl, 0x20
jne 0x4425ea
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4426a6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x442614
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4426a9
mov edx, dword [esi + 8]
test bl, 8
jne 0x44263a
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44269d
test bl, 4
jne 0x442669
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44269d
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x4427f4
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x4427f4
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4427db
cmp ebx, 0xc0
jb 0x4427db
test bl, 0x20
jne 0x44271c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4427d8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x442746
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4427db
mov edx, dword [esi + 8]
test bl, 8
jne 0x44276c
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x4427cf
test bl, 4
jne 0x44279b
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x4427cf
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x44173d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x44173d
inc dword [esi + 0xc]
jmp 0x440f7a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x442904
cmp ebx, 0xc0
jb 0x442904
test bl, 0x20
jne 0x442845
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x442901
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44286f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x442904
mov edx, dword [esi + 8]
test bl, 8
jne 0x442895
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x4428f8
test bl, 4
jne 0x4428c4
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x4428f8
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x4427f4
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x4426bc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x442a24
cmp ebx, 0xc0
jb 0x442a24
test bl, 0x20
jne 0x442965
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x442a21
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44298f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x442a24
mov edx, dword [esi + 8]
test bl, 8
jne 0x4429b5
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x442a18
test bl, 4
jne 0x4429e4
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x442a18
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x44173d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x44173d
inc dword [esi + 0xc]
jmp 0x440f7a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x442b4d
cmp ebx, 0xc0
jb 0x442b4d
test bl, 0x20
jne 0x442a8e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x442b4a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x442ab8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x442b4d
mov edx, dword [esi + 8]
test bl, 8
jne 0x442ade
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x442b41
test bl, 4
jne 0x442b0d
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x442b41
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x100
jae 0x4427f4
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x4426bc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x442c6d
cmp ebx, 0xc0
jb 0x442c6d
test bl, 0x20
jne 0x442bae
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x442c6a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x442bd8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x442c6d
mov edx, dword [esi + 8]
test bl, 8
jne 0x442bfe
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x442c61
test bl, 4
jne 0x442c2d
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x442c61
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
ja 0x44173d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x44173d
inc dword [esi + 0xc]
jmp 0x440f7a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x442d96
cmp ebx, 0xc0
jb 0x442d96
test bl, 0x20
jne 0x442cd7
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x442d93
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x442d01
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x442d96
mov edx, dword [esi + 8]
test bl, 8
jne 0x442d27
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x442d8a
test bl, 4
jne 0x442d56
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x442d8a
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xd
ja 0x442e0f
je 0x442db1
cmp ebx, 0xa
je 0x4427f4
jbe 0x4426c2
cmp ebx, 0xc
jmp 0x442e29
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x442dfa
cmp dword [ebp + 0x88], 0
je 0x4427f4
cmp eax, dword [ebp + 0x84]
jbe 0x4427f4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4427f4
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7e0
cmp byte [eax], 0xa
jne 0x4427f4
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x440f7a
cmp ebx, 0x85
je 0x442e2f
cmp ebx, 0x2027
jbe 0x4426c2
cmp ebx, 0x2029
ja 0x4426c2
cmp dword [ebp + 0x68], 0
jmp 0x4426bc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x442f40
cmp ebx, 0xc0
jb 0x442f40
test bl, 0x20
jne 0x442e81
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x442f3d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x442eab
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x442f40
mov edx, dword [esi + 8]
test bl, 8
jne 0x442ed1
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x442f34
test bl, 4
jne 0x442f00
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x442f34
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x442f78
je 0x44173d
cmp ebx, 0xa0
ja 0x442f6d
je 0x44173d
cmp ebx, 9
je 0x44173d
cmp ebx, 0x20
jmp 0x4427ee
cmp ebx, 0x1680
jmp 0x4427ee
cmp ebx, 0x205f
ja 0x442fa9
je 0x44173d
cmp ebx, 0x2000
jb 0x4427f4
cmp ebx, 0x200a
jbe 0x44173d
cmp ebx, 0x202f
jmp 0x4427ee
cmp ebx, 0x3000
je 0x44173d
inc dword [esi + 0xc]
jmp 0x440f7a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4430c5
cmp ebx, 0xc0
jb 0x4430c5
test bl, 0x20
jne 0x443006
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4430c2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x443030
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4430c5
mov edx, dword [esi + 8]
test bl, 8
jne 0x443056
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x4430b9
test bl, 4
jne 0x443085
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x4430b9
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x4430fd
je 0x4427f4
cmp ebx, 0xa0
ja 0x4430f2
je 0x4427f4
cmp ebx, 9
je 0x4427f4
cmp ebx, 0x20
jmp 0x4426bc
cmp ebx, 0x1680
jmp 0x4426bc
cmp ebx, 0x205f
ja 0x44312e
je 0x4427f4
cmp ebx, 0x2000
jb 0x4426c2
cmp ebx, 0x200a
jbe 0x4427f4
cmp ebx, 0x202f
jmp 0x4426bc
cmp ebx, 0x3000
jmp 0x4426bc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x443241
cmp ebx, 0xc0
jb 0x443241
test bl, 0x20
jne 0x443182
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44323e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4431ac
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x443241
mov edx, dword [esi + 8]
test bl, 8
jne 0x4431d2
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x443235
test bl, 4
jne 0x443201
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x443235
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x443269
je 0x4426c2
cmp ebx, 0xa
jb 0x4427f4
cmp ebx, 0xd
jbe 0x4426c2
inc dword [esi + 0xc]
jmp 0x440f7a
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x4427f4
jmp 0x4426c2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x443385
cmp ebx, 0xc0
jb 0x443385
test bl, 0x20
jne 0x4432c6
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x443382
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4432f0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x443385
mov edx, dword [esi + 8]
test bl, 8
jne 0x443316
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x443379
test bl, 4
jne 0x443345
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x443379
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x85
ja 0x4433aa
je 0x4427f4
cmp ebx, 0xa
jb 0x44173d
cmp ebx, 0xd
jbe 0x4427f4
jmp 0x44173d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x44173d
inc dword [esi + 0xc]
jmp 0x440f7a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x4434bd
cmp ebx, 0xc0
jb 0x4434bd
test bl, 0x20
jne 0x443409
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4434ba
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x443431
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4434bd
mov edx, dword [esi + 8]
test bl, 8
jne 0x443457
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]
jmp 0x4434ba
test bl, 4
jne 0x443486
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]
jmp 0x4434ba
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x4434e0
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 1]
movzx edx, word [ecx*2 + 0x553958]
cmp eax, 0xa
ja case.default.0x4434fa
jmp dword [eax*4 + 0x44eebc]
cmp dword [esi + 0x9c], 0xf
jne 0x440f76
jmp 0x441d7b
mov al, byte [edx*8 + 0x5500d9]
cmp al, 9
je 0x44352a
cmp al, 5
je 0x44352a
cmp al, 8
je 0x44352a
xor ecx, ecx
jmp 0x44352f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x440f76
jmp 0x441d7b
movzx ecx, byte [edx*8 + 0x5500d9]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x54fee8]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x440f76
jmp 0x441d7b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x5500d9]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x440f76
jmp 0x441d7b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x5500d8]
jmp 0x44358b
movzx eax, byte [edx*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x44352a
cmp eax, 3
je 0x44352a
xor ecx, ecx
jmp 0x44352f
cmp ebx, 0x180e
ja 0x443623
je case.0x4434fa.0
cmp ebx, 0x85
ja 0x44360f
je case.0x4434fa.0
cmp ebx, 9
jb case.0x443643.8203
cmp ebx, 0xd
jbe case.0x4434fa.0
cmp ebx, 0x20
jmp 0x44365c
cmp ebx, 0xa0
je case.0x4434fa.0
cmp ebx, 0x1680
jmp 0x44365c
cmp ebx, 0x202f
ja 0x44364a
je case.0x4434fa.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x443643.8203
movzx eax, byte [ebx + 0x44eef0]
jmp dword [eax*4 + 0x44eee8]
cmp ebx, 0x205f
je case.0x4434fa.0
cmp ebx, 0x3000
je case.0x4434fa.0
movzx eax, byte [edx*8 + 0x5500d9]
xor ecx, ecx
cmp dword [eax*4 + 0x54fee8], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x443597
movzx eax, byte [edx*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x44352a
cmp eax, 3
je 0x44352a
cmp ebx, 0x5f
je 0x44352a
xor ecx, ecx
jmp 0x44352f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x54ff98]
lea eax, [eax*4 + 0x54ff98]
cmp ebx, ecx
jb 0x4436dd
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x4436ef
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x4436d0
cmp dword [esi + 0x9c], 0x10
jne 0x440f76
jmp 0x441d7b
cmp dword [esi + 0x9c], 0x10
je 0x440f76
jmp 0x441d7b
cmp ebx, 0x24
je 0x44352a
cmp ebx, 0x40
je 0x44352a
cmp ebx, 0x60
je 0x44352a
cmp ebx, 0xa0
jb 0x443730
cmp ebx, 0xd7ff
jbe 0x44352a
cmp ebx, 0xe000
jae 0x44352a
xor ecx, ecx
jmp 0x44352f
mov esi, dword [esi]
test esi, esi
je case.default.0x44a7f4
mov edi, 0xfffffff2
jmp 0x44a7d9
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x443862
cmp ebx, 0xc0
jb 0x443862
test bl, 0x20
jne 0x4437a0
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44385f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4437cf
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, dword [esp + 0x8c]
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x443862
mov edx, dword [esi + 8]
test bl, 8
jne 0x4437f5
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]
jmp 0x443858
test bl, 4
jne 0x443824
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]
jmp 0x443858
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x443884
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500da]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443a16
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4439ae
cmp ebx, 0xc0
jb 0x4439ae
test bl, 0x20
jne 0x4438e5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4439a6
test bl, 0x10
jne 0x44390a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x4439a6
test bl, 8
jne 0x443938
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x4439a6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x443972
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x4439a6
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x4439d0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx ecx, byte [eax*8 + 0x5500da]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x54ff60], eax
je 0x443a16
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x4438b0
cmp dword [ebp + 0x88], 0
je 0x4427f4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4427f4
cmp eax, dword [ebp + 0x84]
jbe 0x4427f4
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4427f4
jmp 0x441ee6
mov ecx, dword [esi + 0xc]
xor eax, eax
cmp edx, 0x74
sete al
movzx ebx, byte [ecx + 3]
movzx edx, byte [ecx + 2]
mov dword [esp + 0x7c], eax
movzx eax, byte [ecx + 4]
shl ebx, 8
or ebx, eax
movzx eax, byte [ecx + 1]
shl eax, 8
or edx, eax
lea eax, [ecx + 5]
imul edx, dword [ebp + 0x24]
add edx, 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
jle 0x443b44
lea esp, [esp]
movzx ecx, byte [edx]
dec ebx
movzx eax, byte [edx + 1]
shl ecx, 8
or ecx, eax
lea edi, [ecx + ecx]
mov dword [esi + 0x98], edi
cmp edi, dword [esi + 0x14]
jge 0x443ad4
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x443add
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x443ab0
jmp 0x443b44
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x443b44
xor eax, eax
cmp edx, 0x72
sete al
mov dword [esp + 0x7c], 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 edx, dword [esi + 0x98]
cmp edx, dword [esi + 0x14]
jge 0x443b34
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x443b34
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x443b3e
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
lea eax, [ecx - 0x62]
cmp eax, 7
ja case.default.0x443b5f
movzx eax, byte [eax + 0x44ef24]
jmp dword [eax*4 + 0x44ef1c]
add ecx, 0xffffff9e
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x80], ebx
movsx eax, byte [ecx + 0x54f428]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x54f434]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x443bed
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x443bed
movzx ecx, byte [edx + 1]
xor eax, eax
cmp bl, 0x69
sete al
shl ecx, 8
mov dword [esp + 0x80], 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 0x443be9
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x440f81
jns 0x443c11
cmp dword [esi + 0x90], 0
je 0x440f81
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x443c4f
mov edi, edi
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0044f420
add esp, 0x14
test eax, eax
js 0x443c81
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x443c20
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x440f81
cmp dword [esp + 0x80], 0
je 0x443caa
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x44b092
cmp eax, 0xfffffffe
jne 0x443c8c
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x447f06.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x447f06.14
jmp 0x442525
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x443cc0
cmp edi, dword [esi + 0x8c]
jge 0x44b0e1
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0044f420
add esp, 0x14
test eax, eax
js 0x443cf5
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x443cc0
cmp eax, 0xfffffffe
jne 0x44b0e1
cmp dword [ebp + 0x88], 0
je 0x44b0e1
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x44b0e1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44b0e1
jmp 0x441ee6
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.0044f420
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x443db9
cmp eax, 0xfffffffe
jne 0x443d65
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x44b6bd.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x44b6bd.14
cmp eax, dword [ebp + 0x84]
jbe case.0x44b6bd.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x44b6bd.14
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x44a7e4
add dword [esi + 8], eax
jmp 0x440f7a
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x28], eax
add dword [esi + 0xc], 0x21
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x443de7
movzx eax, byte [eax + 0x44ef34]
jmp dword [eax*4 + 0x44ef2c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x443e0a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x443e15
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x54f428]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x54f434]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x443eac
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x443eac
xor ebx, ebx
cmp cl, 0x69
sete bl
xor eax, eax
cmp cl, 0x6d
mov dword [esp + 0x84], ebx
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], 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 0x443e92
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x443eac
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x44400c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x444061
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x443fbc
test bl, 0x20
jne 0x443f0a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x443fb9
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x443f31
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x443fb7
test bl, 8
jne 0x443f54
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x443fb7
test bl, 4
jne 0x443f83
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x443fb7
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 ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x443fcd
cmp dword [esi + 0x9c], 0x6e
jmp 0x443fe2
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x443ed0
jmp 0x444053
cmp dword [ebp + 0x88], 0
je case.0x447f06.14
mov eax, dword [esi + 8]
jmp 0x442525
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x44405a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443ff7
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.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x444020
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x440f7a
test ebx, ebx
je 0x44408a
test edx, edx
jne 0x44e2f7
mov dword [esi + 0x84], eax
jmp 0x44b17b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x444242
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x44422f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x444207
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x4441b6
test bl, 0x20
jne 0x4440fb
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x4441b6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x444123
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x4441ac
and eax, 0x3f
test bl, 8
jne 0x444149
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x4441ac
test bl, 4
jne 0x444178
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x4441ac
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0xff
jbe 0x4441c7
cmp dword [esi + 0x9c], 0x6e
jmp 0x4441dc
mov eax, dword [esi + 0x28]
mov ecx, ebx
and ecx, 7
shr ebx, 3
mov edx, 1
shl edx, cl
test byte [ebx + eax], dl
je 0x44422f
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x4440b1
jmp 0x44422f
cmp dword [ebp + 0x88], 0
je 0x44422f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x44422f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44c13c
jmp 0x440f7a
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4442ba
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x444292
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 0x4442ba
lea eax, [ebx + 1]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x444251
jmp 0x4442ba
cmp dword [ebp + 0x88], 0
je 0x4442ba
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4442ba
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44b1bb
jmp 0x440f7a
mov eax, dword [esi + 0xc]
add eax, 3
mov dword [esi + 0x28], eax
mov edx, dword [esi + 0xc]
mov eax, edx
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
mov dword [esi + 0xc], edx
mov cl, byte [edx]
movzx edi, cl
lea eax, [edi - 0x62]
cmp eax, 0xb
ja case.default.0x444305
movzx eax, byte [eax + 0x44ef48]
jmp dword [eax*4 + 0x44ef40]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x444328
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x444333
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x54f428]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x54f434]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4443ca
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x4443ca
xor eax, eax
cmp cl, 0x69
sete al
mov dword [esp + 0x84], eax
xor eax, eax
cmp cl, 0x6d
movzx ecx, byte [edx + 1]
sete al
shl ecx, 8
mov dword [esp + 0x80], 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 0x4443b0
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x4443ca
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x444505
jmp 0x4443e0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x4444da
cmp edx, 0xc0
jb 0x4444da
test dl, 0x20
jne 0x444428
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4444d7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x44444f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4444d5
test dl, 8
jne 0x444472
and edx, 7
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
lea eax, [edi + 3]
jmp 0x4444d5
test dl, 4
jne 0x4444a1
and edx, 3
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
lea eax, [edi + 4]
jmp 0x4444d5
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 edx, ecx
mov dword [esi + 8], eax
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.00450a40
add esp, 0xc
test eax, eax
je case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4443e0
jmp 0x44450c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x440f81
cmp dword [esp + 0x84], 0
jne 0x44e308
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x44469d
jmp 0x444550
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x444673
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x44463b
cmp edx, 0xc0
jb 0x44463b
test dl, 0x20
jne 0x44459c
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x44463b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4445bb
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x444631
and eax, 0x3f
test dl, 8
jne 0x4445db
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x444631
test dl, 4
jne 0x444604
and edx, 3
mov ebx, 5
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x444631
and edx, ebx
mov ebx, 6
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov edx, ecx
mov edi, dword [esp + 0x8c]
push edi
push dword [esi + 0x28]
push edx
call fcn.00450a40
add esp, 0xc
test eax, eax
je 0x44469d
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x444550
jmp 0x44469d
cmp dword [ebp + 0x88], 0
je 0x444696
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x444696
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x441ee6
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x440f81
jmp 0x44bf51
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x444889
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x444810
test al, 0x20
jne 0x444710
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x444810
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x44474a
mov eax, dword [esi + 0x80]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x444810
test al, 8
jne 0x444786
mov eax, dword [esi + 0x80]
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x444810
test al, 4
mov eax, dword [esi + 0x80]
jne 0x4447cb
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x444810
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
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 0x444849
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
cmp edx, edi
jb case.0x447f06.14
cmp edx, dword [ebp + 0x84]
jbe case.0x447f06.14
jmp 0x441ed2
test ecx, ecx
jle 0x44487e
lea ecx, [ecx]
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.0x447f06.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x444850
dec dword [esi + 0x88]
jmp 0x440f7a
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x4448d6
cmp dword [ebp + 0x88], ebx
je 0x44173d
cmp edi, dword [ebp + 0x84]
jbe 0x44173d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44173d
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7e0
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 0x444beb
jmp 0x441d7b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x442590
cmp dword [esp + 0x8c], ebx
je 0x444bcc
mov dword [esi + 0x88], 1
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
cmp eax, 0xc0
jb 0x444a5b
test al, 0x20
jne 0x44495b
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
mov eax, dword [esi + 0x80]
and ecx, 0x3f
and eax, 0x1f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0x88]
jmp 0x444a5b
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x444995
mov eax, dword [esi + 0x80]
and eax, 0xf
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 2
jmp 0x444a5b
test al, 8
jne 0x4449d1
mov eax, dword [esi + 0x80]
and eax, 7
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 3
jmp 0x444a5b
test al, 4
mov eax, dword [esi + 0x80]
jne 0x444a16
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0x88], 4
jmp 0x444a5b
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
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 [esi + 0x80]
mov eax, dword [esi + 8]
cmp edi, 0x80
jae 0x444a89
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x441d7b
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x440f7a
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x444b6b
test bl, 0x20
jne 0x444ab9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x444b68
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x444ae0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x444b66
test bl, 8
jne 0x444b03
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x444b66
test bl, 4
jne 0x444b32
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x444b66
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 ebx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x88]
add dword [esi + 0xc], eax
mov edi, dword [esi + 0x80]
cmp edi, ebx
je 0x440f7a
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x444ba5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
mov eax, dword [eax*8 + 0x5500dc]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x440f81
jmp 0x441d7b
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 0x441d7b
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x440f7a
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 0x444d1d
mov dword [esp + 0x80], 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 0x444c54
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x444c5f
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x444d1d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x444d24
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x444d24
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x444d24
mov ecx, dword [esi + 0xc]
cmp edx, 0x2e
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x2e
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov eax, edx
and eax, 1
mov dword [esp + 0x84], eax
movsx eax, byte [edx + 0x54f428]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x54f434]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x444d1d
mov dword [esi + 0x8c], 0x7fffffff
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x445198
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 0x444e6b
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x444d81
movzx eax, byte [eax + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or eax, ebx
mov dword [esi + 0x80], eax
inc dword [esi + 0x88]
jmp 0x444e6b
test bl, 0x10
jne 0x444db6
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 0xc]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0x88], 2
jmp 0x444e6b
mov ecx, dword [esi + 0xc]
movzx edx, byte [eax + 1]
and edx, 0x3f
movzx eax, byte [ecx + 2]
and eax, 0x3f
test bl, 8
jne 0x444df4
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 0x444e6b
test bl, 4
jne 0x444e2d
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 0x444e6b
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 0x4451a7
cmp dword [esi + 0x9c], 0x2e
jb 0x444edc
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x444eb3
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
mov ecx, dword [eax*8 + 0x5500dc]
add ecx, edi
cmp ecx, edi
je 0x444edc
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.004509e0
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x444ee3
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x445016
jmp 0x444f00
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x90], ecx
cmp edi, eax
ja 0x444f84
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x444f38
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x444f41
add ecx, 4
add edx, 4
sub edi, 4
jae 0x444f27
cmp edi, 0xfffffffc
je 0x444ff8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x444f7a
cmp edi, 0xfffffffd
je 0x444ff8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x444f7a
cmp edi, 0xfffffffe
je 0x444ff8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x444f7a
cmp edi, 0xffffffff
je 0x444ff8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x444ff8
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x443c8c
sub ecx, ebx
cmp edi, ecx
ja 0x443c8c
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x444fb6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x444fbb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x444fa5
cmp edi, 0xfffffffc
je 0x444ff8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x443c8c
cmp edi, 0xfffffffd
je 0x444ff8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x443c8c
cmp edi, 0xfffffffe
je 0x444ff8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x443c8c
cmp edi, 0xffffffff
je 0x444ff8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x443c8c
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x444f00
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x440f81
cmp dword [esp + 0x84], 0
jne 0x44e319
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x445185
lea esp, [esp]
mov ecx, dword [ebp + 0x78]
mov eax, ecx
mov ebx, dword [esi + 0x88]
sub eax, ebx
mov edi, dword [esi + 8]
mov dword [esp + 0x84], ecx
cmp edi, eax
ja 0x4450dc
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x445098
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4450a1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x445087
cmp edi, 0xfffffffc
je 0x445138
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4450d2
cmp edi, 0xfffffffd
je 0x445138
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4450d2
cmp edi, 0xfffffffe
je 0x445138
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4450d2
cmp edi, 0xffffffff
je 0x445138
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x445138
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x445158
sub ecx, ebx
cmp edi, ecx
ja 0x445158
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x445106
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x44510b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4450f5
cmp edi, 0xfffffffc
je 0x445138
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x445158
cmp edi, 0xfffffffd
je 0x445138
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x445158
cmp edi, 0xfffffffe
je 0x445138
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x445158
cmp edi, 0xffffffff
je 0x445138
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x445158
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x445060
jmp 0x445185
cmp dword [ebp + 0x88], 0
je 0x445185
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x445185
cmp eax, dword [ebp + 0x84]
jbe 0x445185
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44c2fc
jmp 0x440f7a
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x44529f
mov ecx, dword [ebp + 0x3c]
mov edx, 1
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
cmp dword [esi + 0x90], edx
jl 0x445204
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443ff7
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4451f7
cmp dword [esi + 0x94], ecx
jne case.0x447f06.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x4451d4
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x440f7a
cmp dword [esp + 0x84], 0
je 0x44522b
mov dword [esi + 0x84], eax
jmp 0x44b25b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x445292
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44526a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x44525b
cmp dword [esi + 0x94], ecx
jne 0x445292
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x445240
jmp 0x445292
cmp dword [ebp + 0x88], 0
je 0x445292
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x445292
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
test edi, edi
je 0x44b29b
jmp 0x440f7a
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x4452da
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4452b0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x440f81
cmp dword [esp + 0x84], 0
je 0x445308
mov dword [esi + 0x84], eax
jmp 0x44b328
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x44536c
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x445344
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x44536c
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x445320
jmp 0x44536c
cmp dword [ebp + 0x88], 0
je 0x44536c
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x44536c
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44b368
jmp 0x440f81
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x4453a4
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x447f06.14
jmp 0x441ed2
test edi, edi
je 0x44561c
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 0xc], edx
cmp ebx, 0xc0
jb 0x4454a5
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x4453e2
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4454a2
test bl, 0x10
jne 0x445403
and ebx, 0xf
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4454a2
test bl, 8
jne 0x44542e
and ebx, 7
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
shl ebx, 6
and eax, 0x3f
or ebx, eax
movzx eax, byte [edx + 2]
shl ebx, 6
and eax, 0x3f
or ebx, eax
add dword [esi + 0xc], 3
jmp 0x4454a5
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x445467
and ebx, 3
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 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 0x4454a2
and ebx, 1
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 1]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 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 edi, [eax + 1]
mov dword [esp + 0x80], edx
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x445598
test dl, 0x20
jne 0x4454df
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44558e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x445506
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x44558c
test dl, 8
jne 0x445529
and edx, 7
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
lea eax, [edi + 3]
jmp 0x44558c
test dl, 4
jne 0x445558
and edx, 3
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
lea eax, [edi + 4]
jmp 0x44558c
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 edx, ecx
mov dword [esp + 0x80], edx
mov dword [esi + 8], eax
cmp dword [esi + 0x9c], 0x1f
jne 0x4455b5
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x440f81
jmp 0x441d7b
cmp ebx, 0x7f
jbe 0x4455f2
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x4455dd
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
mov ecx, dword [eax*8 + 0x5500dc]
add ecx, ebx
jmp 0x4455f9
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x441d7b
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x440f81
jmp 0x441d7b
mov eax, dword [esi + 0xc]
movzx edi, byte [ecx]
movzx edx, byte [eax + 1]
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp edx, edi
je case.0x447f06.14
cmp dword [esi + 0x9c], 0x20
jne 0x444beb
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x447f06.14
add dword [esi + 0xc], 2
jmp 0x440f7a
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 0x4457b6
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 0x4456bb
cmp al, 0x4f
je 0x4456bb
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x4457b6
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x4457b6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x4457b6
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x4457b6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x4457b6
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 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 0x4457b6
mov ecx, dword [esi + 0xc]
cmp edx, 0x48
sbb eax, eax
and eax, 0xfffffff3
movzx edx, byte [ecx]
add eax, 0x48
sub edx, eax
lea eax, [ecx + 1]
mov dword [esi + 0xc], eax
mov ebx, edx
and ebx, 1
mov dword [esp + 0x84], ebx
movsx eax, byte [edx + 0x54f428]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x54f434]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4457b6
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x8c]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
mov edi, dword [esi + 0xc]
test edx, edx
je 0x445911
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x445911
test al, 0x20
jne 0x445808
movzx ecx, byte [edi]
and eax, 0x1f
and ecx, 0x3f
shl eax, 6
or ecx, eax
mov dword [esi + 0x80], ecx
inc dword [esi + 0xc]
jmp 0x445911
test al, 0x10
jne 0x44583b
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 0xf
and ecx, 0x3f
shl eax, 6
or ecx, eax
movzx eax, byte [edi + 1]
shl ecx, 6
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 2
jmp 0x445911
test al, 8
jne 0x44587d
mov eax, dword [esi + 0x80]
movzx ecx, byte [edi]
and eax, 7
shl eax, 6
and ecx, 0x3f
or ecx, eax
movzx eax, byte [edi + 1]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, dword [esi + 0xc]
shl ecx, 6
movzx eax, byte [eax + 2]
and eax, 0x3f
or ecx, eax
mov dword [esi + 0x80], ecx
add dword [esi + 0xc], 3
jmp 0x445911
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x4458c8
and eax, 3
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 4
jmp 0x44590a
and eax, 1
shl eax, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 2]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 3]
shl edx, 6
and eax, 0x3f
or edx, eax
movzx eax, byte [ecx + 4]
shl edx, 6
and eax, 0x3f
or edx, eax
mov dword [esi + 0x80], edx
add dword [esi + 0xc], 5
mov edx, dword [esp + 0x8c]
cmp dword [esi + 0x9c], 0x48
jb 0x445d35
test edx, edx
je 0x44596c
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x44596c
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x445950
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
mov eax, dword [eax*8 + 0x5500dc]
add eax, edi
jmp 0x445979
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x445ac0
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x445b0b
jmp 0x4459a0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x445a99
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x4459da
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x445a96
test cl, 0x10
jne 0x4459fb
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 0x445a96
test cl, 8
jne 0x445a25
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 0x445a96
test cl, 4
jne 0x445a5b
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 0x445a96
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
cmp dword [esi + 0x80], ecx
je case.0x447f06.14
cmp dword [esi + 0x94], ecx
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4459a0
jmp 0x445b04
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x445b04
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443ff7
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x447f06.14
cmp dword [esi + 0x94], ecx
je case.0x447f06.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x445ad0
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x440f7a
test ebx, ebx
je 0x445b34
test edx, edx
jne 0x44e32a
mov dword [esi + 0x84], eax
jmp 0x44b3ff
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x445cbd
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x445caa
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x445c82
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x445c5e
test dl, 0x20
jne 0x445b92
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x445c5e
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x445bbc
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x445c5c
test dl, 8
jne 0x445be8
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x445c5c
test dl, 4
jne 0x445c20
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
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 eax, 5
jmp 0x445c5c
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x445caa
cmp dword [esi + 0x94], edx
je 0x445caa
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x445b54
jmp 0x445caa
cmp dword [ebp + 0x88], 0
je 0x445caa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x445caa
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44c4dc
jmp 0x440f7a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x445d22
jmp 0x445cd0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x445cfa
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x445d22
cmp dword [esi + 0x94], ecx
je 0x445d22
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x445cd0
jmp 0x445d22
cmp dword [ebp + 0x88], 0
je 0x445d22
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x445d22
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44b43f
jmp 0x440f7a
test edx, edx
je 0x445e57
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x445e95
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x445e3c
test dl, 0x20
jne 0x445d8a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x445e39
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x445db1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x445e37
test dl, 8
jne 0x445dd4
and edx, 7
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
lea eax, [edi + 3]
jmp 0x445e37
test dl, 4
jne 0x445e03
and edx, 3
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
lea eax, [edi + 4]
jmp 0x445e37
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 edx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], edx
je case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x445d50
jmp 0x445e8e
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x445e95
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x445e64
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x440f7a
cmp dword [esp + 0x84], 0
je 0x445ec4
test edx, edx
jne 0x44e33f
mov dword [esi + 0x84], eax
jmp 0x44b4cc
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x446048
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x446035
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x44600d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x445ff1
test dl, 0x20
jne 0x445f22
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x445ff1
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x445f4c
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x445fef
test dl, 8
jne 0x445f7b
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x445fef
test dl, 4
jne 0x445fb3
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
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 eax, 5
jmp 0x445fef
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp dword [esi + 0x80], edx
je 0x446035
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x445ee4
jmp 0x446035
cmp dword [ebp + 0x88], 0
je 0x446035
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x446035
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44c6a0
jmp 0x440f7a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4460a2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44607a
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x4460a2
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x446056
jmp 0x4460a2
cmp dword [ebp + 0x88], 0
je 0x4460a2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4460a2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44b50c
jmp 0x440f7a
mov eax, dword [esi + 0xc]
mov dword [esp + 0x84], 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 0x4461f4
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 + 0x84], edx
mov dword [esi + 0xc], eax
jmp 0x4461f4
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x4461f4
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x4461f4
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x4461f4
mov dword [esi + 0x90], ebx
mov eax, dword [esi + 0xc]
mov dword [esp + 0x80], 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 0x4461f4
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x54f3d3]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x54f3df]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4461f4
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 0x446216
cmp ecx, 0xf
je 0x446216
mov dword [esi + 0x60], 0xffffffff
jmp 0x446239
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
inc dword [esi + 0xc]
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x64], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x90]
test ecx, ecx
jle 0x4481db
mov eax, dword [esi + 0x60]
test eax, eax
js 0x446fe8
cmp eax, 0xa
ja case.default.0x4434fa
jmp dword [eax*4 + 0x44ef54]
cmp dword [esi + 0x68], ebx
jne 0x441d7b
mov edx, 1
cmp ecx, edx
jl 0x4481db
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x4462bf
cmp ecx, 0xc0
jb 0x4462bf
test cl, 0x20
jne 0x44629b
inc eax
jmp 0x4462bc
test cl, 0x10
jne 0x4462a5
add eax, 2
jmp 0x4462bc
test cl, 8
jne 0x4462af
add eax, 3
jmp 0x4462bc
test cl, 4
jne 0x4462b9
add eax, 4
jmp 0x4462bc
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x446278
jmp 0x4481db
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
mov eax, dword [esi + 8]
jmp 0x442525
mov edi, 1
cmp ecx, edi
jl 0x4481db
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4463ea
cmp ebx, 0xc0
jb 0x4463ea
test bl, 0x20
jne 0x446338
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4463e7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44635f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4463e5
test bl, 8
jne 0x446382
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x4463e5
test bl, 4
jne 0x4463b1
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x4463e5
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 ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44640c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp eax, 9
je 0x446431
cmp eax, 5
je 0x446431
cmp eax, 8
je 0x446431
xor eax, eax
jmp 0x446436
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4462f0
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481db
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x446558
cmp ebx, 0xc0
jb 0x446558
test bl, 0x20
jne 0x4464a8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x446555
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4464cf
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x446555
test bl, 8
jne 0x4464f2
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]
jmp 0x446555
test bl, 4
jne 0x446521
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]
jmp 0x446555
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44657a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x446460
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481db
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4466bb
cmp ebx, 0xc0
jb 0x4466bb
test bl, 0x20
jne 0x44660b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4466b8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x446632
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4466b8
test bl, 8
jne 0x446655
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]
jmp 0x4466b8
test bl, 4
jne 0x446684
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]
jmp 0x4466b8
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x4466dd
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4465c3
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481db
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x446818
cmp ebx, 0xc0
jb 0x446818
test bl, 0x20
jne 0x446768
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x446815
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44678f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x446815
test bl, 8
jne 0x4467b2
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]
jmp 0x446815
test bl, 4
jne 0x4467e1
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]
jmp 0x446815
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44683a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x446720
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481db
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x44697a
cmp ebx, 0xc0
jb 0x44697a
test bl, 0x20
jne 0x4468c8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x446977
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4468ef
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x446975
test bl, 8
jne 0x446912
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x446975
test bl, 4
jne 0x446941
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x446975
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 ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44699c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x4469c3
cmp eax, 3
je 0x4469c3
xor eax, eax
jmp 0x4469c8
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x446880
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481db
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x446aea
cmp ebx, 0xc0
jb 0x446aea
test bl, 0x20
jne 0x446a38
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x446ae7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x446a5f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x446ae5
test bl, 8
jne 0x446a82
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x446ae5
test bl, 4
jne 0x446ab1
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x446ae5
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 ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x446b2d
je case.0x446b49.8192
cmp ebx, 0x85
ja 0x446b19
je case.0x446b49.8192
cmp ebx, 9
jb case.0x446b49.8203
cmp ebx, 0xd
jbe case.0x446b49.8192
cmp ebx, 0x20
jmp 0x446b5e
cmp ebx, 0xa0
je case.0x446b49.8192
cmp ebx, 0x1680
jmp 0x446b5e
cmp ebx, 0x202f
ja 0x446b50
je case.0x446b49.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x446b49.8203
movzx eax, byte [eax + 0x44ef88]
jmp dword [eax*4 + 0x44ef80]
cmp ebx, 0x205f
je case.0x446b49.8192
cmp ebx, 0x3000
je case.0x446b49.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x446b82
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp dword [eax*4 + 0x54fee8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x447f06.14
jmp 0x446bb6
cmp dword [esi + 0x68], 0
jne case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4469f0
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481db
jmp 0x446be0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x446cd8
cmp ebx, 0xc0
jb 0x446cd8
test bl, 0x20
jne 0x446c28
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x446cd5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x446c4f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x446cd5
test bl, 8
jne 0x446c72
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]
jmp 0x446cd5
test bl, 4
jne 0x446ca1
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]
jmp 0x446cd5
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x446cfb
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x446d27
cmp eax, 3
je 0x446d27
cmp ebx, 0x5f
je 0x446d27
xor eax, eax
jmp 0x446d2c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x447f06.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x446be0
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481db
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x446e4c
cmp edx, 0xc0
jb 0x446e4c
test dl, 0x20
jne 0x446d9c
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x446e49
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x446dc3
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x446e49
test dl, 8
jne 0x446de6
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 0x446e49
test dl, 4
jne 0x446e15
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 0x446e49
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, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x54ff98]
lea eax, [eax*4 + 0x54ff98]
cmp edx, ecx
jb 0x446e6e
lea eax, [eax + 4]
cmp edx, ecx
je 0x446e8a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x446e61
cmp dword [esi + 0x68], 0
je case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x446d54
jmp 0x4481db
cmp dword [esi + 0x68], 0
jne case.0x447f06.14
jmp 0x446e78
mov ebx, 1
cmp ecx, ebx
jl 0x4481db
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x446f9d
cmp edx, 0xc0
jb 0x446f9d
test dl, 0x20
jne 0x446eeb
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x446f9a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x446f12
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x446f98
test dl, 8
jne 0x446f35
and edx, 7
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
lea eax, [edi + 3]
jmp 0x446f98
test dl, 4
jne 0x446f64
and edx, 3
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
lea eax, [edi + 4]
jmp 0x446f98
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x24
je 0x446fc8
cmp edx, 0x40
je 0x446fc8
cmp edx, 0x60
je 0x446fc8
cmp edx, 0xa0
jb 0x446fbc
cmp edx, 0xd7ff
jbe 0x446fc8
cmp edx, 0xe000
jae 0x446fc8
xor eax, eax
jmp 0x446fcd
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x446ea3
jmp 0x4481db
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x447313
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x4481db
jmp 0x447010
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x443ff7
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x447110
cmp ebx, 0xc0
jb 0x447110
test bl, 0x20
jne 0x447059
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x44710d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x447080
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x447106
test bl, 8
jne 0x4470a3
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]
jmp 0x447106
test bl, 4
jne 0x4470d2
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]
jmp 0x447106
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x447132
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500da]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4472cd
jmp 0x447160
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x44725e
cmp ebx, 0xc0
jb 0x44725e
test bl, 0x20
jne 0x447195
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x447256
test bl, 0x10
jne 0x4471ba
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x447256
test bl, 8
jne 0x4471e8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x447256
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x447222
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x447256
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x447280
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx ecx, byte [eax*8 + 0x5500da]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x54ff60], eax
je 0x4472c6
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x90], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x447160
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x4472fa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4472fa
cmp eax, dword [ebp + 0x84]
jbe 0x4472fa
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x447010
jmp 0x4481db
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x447ddf
cmp eax, 0xf
ja case.0x44a327.9
jmp dword [eax*4 + 0x44efb4]
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x443ff7
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x447377
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne case.0x447f06.14
jmp 0x44739b
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x44739b
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44739b
cmp edx, 1
je case.0x447f06.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x447f06.14
cmp dword [ebp + 0x88], 0
je 0x4473d6
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4473d6
cmp dword [ebp + 0x18], 0
jne 0x4473d6
cmp dword [edi], 2
jne 0x4473d6
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4473d6
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4473f2
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4473f2
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x4473e1
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447342
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x4462cd
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x447448
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x447448
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x447430
inc edi
cmp edi, dword [esi + 0x90]
jle 0x447414
jmp 0x4481db
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x441d7b
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x44756c
test dl, 0x20
jne 0x4474ba
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x447569
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4474e1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x447567
test dl, 8
jne 0x447504
and edx, 7
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
lea eax, [edi + 3]
jmp 0x447567
test dl, 4
jne 0x447533
and edx, 3
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
lea eax, [edi + 4]
jmp 0x447567
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0xd
ja 0x447590
je 0x44757d
cmp edx, 0xa
je 0x4475b1
lea eax, [edx - 0xb]
jmp 0x44759e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4475b1
cmp byte [eax], 0xa
jne 0x4475b1
inc eax
mov dword [esi + 8], eax
jmp 0x4475b1
cmp edx, 0x85
je 0x4475a7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x447f06.14
cmp dword [ebp + 0x68], 0
jne case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447480
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4476bc
test dl, 0x20
jne 0x44760a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4476b9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x447631
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4476b7
test dl, 8
jne 0x447654
and edx, 7
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
lea eax, [edi + 3]
jmp 0x4476b7
test dl, 4
jne 0x447683
and edx, 3
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
lea eax, [edi + 4]
jmp 0x4476b7
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x4476ee
je case.0x447f06.14
cmp edx, 0xa0
ja 0x4476e6
je case.0x447f06.14
cmp edx, 9
je case.0x447f06.14
cmp edx, 0x20
jmp 0x44771e
cmp edx, 0x1680
jmp 0x44771e
cmp edx, 0x205f
ja 0x447718
je case.0x447f06.14
cmp edx, 0x2000
jb 0x447724
cmp edx, 0x200a
jbe case.0x447f06.14
cmp edx, 0x202f
jmp 0x44771e
cmp edx, 0x3000
je case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4475d0
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x44782f
test dl, 0x20
jne 0x44777d
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44782c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4477a4
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x44782a
test dl, 8
jne 0x4477c7
and edx, 7
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
lea eax, [edi + 3]
jmp 0x44782a
test dl, 4
jne 0x4477f6
and edx, 3
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
lea eax, [edi + 4]
jmp 0x44782a
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x180e
ja 0x447855
je 0x447887
cmp edx, 0xa0
ja 0x44784d
je 0x447887
cmp edx, 9
je 0x447887
cmp edx, 0x20
jmp 0x447881
cmp edx, 0x1680
jmp 0x447881
cmp edx, 0x205f
ja 0x44787b
je 0x447887
cmp edx, 0x2000
jb case.0x447f06.14
cmp edx, 0x200a
jbe 0x447887
cmp edx, 0x202f
jmp 0x447881
cmp edx, 0x3000
jne case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447743
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
jmp 0x4478b0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x44799c
test dl, 0x20
jne 0x4478ea
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x447999
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x447911
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x447997
test dl, 8
jne 0x447934
and edx, 7
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
lea eax, [edi + 3]
jmp 0x447997
test dl, 4
jne 0x447963
and edx, 3
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
lea eax, [edi + 4]
jmp 0x447997
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x4479b4
je case.0x447f06.14
cmp edx, 0xa
jb 0x4479c8
cmp edx, 0xd
jmp 0x4479c2
cmp edx, 0x2028
jb 0x4479c8
cmp edx, 0x2029
jbe case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4478b0
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
jmp 0x4479f0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x447adc
test dl, 0x20
jne 0x447a2a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x447ad9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x447a51
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x447ad7
test dl, 8
jne 0x447a74
and edx, 7
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
lea eax, [edi + 3]
jmp 0x447ad7
test dl, 4
jne 0x447aa3
and edx, 3
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
lea eax, [edi + 4]
jmp 0x447ad7
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x85
ja 0x447aee
je 0x447afd
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x447af7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4479f0
jmp 0x4481db
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x443ff7
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x447c0c
test dl, 0x20
jne 0x447b5a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x447c09
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x447b81
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x447c07
test dl, 8
jne 0x447ba4
and edx, 7
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
lea eax, [edi + 3]
jmp 0x447c07
test dl, 4
jne 0x447bd3
and edx, 3
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
lea eax, [edi + 4]
jmp 0x447c07
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 edx, ecx
mov dword [esi + 8], eax
cmp edx, 0x80
jae 0x447c21
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x447f06.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447b20
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4462cd
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x447f06.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x447f06.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x447c40
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x4462cd
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x447cb3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x447f06.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x447cd8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x447cd8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x447cc0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x447c90
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4462cd
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x447f06.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x447f06.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x447cf3
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x4462cd
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x447d63
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x447f06.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x447d88
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x447d88
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x447d70
inc edi
cmp edi, dword [esi + 0x90]
jle 0x447d40
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4462cd
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x447f06.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x447f06.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x447da3
jmp 0x4481db
cmp eax, 0xf
ja case.0x44a327.9
jmp dword [eax*4 + 0x44eff4]
mov ebx, 1
cmp ecx, ebx
jl 0x4481e2
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x443ff7
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x447e30
push 0
push edi
push eax
push edx
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne case.0x447f06.14
jmp 0x447e54
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x447e54
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x447e54
cmp edx, 1
je case.0x447f06.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x447f06.14
cmp dword [ebp + 0x88], 0
je 0x447e8f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x447e8f
cmp dword [ebp + 0x18], 0
jne 0x447e8f
cmp dword [edi], 2
jne 0x447e8f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x447e8f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x447e00
jmp 0x4481db
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x447466
cmp dword [ebp + 0x88], ebx
je case.0x447f06.14
cmp edx, dword [ebp + 0x84]
jbe case.0x447f06.14
jmp 0x441ed2
mov edx, 1
cmp ecx, edx
jl 0x4481db
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4462cd
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x447f06.14
movzx eax, byte [eax + 0x44f044]
jmp dword [eax*4 + 0x44f034]
cmp ecx, dword [ebp + 0x78]
jae case.0x447f06.10
cmp byte [ecx], 0xa
jne case.0x447f06.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x447f06.10
cmp dword [ebp + 0x68], ebx
jne case.0x447f06.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x447ee0
jmp 0x4481db
mov edx, 1
cmp ecx, edx
jl 0x4481db
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x447f06.14
cmp ecx, 0x20
je case.0x447f06.14
cmp ecx, 0xa0
je case.0x447f06.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x447f43
jmp 0x4481db
mov edx, 1
cmp ecx, edx
jl 0x4481db
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x447fb9
cmp ecx, 0x20
je 0x447fb9
cmp ecx, 0xa0
jne case.0x447f06.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x447f90
jmp 0x4481db
mov edx, 1
cmp ecx, edx
jl 0x4481db
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x448001
cmp ecx, 0xd
jle case.0x447f06.14
cmp ecx, 0x85
je case.0x447f06.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x447fd4
jmp 0x4481db
mov edx, 1
cmp ecx, edx
jl 0x4481db
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x447f06.14
cmp ecx, 0xd
jle 0x44804d
cmp ecx, 0x85
jne case.0x447f06.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x448020
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
jmp 0x448070
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x447f06.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448070
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x447f06.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4480b0
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x447f06.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4480f0
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x447f06.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448130
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
jmp 0x448170
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x447f06.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x448170
jmp 0x4481db
mov edi, 1
cmp ecx, edi
jl 0x4481e2
jmp 0x4481b0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4462cd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x447f06.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4481b0
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x440f7a
cmp dword [esp + 0x84], 0
je 0x448242
mov eax, dword [esi + 0x60]
test eax, eax
js 0x448225
cmp eax, 0xa
ja case.0x44a327.9
jmp dword [eax*4 + 0x44f0c0]
mov esi, dword [esi]
test esi, esi
je case.default.0x44a7f4
mov edi, 0xfffffff2
jmp 0x44a7e0
cmp dword [esi + 0x7c], 0x16
je 0x44e413
test edx, edx
jne 0x44e3fe
mov dword [esi + 0x84], ecx
jmp 0x44b675
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x44927b
cmp eax, 0xa
ja case.0x44a327.9
jmp dword [eax*4 + 0x44f0ec]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x449268
mov ebx, dword [esp + 0x8c]
jmp 0x448280
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x4482eb
movzx ecx, byte [edx]
test ebx, ebx
je 0x4482ce
cmp ecx, 0xc0
jb 0x4482ce
test cl, 0x20
jne 0x4482a8
mov eax, 2
jmp 0x4482ce
test cl, 0x10
jne 0x4482b4
mov eax, 3
jmp 0x4482ce
test cl, 8
jne 0x4482c0
mov eax, 4
jmp 0x4482ce
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x449268
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x448280
jmp 0x449268
cmp dword [ebp + 0x88], 0
je 0x449268
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x449268
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x449268
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x44a7e0
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4484ae
movzx ebx, byte [edi]
test edx, edx
je 0x44842c
cmp ebx, 0xc0
jb 0x44842c
test bl, 0x20
jne 0x44838e
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x448424
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4483ad
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x448424
and eax, 0x3f
test bl, 8
jne 0x4483cd
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x448424
test bl, 4
jne 0x4483f6
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x448424
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
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, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44844e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp eax, 9
je 0x448473
cmp eax, 5
je 0x448473
cmp eax, 8
je 0x448473
xor eax, eax
jmp 0x448478
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x449268
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x448350
jmp 0x449268
cmp dword [ebp + 0x88], 0
je 0x449268
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x449268
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x449268
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7e0
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
jmp 0x448510
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x448692
movzx ebx, byte [edi]
test edx, edx
je 0x448613
cmp ebx, 0xc0
jb 0x448613
test bl, 0x20
jne 0x44855a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x44860b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x448582
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x44860b
and eax, 0x3f
test bl, 8
jne 0x4485a8
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x44860b
test bl, 4
jne 0x4485d7
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x44860b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x448635
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x449268
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x448510
jmp 0x449268
cmp dword [ebp + 0x88], 0
je 0x449268
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x449268
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x4484d3
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x448692
movzx ebx, byte [edi]
test edx, edx
je 0x4487df
cmp ebx, 0xc0
jb 0x4487df
test bl, 0x20
jne 0x448726
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4487d7
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x44874e
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4487d7
and eax, 0x3f
test bl, 8
jne 0x448774
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x4487d7
test bl, 4
jne 0x4487a3
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x4487d7
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x448801
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x449268
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x4486e0
jmp 0x449268
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x448692
movzx ebx, byte [edi]
test edx, edx
je 0x448973
cmp ebx, 0xc0
jb 0x448973
test bl, 0x20
jne 0x4488ba
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x44896b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4488e2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x44896b
and eax, 0x3f
test bl, 8
jne 0x448908
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x44896b
test bl, 4
jne 0x448937
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x44896b
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x448995
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x449268
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x448870
jmp 0x449268
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4484ae
movzx ebx, byte [edi]
test edx, edx
je 0x448ae3
cmp ebx, 0xc0
jb 0x448ae3
test bl, 0x20
jne 0x448a42
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x448adb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x448a64
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x448adb
and eax, 0x3f
test bl, 8
jne 0x448a84
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x448adb
test bl, 4
jne 0x448aad
and ebx, 3
shl ebx, 6
or ebx, ecx
mov ecx, 5
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x448adb
and ebx, 1
shl ebx, 6
or ebx, ecx
mov ecx, 6
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, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x448b05
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x448b2c
cmp eax, 3
je 0x448b2c
xor eax, eax
jmp 0x448b31
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x449268
mov edx, dword [esp + 0x8c]
lea eax, [ecx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x448a04
jmp 0x449268
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x448692
movzx ebx, byte [edi]
test edx, edx
je 0x448c8d
cmp ebx, 0xc0
jb 0x448c8d
test bl, 0x20
jne 0x448bd2
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x448c8d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x448bfa
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x448c83
and eax, 0x3f
test bl, 8
jne 0x448c20
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x448c83
test bl, 4
jne 0x448c4f
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
jmp 0x448c83
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov ebx, ecx
cmp ebx, 0x180e
ja 0x448cd0
je case.0x448cf0.8192
cmp ebx, 0x85
ja 0x448cbc
je case.0x448cf0.8192
cmp ebx, 9
jb case.0x448cf0.8203
cmp ebx, 0xd
jbe case.0x448cf0.8192
cmp ebx, 0x20
jmp 0x448d05
cmp ebx, 0xa0
je case.0x448cf0.8192
cmp ebx, 0x1680
jmp 0x448d05
cmp ebx, 0x202f
ja 0x448cf7
je case.0x448cf0.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x448cf0.8203
movzx eax, byte [eax + 0x44f120]
jmp dword [eax*4 + 0x44f118]
cmp ebx, 0x205f
je case.0x448cf0.8192
cmp ebx, 0x3000
je case.0x448cf0.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x448d29
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp dword [eax*4 + 0x54fee8], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x449268
mov edx, dword [esp + 0x8c]
jmp 0x448d64
cmp dword [esi + 0x68], 0
jne 0x449268
mov eax, dword [esp + 0x84]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x448b80
jmp 0x449268
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x448692
movzx ebx, byte [edi]
test edx, edx
je 0x448eb3
cmp ebx, 0xc0
jb 0x448eb3
test bl, 0x20
jne 0x448dfa
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x448eab
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x448e22
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x448eab
and eax, 0x3f
test bl, 8
jne 0x448e48
and ebx, 7
mov dword [esp + 0x84], 4
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x448eab
test bl, 4
jne 0x448e77
and ebx, 3
mov dword [esp + 0x84], 5
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x448eab
and ebx, 1
mov dword [esp + 0x84], 6
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x448ed6
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x448f02
cmp eax, 3
je 0x448f02
cmp ebx, 0x5f
je 0x448f02
xor eax, eax
jmp 0x448f07
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x449268
mov eax, dword [esp + 0x84]
mov edx, dword [esp + 0x8c]
add eax, edi
mov dword [esi + 8], eax
mov eax, dword [esp + 0x90]
inc eax
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jl 0x448db0
jmp 0x449268
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x449268
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x44909f
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x449041
cmp edx, 0xc0
jb 0x449041
test dl, 0x20
jne 0x448fa4
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x449039
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x448fc3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x449039
and eax, 0x3f
test dl, 8
jne 0x448fe3
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449039
test dl, 4
jne 0x44900c
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 0x449039
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
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x54ff98]
lea eax, [eax*4 + 0x54ff98]
cmp edx, ecx
jb 0x449063
lea eax, [eax + 4]
cmp edx, ecx
je 0x449093
mov ecx, dword [eax]
cmp edx, ecx
jae 0x449056
cmp dword [esi + 0x68], 0
je 0x449268
lea eax, [ebx + edi]
mov dword [esi + 8], eax
mov eax, dword [esp + 0x84]
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x448f60
jmp 0x449268
cmp dword [esi + 0x68], 0
jne 0x449268
jmp 0x44906d
cmp dword [ebp + 0x88], 0
je 0x449268
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x449268
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x449268
jmp 0x441ee6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x449268
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x449240
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x4491f7
cmp edx, 0xc0
jb 0x4491f7
test dl, 0x20
jne 0x44912d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4491f7
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x449157
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or edx, ecx
shl edx, 6
or edx, eax
mov eax, 3
jmp 0x4491f7
test dl, 8
jne 0x449183
movzx eax, byte [edi + 2]
and edx, 7
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
mov eax, 4
jmp 0x4491f7
test dl, 4
jne 0x4491bb
movzx eax, byte [edi + 2]
and edx, 3
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
mov eax, 5
jmp 0x4491f7
and edx, eax
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]
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 6
cmp edx, 0x24
je 0x449222
cmp edx, 0x40
je 0x449222
cmp edx, 0x60
je 0x449222
cmp edx, 0xa0
jb 0x449216
cmp edx, 0xd7ff
jbe 0x449222
cmp edx, 0xe000
jae 0x449222
xor ecx, ecx
jmp 0x449227
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x449268
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4490e1
jmp 0x449268
cmp dword [ebp + 0x88], 0
je 0x449268
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x449268
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
je 0x44d71c
jmp 0x440f7a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x449617
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x4495c8
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4495a0
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x4493a0
cmp ebx, 0xc0
jb 0x4493a0
test bl, 0x20
jne 0x4492e9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x44939d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x449310
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x449396
test bl, 8
jne 0x449333
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]
jmp 0x449396
test bl, 4
jne 0x449362
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]
jmp 0x449396
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x4493c2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500da]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44955d
jmp 0x4493f0
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4494ee
cmp ebx, 0xc0
jb 0x4494ee
test bl, 0x20
jne 0x449425
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4494e6
test bl, 0x10
jne 0x44944a
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x4494e6
test bl, 8
jne 0x449478
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x4494e6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4494b2
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x4494e6
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x449510
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx ecx, byte [eax*8 + 0x5500da]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x54ff60], eax
je 0x449556
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x8c]
cmp eax, dword [ebp + 0x78]
jb 0x4493f0
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x44958a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44958a
cmp eax, dword [ebp + 0x84]
jbe 0x44958a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x4492a0
jmp 0x4495c8
cmp dword [ebp + 0x88], 0
je 0x4495c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4495c8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
cmp dword [esp + 0x80], 0
jne 0x440f7a
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eb45
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb3b
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
add eax, 0xfffffffa
test edx, edx
je 0x44a31e
cmp eax, 0xf
ja case.0x44a327.9
jmp dword [eax*4 + 0x44f14c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x449706
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x449679
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x44a30b
jmp 0x44969d
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x44969d
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44969d
cmp edx, 1
je 0x44a30b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x44a30b
cmp dword [ebp + 0x88], 0
je 0x4496d8
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4496d8
cmp dword [ebp + 0x18], 0
jne 0x4496d8
cmp dword [edi], 2
jne 0x4496d8
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4496d8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4496f4
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4496f4
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x4496e3
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x449644
jmp 0x44a30b
cmp dword [ebp + 0x88], 0
je 0x44a30b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x44a30b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44a30b
jmp 0x441ee6
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x449798
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x44a30b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x449706
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x44978a
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44978a
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x449772
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x449760
jmp 0x44a30b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x44a30b
cmp eax, dword [ebp + 0x84]
jbe 0x44a30b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44a30b
jmp 0x4484d9
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 0x44981f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x44a30b
cmp edx, dword [ebp + 0x84]
jbe 0x44a30b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44a30b
jmp 0x441ee6
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x449706
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x44994a
test dl, 0x20
jne 0x44987e
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x44994a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4498a8
movzx eax, byte [edi + 2]
and edx, 0xf
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
mov eax, 3
jmp 0x449948
test dl, 8
jne 0x4498d4
movzx eax, byte [edi + 2]
and edx, 7
shl edx, 6
and eax, 0x3f
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 4
jmp 0x449948
test dl, 4
jne 0x44990c
movzx eax, byte [edi + 2]
and edx, 3
and eax, 0x3f
shl edx, 6
or ecx, edx
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 eax, 5
jmp 0x449948
and edx, eax
movzx eax, byte [edi + 2]
and eax, 0x3f
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 4]
and eax, 0x3f
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 5]
and eax, 0x3f
shl ecx, 6
or ecx, eax
mov eax, 6
mov edx, ecx
cmp edx, 0xd
jne 0x449966
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x44a30b
cmp byte [eax], 0xa
jne 0x4499a0
inc eax
jmp 0x44999d
cmp edx, 0xa
je 0x44999b
cmp dword [ebp + 0x68], 0
jne 0x44a30b
cmp edx, 0xb
je 0x44999b
cmp edx, 0xc
je 0x44999b
cmp edx, 0x85
je 0x44999b
cmp edx, 0x2028
je 0x44999b
cmp edx, 0x2029
jne 0x44a30b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x449840
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x449a98
test dl, 0x20
jne 0x4499fa
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x449a90
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x449a19
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x449a90
and eax, 0x3f
test dl, 8
jne 0x449a39
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449a90
test dl, 4
jne 0x449a62
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 0x449a90
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x180e
ja 0x449abe
je 0x449aec
cmp edx, 0xa0
ja 0x449ab6
je 0x449aec
cmp edx, 9
je 0x449aec
cmp edx, 0x20
jmp 0x449ae6
cmp edx, 0x1680
jmp 0x449ae6
cmp edx, 0x205f
ja 0x449ae0
je 0x449aec
cmp edx, 0x2000
jb 0x449ae8
cmp edx, 0x200a
jbe 0x449aec
cmp edx, 0x202f
jmp 0x449ae6
cmp edx, 0x3000
je 0x449aec
xor edx, edx
jmp 0x449af1
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4499c4
jmp 0x44a30b
cmp dword [ebp + 0x88], 0
je 0x44a30b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x44a30b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x44a30b
jmp 0x441ee6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x449c30
test dl, 0x20
jne 0x449b92
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x449c28
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x449bb1
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x449c28
and eax, 0x3f
test dl, 8
jne 0x449bd1
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449c28
test dl, 4
jne 0x449bfa
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 0x449c28
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x85
ja 0x449c6f
je 0x449c7a
cmp edx, 0xa
jb 0x449c44
cmp edx, 0xd
jbe 0x449c7a
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x449b60
jmp 0x44a30b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x449c44
mov edx, 1
jmp 0x449c46
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x449d67
test dl, 0x20
jne 0x449cc9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x449d5f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x449ce8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x449d5f
and eax, 0x3f
test dl, 8
jne 0x449d08
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449d5f
test dl, 4
jne 0x449d31
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 0x449d5f
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x449d7c
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x449c93
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
jmp 0x449db0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x449e84
test dl, 0x20
jne 0x449de6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x449e7c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x449e05
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x449e7c
and eax, 0x3f
test dl, 8
jne 0x449e25
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449e7c
test dl, 4
jne 0x449e4e
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 0x449e7c
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x44a30b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x449db0
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
jmp 0x449ed0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x449fa4
test dl, 0x20
jne 0x449f06
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x449f9c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x449f25
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x449f9c
and eax, 0x3f
test dl, 8
jne 0x449f45
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x449f9c
test dl, 4
jne 0x449f6e
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 0x449f9c
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x449fb9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x449ed0
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x44a0b7
test dl, 0x20
jne 0x44a019
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x44a0af
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x44a038
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x44a0af
and eax, 0x3f
test dl, 8
jne 0x44a058
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a0af
test dl, 4
jne 0x44a081
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 0x44a0af
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x44a30b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x449fe3
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x44a1d4
test dl, 0x20
jne 0x44a136
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x44a1cc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x44a155
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x44a1cc
and eax, 0x3f
test dl, 8
jne 0x44a175
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a1cc
test dl, 4
jne 0x44a19e
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 0x44a1cc
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x44a1e9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x44a100
jmp 0x44a30b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a30b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x449b1a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x44a2e7
test dl, 0x20
jne 0x44a249
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x44a2df
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x44a268
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x44a2df
and eax, 0x3f
test dl, 8
jne 0x44a288
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x44a2df
test dl, 4
jne 0x44a2b1
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 0x44a2df
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]
and eax, 0x3f
shl edx, 6
or edx, eax
cmp edx, 0x100
jae 0x44a30b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x44a30b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x44a213
cmp dword [esp + 0x80], 0
je 0x44cbd8
jmp 0x440f7a
cmp eax, 0xf
ja case.0x44a327.9
jmp dword [eax*4 + 0x44f18c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x44a7b7
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x44a3e4
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x44a370
push 0
push edi
push eax
push edx
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x44a7b7
jmp 0x44a394
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x44a394
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44a394
cmp edx, 1
je 0x44a7b7
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x44a7b7
cmp dword [ebp + 0x88], 0
je 0x44a3cf
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x44a3cf
cmp dword [ebp + 0x18], 0
jne 0x44a3cf
cmp dword [edi], 2
jne 0x44a3cf
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x44a3cf
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x44a340
jmp 0x44a7b7
cmp dword [ebp + 0x88], 0
je 0x44a7b7
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x44a7b7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44a7b7
jmp 0x441ee6
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 0x44a468
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x44a7b7
cmp edx, dword [ebp + 0x84]
jbe 0x44a7b7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44a7b7
jmp 0x441ee6
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x44a7b7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x44a7b7
jmp 0x44a490
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44a3e4
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x44a4bb
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x44a7b7
cmp byte [eax], 0xa
jne 0x44a4e5
inc eax
jmp 0x44a4e2
cmp eax, 0xa
je 0x44a4df
cmp dword [ebp + 0x68], 0
jne 0x44a7b7
cmp eax, 0xb
je 0x44a4df
cmp eax, 0xc
je 0x44a4df
cmp eax, 0x85
jne 0x44a7b7
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x44a490
jmp 0x44a7b7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x44a7b7
jmp 0x44a510
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44a3e4
mov al, byte [ecx]
cmp al, 9
je 0x44a7b7
cmp al, 0x20
je 0x44a7b7
cmp al, 0xa0
je 0x44a7b7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44a510
jmp 0x44a7b7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x44a7b7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44a3e4
mov al, byte [ecx]
cmp al, 9
je 0x44a57e
cmp al, 0x20
je 0x44a57e
cmp al, 0xa0
jne 0x44a7b7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44a560
jmp 0x44a7b7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x44a7b7
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44a3e4
mov al, byte [ecx]
cmp al, 0xa
jb 0x44a5c6
cmp al, 0xd
jbe 0x44a7b7
cmp al, 0x85
je 0x44a7b7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44a5a4
jmp 0x44a7b7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x44a7b7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x44a3e4
mov al, byte [ecx]
cmp al, 0xa
jb 0x44a7b7
cmp al, 0xd
jbe 0x44a612
cmp al, 0x85
jne 0x44a7b7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x44a5f0
jmp 0x44a7b7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x44a7b7
jmp 0x44a640
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44a3e4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x44a7b7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44a640
jmp 0x44a7b7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x44a7b7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44a3e4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x44a7b7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44a682
jmp 0x44a7b7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x44a7b7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44a3e4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x44a7b7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44a6c4
jmp 0x44a7b7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x44a7b7
jmp 0x44a710
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44a3e4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x44a7b7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44a710
jmp 0x44a7b7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x44a7b7
jmp 0x44a750
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44a3e4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x44a7b7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44a750
jmp 0x44a7b7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x44a7b7
jmp 0x44a790
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x44a3e4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x44a7b7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x44a790
cmp dword [esp + 0x80], 0
je 0x44b81a
jmp 0x440f7a
mov esi, dword [esi]
test esi, esi
je 0x44ec91
mov edi, 0xfffffffb
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x7c]
mov eax, dword [esi + 0x130]
dec eax
cmp eax, 0x42
ja case.default.0x44a7f4
jmp dword [eax*4 + 0x44f1cc]
cmp edi, 0xfffffc1b
je 0x44a8c6
cmp edi, 0xfffffc20
jne 0x44a843
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x44a7f4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44a83f
cmp byte [ecx], 0x77
jne case.0x44a7f4.49
xor edi, edi
jmp 0x44a84b
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x44a8c6
cmp dword [esi + 0x9c], 0x88
jb 0x44a891
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e61a
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e610
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
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 esi, dword [esi]
test esi, esi
je 0x44acbc
mov edx, dword [esp + 0x8c]
jmp 0x44a7e4
cmp edi, 0xfffffc20
jne 0x44a983
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x44a9d1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44a94e
cmp byte [ecx], 0x77
jne 0x44a9d1
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44a9e7
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e4
test edi, edi
je 0x44a94e
cmp edi, 0xfffffc1b
jne 0x44a9d1
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x44a9c3
cmp al, 0x77
jne 0x44a9b4
lea esp, [esp]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
add edx, ecx
cmp byte [edx], 0x77
je 0x44a9a0
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
sub edx, ecx
mov eax, dword [ebp + 0xb4]
sub eax, edx
neg eax
sbb eax, eax
and edi, eax
mov esi, dword [esi]
test esi, esi
je 0x44acbc
mov edx, dword [esp + 0x8c]
jmp 0x44a7e4
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x44aa39
cmp eax, 0x81
je 0x44aa39
cmp dword [ebp + 0x6c], 0
jne 0x44aa43
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 0x44aa43
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x54fdd0]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x440f00
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 0x44e63c
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e632
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
cmp edi, 1
jne 0x44ab03
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x44aaa0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x44aab3
inc eax
mov dword [esi + 0xc], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x44aae9
mov edx, eax
movzx ecx, byte [eax + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or eax, ecx
add eax, edx
mov edx, eax
mov dword [esi + 0xc], edx
cmp byte [eax], 0x77
je 0x44aad0
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x54fdd0]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x4413ae.145
test edi, edi
je 0x44ab13
cmp edi, 0xfffffc20
jne case.0x44a7f4.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x44ab29
movzx eax, byte [edx + 0x54fdd0]
jmp 0x44ab2c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x44ab49
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x440f81
cmp dword [esi + 0x9c], 0x8c
jne 0x440f00
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e65e
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e654
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
cmp edi, 1
je 0x44ac42
cmp edi, 0xfffffc19
je 0x44ac42
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x44abea
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x44a7f4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44abf2
cmp byte [ecx], 0x77
jmp 0x44abec
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x44ac48
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e677
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e66d
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x44ac61
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e4
cmp dword [esi + 0x58], 0
je 0x44e29e
mov esi, dword [esi]
test esi, esi
je 0x44ec36
mov edi, 1
jmp 0x44a7e4
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x44ad2d
je 0x44acc6
cmp edi, 0xfffffc19
je 0x44b563
cmp edi, 0xfffffc1b
jle case.0x44a7f4.49
cmp edi, 0xfffffc1f
jle 0x44acee
mov esi, dword [esi]
test esi, esi
jne 0x44a7e4
mov eax, edi
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x68
ret
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae 0x44acee
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44ad40
cmp byte [ecx], 0x77
je 0x44ad40
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 0x44acf1
cmp dword [esi + 0x58], 0
je 0x44af77
mov esi, dword [esi]
test esi, esi
je 0x44ec36
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x44a7e4
mov eax, edi
sub eax, 0
je 0x44ad40
dec eax
je 0x44b563
jmp case.0x44a7f4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
jne 0x44ad08
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e68d
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e683
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x4c]
lea ebx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x44e2cc
cmp edi, 0xfffffc19
je 0x44e2cc
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x44adf9
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x441d7b
push ecx
call dword [0x5a3d0c]
add esp, 4
jmp 0x441d7b
test edi, edi
je 0x44ae23
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x44ae14
push ecx
call dword [0x5a3d0c]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x44acbc
jmp 0x44a7d9
mov dword [ebp + 0xa4], ebx
mov edx, dword [esi + 0x20]
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
shl ecx, 8
or ecx, eax
lea eax, [ecx + edx]
mov dword [esi + 0x20], eax
cmp byte [eax], 0x77
jne 0x44ae89
cmp dword [esi + 0x58], 0
je 0x44ae54
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e6d3
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e6c9
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x44add9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x44aee3
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e721
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e717
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x44a7e4
cmp al, 0x88
jb 0x44e424
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e743
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e739
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x44ec43
mov edi, 0xfffffc1b
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
mov edx, dword [esi + 0x2c]
jmp 0x44af60
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 0x44af60
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x440f7a
test edi, edi
je 0x4427f4
jmp case.0x44a7f4.49
test edi, edi
je 0x44af2f
jmp case.0x44a7f4.49
cmp edi, 0xfffffc1b
jne 0x44afab
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x44afad
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x44bd9b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e765
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e75b
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b020
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0044f420
add esp, 0x14
test eax, eax
jns 0x44b087
cmp eax, 0xfffffffe
jne 0x44b049
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x44cb61
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44cb61
cmp eax, dword [ebp + 0x84]
jbe 0x44cb61
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x443d9e
jmp 0x44cb61
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e78a
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e780
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x447f06.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e7a3
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e799
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b147
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44cc46
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 0x44cb61
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e7bc
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e7b2
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x441d7b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e7d5
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e7cb
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b221
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44cc46
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x44b251
cmp dword [esi + 0x94], ecx
je 0x44b251
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e4
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e7ee
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e7e4
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
dec dword [esi + 8]
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e807
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e7fd
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b301
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44cc46
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x44cb61
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e820
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e816
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
dec dword [esi + 8]
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e839
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e82f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b3ce
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44cc46
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x44b563
cmp dword [esi + 0x94], ecx
je 0x44b563
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e852
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e848
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e86b
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e861
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b4a5
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44cc46
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x44cb61
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e881
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e877
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e897
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e88d
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44b574
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e4
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x44b5bb
cmp dword [ebp + 0x88], 0
je 0x44b5a3
cmp ecx, dword [ebp + 0x84]
jbe 0x44b5a3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x443d9e
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x44a7e4
cmp dword [esi + 0x7c], 0xc
jne 0x44b5e2
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x44b604
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x44b621
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.0x44b5fd.15
jmp dword [eax*4 + 0x44f2d8]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x44b5e2
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44b5e2
cmp edi, 1
je 0x44b621
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x44b5e2
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x44a7e4
cmp dword [ebp + 0x88], 0
je case.0x44b5fd.13
cmp edx, dword [ebp + 0x78]
jb case.0x44b5fd.13
cmp dword [ebp + 0x18], 0
jne case.0x44b5fd.13
cmp dword [ebp + 0x1c], 2
jne case.0x44b5fd.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x44b5fd.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x443d9e
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e8ad
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e8a3
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x44b6bd.14
movzx eax, byte [ecx + 0x44f328]
jmp dword [eax*4 + 0x44f318]
cmp edx, dword [ebp + 0x78]
jae case.0x44b5fd.13
cmp byte [edx], 0xa
jne case.0x44b5fd.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x44b5fd.13
cmp dword [ebp + 0x68], 0
je case.0x44b5fd.13
jmp case.0x44b6bd.14
cmp ecx, 9
je case.0x44b6bd.14
cmp ecx, 0x20
je case.0x44b6bd.14
cmp ecx, 0xa0
jmp 0x44b7ba
cmp ecx, 9
je case.0x44b5fd.13
cmp ecx, 0x20
je case.0x44b5fd.13
cmp ecx, 0xa0
je case.0x44b5fd.13
jmp case.0x44b6bd.14
cmp ecx, 0xa
jb case.0x44b5fd.13
cmp ecx, 0xd
jbe case.0x44b6bd.14
cmp ecx, 0x85
jmp 0x44b7ba
cmp ecx, 0xa
jb case.0x44b6bd.14
cmp ecx, 0xd
jbe case.0x44b5fd.13
cmp ecx, 0x85
je case.0x44b5fd.13
jmp case.0x44b6bd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x44b5fd.13
jmp case.0x44b6bd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x44b7ba
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x44b5fd.13
jmp case.0x44b6bd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x44b7ba
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x44b5fd.13
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x44a7e4
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x44b5fd.13
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x44a7e4
mov esi, dword [esi]
test esi, esi
je case.default.0x44a7f4
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x44b81a
cmp eax, dword [esi + 0x30]
jbe 0x44b81a
cmp byte [eax], 0xa
jne 0x44b81a
cmp byte [eax - 1], 0xd
jne 0x44b81a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e8c3
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e8b9
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
cmp edi, 0xfffffc1a
jne 0x44b8b1
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 0x44b8a9
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 0x44b890
jmp 0x44b908
mov dword [esi + 8], eax
jmp 0x44b92d
cmp edi, 0xfffffc20
jne 0x44b8e5
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x44a7f4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44b8ed
cmp byte [ecx], 0x77
jmp 0x44b8e7
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov edx, dword [esi + 0xc]
cmp byte [edx], 0x77
je 0x44b921
cmp dword [esi + 0x5c], 0
jne 0x44af77
cmp dword [esi + 0x54], 0
jne 0x44af77
jmp 0x44cb61
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x44b943
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x44e905
push 0x134
call dword [0x5a3d10]
mov edx, eax
add esp, 4
test edx, edx
jne 0x44e8fb
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
mov esi, dword [esi]
test edi, edi
jne 0x44acb4
test esi, esi
je 0x44ec5d
mov edi, 0xfffffc1c
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x44ec77
mov edi, 0xfffffc1e
jmp 0x44a7e4
cmp edi, 1
je 0x44b9c3
cmp edi, 0xfffffc19
jne 0x44b9dd
cmp dword [ebp + 0xac], 0
jne 0x44b9dd
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x44a9d1
cmp edi, 0xfffffc1f
jne 0x44a9d1
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x44ba12
test dl, dl
je 0x44ba0e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x44ba12
add eax, 2
add ecx, 2
test dl, dl
jne 0x44b9f2
xor eax, eax
jmp 0x44ba17
sbb eax, eax
or eax, 1
test eax, eax
jne 0x44a9d1
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x44ec77
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x44a7e4
cmp edi, 1
je 0x44ba4d
cmp edi, 0xfffffc19
jne case.0x44a7f4.51
cmp dword [ebp + 0xac], 0
jne case.0x44a7f4.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x44acb4
test esi, esi
je 0x44ec50
mov edi, 0xfffffc1d
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x44ec84
mov edi, 0xfffffc1f
jmp 0x44a7e4
cmp edi, 1
je 0x44bab0
cmp edi, 0xfffffc19
jne case.0x44a7f4.54
cmp dword [ebp + 0xac], 0
jne case.0x44a7f4.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x44ec6a
mov edi, 0xfffffc20
jmp 0x44a7e4
cmp edi, 0xfffffc1a
jne 0x44bb51
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 0x44bb49
mov edx, dword [esi + 0xc]
jmp 0x44bb30
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 0x44bb30
jmp 0x44bbb8
mov dword [esi + 8], eax
jmp 0x441ab2
cmp edi, 0xfffffc20
jne 0x44bb85
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x44a7f4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44bb8d
cmp byte [ecx], 0x77
jmp 0x44bb87
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x441ab2
cmp dword [esi + 0x5c], 0
jne 0x44bbf8
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 0x440f76
cmp dword [esi + 0x5c], 0
jne 0x440f76
jmp 0x44cb61
cmp edi, 1
jne 0x44bcb4
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x44bc31
cmp al, 0x77
jne 0x44cb61
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 0x44bc31
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
mov ecx, dword [ebp + 0x80]
mov dword [esi + 8], ecx
mov eax, dword [esi + 0xc]
mov al, byte [eax]
cmp al, 0x78
je 0x440f76
cmp ecx, dword [esi + 0x38]
je 0x440f76
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x44bd4d
test ecx, ecx
jne 0x44e96e
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e964
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x44a7e4
cmp edi, 0xfffffc20
jne 0x44bce8
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add ecx, dword [esi + 0xc]
mov dword [esi + 0x2c], ecx
cmp dword [ebp + 0x7c], ecx
jae case.0x44a7f4.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x44bcf0
cmp byte [ecx], 0x77
jmp 0x44bcea
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl ecx, 8
or ecx, eax
add dword [esi + 0xc], ecx
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
jne 0x44bc20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e949
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e93f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test ecx, ecx
jne 0x44e993
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e989
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x44a7e4
test edi, edi
je 0x44e424
jmp case.0x44a7f4.49
test edi, edi
jne case.0x44a7f4.49
add dword [esi + 0xc], 3
jmp 0x440f00
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44bdc9
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44beca
cmp ebx, 0xc0
jb 0x44beca
test bl, 0x20
jne 0x44be0b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44bec7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44be35
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44beca
mov edx, dword [esi + 8]
test bl, 8
jne 0x44be5b
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44bebe
test bl, 4
jne 0x44be8a
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44bebe
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
push edx
push dword [esi + 0x28]
push ebx
call fcn.00450a40
add esp, 0xc
test eax, eax
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e9b5
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e9ab
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x44cb61
cmp dword [esp + 0x8c], edi
je 0x44bf51
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x44bf51
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x44bf45
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e9ce
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e9c4
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44bfab
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x44c0a0
test bl, 0x20
jne 0x44bfe5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44c09d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44c00f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44c0a0
mov edx, dword [esi + 8]
test bl, 8
jne 0x44c038
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44c09b
test bl, 4
jne 0x44c067
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44c09b
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 ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0xff
jbe 0x44c0b6
cmp dword [esi + 0x9c], 0x6e
jne 0x44c0d3
jmp 0x441d7b
mov edx, dword [esi + 0x28]
mov edi, ebx
and ebx, 7
shr edi, 3
mov eax, 1
mov ecx, ebx
shl eax, cl
test byte [edi + edx], al
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44e9e7
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e9dd
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x441d7b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x44c13c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x44c130
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ea00
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44e9f6
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44c196
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
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 0x44c205
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x44c1c5
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x44c1ca
add ecx, 4
add edx, 4
sub edi, 4
jae 0x44c1b4
cmp edi, 0xfffffffc
je 0x44c1f7
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x44c202
cmp edi, 0xfffffffd
je 0x44c1f7
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x44c202
cmp edi, 0xfffffffe
je 0x44c1f7
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x44c202
cmp edi, 0xffffffff
je 0x44c1f7
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x44c202
mov eax, dword [esi + 0x88]
jmp 0x44c270
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x44c2b0
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x44c2b0
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x44c237
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x44c23c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x44c226
cmp edi, 0xfffffffc
je 0x44c26d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x44c2b0
cmp edi, 0xfffffffd
je 0x44c26d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x44c2b0
cmp edi, 0xfffffffe
je 0x44c26d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x44c2b0
cmp edi, 0xffffffff
je 0x44c26d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x44c2b0
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 0x44ea19
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ea0f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
cmp dword [ebp + 0x88], 0
je case.0x447f06.14
cmp ebx, dword [ebp + 0x78]
jb case.0x447f06.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x447f06.14
jmp 0x441ed2
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44c2fc
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44c2f0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ea32
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ea28
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44c362
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x44c462
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x44c39c
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44c45f
test dl, 0x10
jne 0x44c3be
and edx, 0xf
shl edx, 6
or edx, eax
movzx eax, byte [edi + 1]
shl edx, 6
and eax, 0x3f
or edx, eax
add dword [esi + 8], 2
jmp 0x44c462
mov ecx, dword [esi + 8]
test dl, 8
jne 0x44c3ee
and edx, 7
shl edx, 6
or edx, eax
movzx eax, byte [edi + 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]
jmp 0x44c45f
test dl, 4
jne 0x44c424
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 [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]
jmp 0x44c45f
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 [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
cmp dword [esi + 0x80], edx
je 0x44b621
cmp dword [esi + 0x94], edx
je 0x44b621
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c4a9
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44b0b5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x44e8cd
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44c4dc
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44c4d0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ea4b
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ea41
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44c542
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x44c637
test bl, 0x20
jne 0x44c57c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44c634
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44c5a6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44c637
mov edx, dword [esi + 8]
test bl, 8
jne 0x44c5cf
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44c632
test bl, 4
jne 0x44c5fe
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44c632
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 ebx, ecx
mov dword [esi + 8], eax
cmp dword [esi + 0x80], ebx
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ea64
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ea5a
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44c6a0
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44c694
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ea7d
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ea73
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44c706
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x44c742
cmp dword [ebp + 0x88], 0
je 0x44cb61
cmp ecx, dword [ebp + 0x84]
jbe 0x44cb61
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x443d9e
jmp 0x44cb61
cmp dword [esi + 0x7c], 0xc
jne 0x44c794
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x44c76f
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.004510b0
add esp, 0x14
test eax, eax
jne 0x44cb61
jmp 0x44c794
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x44c794
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x44c794
cmp edi, 1
je 0x44cb61
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x44cb61
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x44c87c
test dl, 0x20
jne 0x44c7c7
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x44c879
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x44c7ee
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x44c877
test dl, 8
jne 0x44c814
and edx, 7
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
lea eax, [edi + 3]
jmp 0x44c877
test dl, 4
jne 0x44c843
and edx, 3
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
lea eax, [edi + 4]
jmp 0x44c877
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 edx, ecx
mov dword [esi + 8], eax
mov eax, dword [esi + 0x7c]
add eax, 0xfffffffa
cmp eax, 0xf
ja case.0x44c88b.15
jmp dword [eax*4 + 0x44f3a4]
cmp dword [ebp + 0x88], 0
je case.0x44c88b.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x44c88b.13
cmp dword [ebp + 0x18], 0
jne case.0x44c88b.13
cmp dword [ebp + 0x1c], 2
jne case.0x44c88b.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x44c88b.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x44c88b.13
jmp 0x443d9e
cmp edx, 0xd
ja 0x44c90e
je 0x44c8fb
cmp edx, 0xa
je case.0x44c88b.13
jbe 0x44cb61
cmp edx, 0xc
jmp 0x44c928
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x44c88b.13
cmp byte [eax], 0xa
jne case.0x44c88b.13
inc eax
mov dword [esi + 8], eax
jmp case.0x44c88b.13
cmp edx, 0x85
je 0x44c92e
cmp edx, 0x2027
jbe 0x44cb61
cmp edx, 0x2029
ja 0x44cb61
cmp dword [ebp + 0x68], 0
je case.0x44c88b.13
jmp 0x44cb61
cmp edx, 0x180e
ja 0x44c9ad
je 0x44cb61
cmp edx, 0xa0
ja 0x44c9a5
je 0x44cb61
cmp edx, 9
je 0x44cb61
cmp edx, 0x20
je 0x44cb61
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44c996
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44b0b5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x44e8cd
cmp edx, 0x1680
jmp 0x44c961
cmp edx, 0x205f
ja 0x44c9d7
je 0x44cb61
cmp edx, 0x2000
jb case.0x44c88b.13
cmp edx, 0x200a
jbe 0x44cb61
cmp edx, 0x202f
jmp 0x44c961
cmp edx, 0x3000
jmp 0x44cb5b
cmp edx, 0x180e
ja 0x44ca14
je case.0x44c88b.13
cmp edx, 0xa0
ja 0x44ca0c
je case.0x44c88b.13
cmp edx, 9
je case.0x44c88b.13
cmp edx, 0x20
jmp 0x44ca48
cmp edx, 0x1680
jmp 0x44ca48
cmp edx, 0x205f
ja 0x44ca42
je case.0x44c88b.13
cmp edx, 0x2000
jb 0x44cb61
cmp edx, 0x200a
jbe case.0x44c88b.13
cmp edx, 0x202f
jmp 0x44ca48
cmp edx, 0x3000
je case.0x44c88b.13
jmp 0x44cb61
cmp edx, 0x85
ja 0x44ca78
je 0x44cb61
cmp edx, 0xa
jb case.0x44c88b.13
cmp edx, 0xd
jbe 0x44cb61
jmp case.0x44c88b.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x44c88b.13
jmp 0x44cb61
cmp edx, 0x85
ja 0x44caa8
je case.0x44c88b.13
cmp edx, 0xa
jb 0x44cb61
cmp edx, 0xd
jmp 0x44cab1
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x44c88b.13
jmp 0x44cb61
cmp edx, 0x100
jae case.0x44c88b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x44c88b.13
jmp 0x44cb61
cmp edx, 0x100
jae 0x44cb61
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x44cb5b
cmp edx, 0x100
jae case.0x44c88b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x44c88b.13
jmp 0x44cb61
cmp edx, 0x100
jae 0x44cb61
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x44cb5b
cmp edx, 0x100
jae case.0x44c88b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x44c88b.13
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x44a7e4
cmp edx, 0x100
jae 0x44cb61
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x44c88b.13
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x44a7e4
mov esi, dword [esi]
test esi, esi
je case.default.0x44a7f4
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x44a7e4
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44cbbc
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44cbb0
cmp dword [esi + 0x7c], 0x11
jne 0x44cbd8
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x44cbd8
cmp byte [eax], 0xa
jne 0x44cbd8
dec eax
cmp byte [eax], 0xd
jne 0x44cbd8
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ea96
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ea8c
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44cc3e
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44cc5e
cmp dword [ebp + 0x88], 0
je 0x44b563
cmp eax, dword [ebp + 0x84]
jmp 0x44d3b9
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x44cc9d
cmp ecx, 0xc0
jb 0x44cc9d
test cl, 0x20
jne 0x44cc79
inc eax
jmp 0x44cc9a
test cl, 0x10
jne 0x44cc83
add eax, 2
jmp 0x44cc9a
test cl, 8
jne 0x44cc8d
add eax, 3
jmp 0x44cc9a
test cl, 4
jne 0x44cc97
add eax, 4
jmp 0x44cc9a
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x44ccb4
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
xor edi, edi
jmp 0x44a7e4
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44cce3
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x44b0b5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x44e8cd
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44cd17
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44ce11
cmp ebx, 0xc0
jb 0x44ce11
test bl, 0x20
jne 0x44cd59
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44ce0e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44cd83
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44ce11
mov edx, dword [esi + 8]
test bl, 8
jne 0x44cda9
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44ce0c
test bl, 4
jne 0x44cdd8
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44ce0c
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 ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44ce33
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp eax, 9
je 0x44ce58
cmp eax, 5
je 0x44ce58
cmp eax, 8
je 0x44ce58
xor eax, eax
jmp 0x44ce5d
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eaaf
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eaa5
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44cec6
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44cfbc
cmp ebx, 0xc0
jb 0x44cfbc
test bl, 0x20
jne 0x44cf08
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44cfb9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44cf30
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x44cfbc
mov edx, dword [esi + 8]
test bl, 8
jne 0x44cf56
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]
jmp 0x44cfb9
test bl, 4
jne 0x44cf85
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]
jmp 0x44cfb9
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44cfde
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eac8
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eabe
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44d068
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44d15e
cmp ebx, 0xc0
jb 0x44d15e
test bl, 0x20
jne 0x44d0aa
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44d15b
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44d0d2
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x44d15e
mov edx, dword [esi + 8]
test bl, 8
jne 0x44d0f8
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]
jmp 0x44d15b
test bl, 4
jne 0x44d127
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]
jmp 0x44d15b
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44d180
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eae1
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ead7
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44d203
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44d2f9
cmp ebx, 0xc0
jb 0x44d2f9
test bl, 0x20
jne 0x44d245
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44d2f6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44d26d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x44d2f9
mov edx, dword [esi + 8]
test bl, 8
jne 0x44d293
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]
jmp 0x44d2f6
test bl, 4
jne 0x44d2c2
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]
jmp 0x44d2f6
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44d31b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d8]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eafa
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eaf0
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44d39e
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x44d3e7
cmp dword [ebp + 0x88], 0
je 0x44b563
cmp edi, dword [ebp + 0x84]
jbe 0x44b563
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x44b563
mov esi, dword [esi]
test esi, esi
je 0x44ec1c
mov edi, 0xfffffff4
jmp 0x44a7e4
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44d4d5
cmp ebx, 0xc0
jb 0x44d4d5
test bl, 0x20
jne 0x44d41d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44d4d2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44d447
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44d4d5
mov edx, dword [esi + 8]
test bl, 8
jne 0x44d46d
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44d4d0
test bl, 4
jne 0x44d49c
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44d4d0
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 ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44d4f7
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500da]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x44d688
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x44d627
cmp ebx, 0xc0
jb 0x44d627
test bl, 0x20
jne 0x44d55b
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x44d61f
test bl, 0x10
jne 0x44d580
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 3
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x44d61f
test bl, 8
jne 0x44d5b1
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
mov edi, 4
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x44d61f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x44d5eb
and ebx, 3
mov edi, 5
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x44d61f
and ebx, edi
mov edi, 6
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44d649
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx ecx, byte [eax*8 + 0x5500da]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x54ff60], eax
je 0x44d688
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x44d520
cmp dword [ebp + 0x88], 0
je 0x44d6b5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x44d6b5
cmp eax, dword [ebp + 0x84]
jbe 0x44d6b5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x441ee6
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eb13
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb09
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x44d71c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44d71c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44d710
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x440f00
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eb2c
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb22
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x44d777
movzx ebx, byte [ecx]
jmp 0x44d865
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x44d78c
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x44d780
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x44d865
test bl, 0x20
jne 0x44d7af
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x44d85d
test bl, 0x10
jne 0x44d7cf
movzx ecx, byte [eax + 1]
and ebx, 0xf
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ebx, ecx
movzx eax, byte [eax + 2]
jmp 0x44d85d
test bl, 8
jne 0x44d7f8
movzx ecx, byte [eax + 1]
and ebx, 7
mov eax, dword [esi + 8]
and ecx, 0x3f
shl ebx, 6
or ecx, ebx
shl ecx, 6
movzx ebx, byte [eax + 2]
movzx eax, byte [eax + 3]
and ebx, 0x3f
or ebx, ecx
jmp 0x44d85d
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x44d82d
and ebx, 3
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
or ebx, eax
movzx eax, byte [ecx + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [ecx + 4]
jmp 0x44d85d
and ebx, 1
shl ebx, 6
or eax, ebx
movzx ebx, byte [ecx + 2]
shl eax, 6
and ebx, 0x3f
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
movzx eax, byte [ecx + 5]
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44d887
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500da]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x440f00
dec edi
cmp dword [esp + 0x8c], 0
jne 0x44d8bf
movzx ebx, byte [edi]
jmp 0x44d97e
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x44d8d1
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x44d8c7
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x44d97e
test bl, 0x20
jne 0x44d8f1
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x44d976
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x44d90e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x44d976
and eax, 0x3f
test bl, 8
jne 0x44d929
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x44d976
test bl, 4
jne 0x44d94d
and ebx, 3
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
and eax, 0x3f
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 4]
jmp 0x44d976
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, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44d9a0
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx edx, byte [eax*8 + 0x5500da]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x54ff60], eax
je 0x4495d6
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x44d8a0
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44da01
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44dafb
cmp ebx, 0xc0
jb 0x44dafb
test bl, 0x20
jne 0x44da43
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44daf8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44da6d
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44dafb
mov edx, dword [esi + 8]
test bl, 8
jne 0x44da93
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44daf6
test bl, 4
jne 0x44dac2
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44daf6
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 ebx, ecx
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44db1d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x44db44
cmp eax, 3
je 0x44db44
xor eax, eax
jmp 0x44db49
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eb5e
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb54
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44dbb2
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44dcb3
cmp ebx, 0xc0
jb 0x44dcb3
test bl, 0x20
jne 0x44dbf4
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44dcb0
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44dc1e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44dcb3
mov edx, dword [esi + 8]
test bl, 8
jne 0x44dc44
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44dca7
test bl, 4
jne 0x44dc73
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44dca7
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x24
je 0x44dcde
cmp ebx, 0x40
je 0x44dcde
cmp ebx, 0x60
je 0x44dcde
cmp ebx, 0xa0
jb 0x44dcd2
cmp ebx, 0xd7ff
jbe 0x44dcde
cmp ebx, 0xe000
jae 0x44dcde
xor eax, eax
jmp 0x44dce3
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4426c2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eb77
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb6d
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44dd4c
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44de4d
cmp ebx, 0xc0
jb 0x44de4d
test bl, 0x20
jne 0x44dd8e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44de4a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44ddb8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x44de4d
mov edx, dword [esi + 8]
test bl, 8
jne 0x44ddde
and ebx, 7
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
lea eax, [edx + 3]
jmp 0x44de41
test bl, 4
jne 0x44de0d
and ebx, 3
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
lea eax, [edx + 4]
jmp 0x44de41
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 edx, dword [esp + 0x8c]
mov ebx, ecx
mov dword [esi + 8], eax
cmp ebx, 0x180e
ja 0x44de90
je case.0x44deb0.8192
cmp ebx, 0x85
ja 0x44de7c
je case.0x44deb0.8192
cmp ebx, 9
jb case.0x44deb0.8203
cmp ebx, 0xd
jbe case.0x44deb0.8192
cmp ebx, 0x20
jmp 0x44dec5
cmp ebx, 0xa0
je case.0x44deb0.8192
cmp ebx, 0x1680
jmp 0x44dec5
cmp ebx, 0x202f
ja 0x44deb7
je case.0x44deb0.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x44deb0.8203
movzx eax, byte [eax + 0x44f3ec]
jmp dword [eax*4 + 0x44f3e4]
cmp ebx, 0x205f
je case.0x44deb0.8192
cmp ebx, 0x3000
je case.0x44deb0.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x551758]
shl eax, 7
and ebx, 0x8000007f
jns 0x44dee9
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
cmp dword [eax*4 + 0x54fee8], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x44df1c
jmp 0x441d7b
cmp dword [esi + 0x68], 0
jne 0x4426c2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eb90
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb86
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44df7c
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44e072
cmp ebx, 0xc0
jb 0x44e072
test bl, 0x20
jne 0x44dfbe
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44e06f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44dfe6
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x44e072
mov edx, dword [esi + 8]
test bl, 8
jne 0x44e00c
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]
jmp 0x44e06f
test bl, 4
jne 0x44e03b
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]
jmp 0x44e06f
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov dword [esi + 8], eax
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x551758]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x44e095
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x553958]
movzx eax, byte [eax*8 + 0x5500d9]
mov eax, dword [eax*4 + 0x54fee8]
cmp eax, 1
je 0x44e0c1
cmp eax, 3
je 0x44e0c1
cmp ebx, 0x5f
je 0x44e0c1
xor eax, eax
jmp 0x44e0c6
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x441d7b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44eba9
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44eb9f
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
test edi, edi
jne case.0x44a7f4.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x44e12f
mov esi, dword [esi]
test esi, esi
je 0x44ebf8
jmp 0x44a7e4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x44d3a6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x44e22c
cmp ebx, 0xc0
jb 0x44e22c
test bl, 0x20
jne 0x44e171
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x44e229
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x44e199
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x44e22c
mov edx, dword [esi + 8]
test bl, 8
jne 0x44e1bf
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]
jmp 0x44e222
test bl, 4
jne 0x44e1ee
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]
jmp 0x44e222
and ebx, 1
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
movzx eax, byte [edx + 4]
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 5]
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x64]
mov ecx, dword [eax*4 + 0x54ff98]
lea eax, [eax*4 + 0x54ff98]
cmp ebx, ecx
jb 0x44e24e
lea eax, [eax + 4]
cmp ebx, ecx
je 0x44e293
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x44e241
cmp dword [esi + 0x68], 0
je 0x4426c2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x44ebc2
push 0x134
call dword [0x5a3d10]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x44ebb8
mov esi, dword [esi]
test esi, esi
je 0x44ebeb
lea edi, [eax - 6]
jmp 0x44a7d9
cmp dword [esi + 0x68], 0
je 0x44e258
jmp 0x4426c2
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 0x44e2a1
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x440f7a
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x44e2e3
push ecx
call dword [0x5a3d0c]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x440f7a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44c0d9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44bee5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44c27b
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x44c480
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44c649
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x44ccba
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44ce6c
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44d00e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44d1a9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44d344
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44db58
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44df22
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44e0d5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44e25e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44dcf2
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x44c96d
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x44d6bb
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x440f00
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 ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x54fdd0]
movzx eax, byte [ecx + 1]
add edx, eax
add edx, ecx
mov dword [edi + 0xc], edx
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 0x440ef0
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 0x44e6e6
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 0x44e6e6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x44e43f
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 0x44e6e6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x44e43f
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 0x44e6e6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x44e43f
mov dword [ecx + 4], ebx
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]
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], ebx
mov eax, dword [esi + 0x1c]
inc eax
mov dword [ecx + 0x1c], eax
mov dword [ecx], esi
mov esi, ecx
jmp 0x440ef0
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 0x44e8d6
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 0x44e8d6
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 0x44e8d6
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 0x44e8d6
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 0x44e8d6
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 0x44e6e6
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 0x44e6e6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x44e697
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 0x440ef0
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 + 0x54fdd0]
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 0x440ef0
mov dword [ecx + 4], 0
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 0x44e8d6
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 0x44e8d6
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 0x44e8d6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x44e8cd
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 0x440ef0
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 0x44e6e6
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 0x44e6e6
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 0x44e8d6
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 0x44e8d6
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 0x44e8d6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x44e8cd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x44e8cd
pop edi
pop esi
pop ebp
mov eax, 0xfffffff8
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffeb
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffa
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
xor eax, eax
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xffffffe6
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1a
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff4
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffff2
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 1
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1b
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1d
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1c
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc20
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1e
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffc1f
pop ebx
add esp, 0x68
ret
pop edi
pop esi
pop ebp
mov eax, 0xfffffffb
pop ebx
add esp, 0x68
ret