Function at 0x42eef0
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 0x42ef7e
mov esi, dword [esi]
test esi, esi
je 0x43cc21
mov edi, 0xfffffff8
jmp 0x438829
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x42ef9a
mov esi, dword [esi]
test esi, esi
je 0x43cc2e
mov edi, 0xffffffeb
jmp 0x438829
cmp dword [ebp + 0x98], 2
jne 0x42efd1
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 0x42efd1
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.0x42f004.98
movzx eax, byte [edx + 0x43ce3c]
jmp dword [eax*4 + 0x43ccf0]
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 0x43c485
push 0x134
call dword [0x66c7bc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43c47f
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c4d5
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c4cf
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c4f3
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c4ed
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x43c511
push 0x134
call dword [0x66c7bc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43c50b
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c526
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c520
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x42f15e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4d6f68]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x42efd1
mov edi, dword [esi + 4]
test edi, edi
jne 0x43c544
push 0x134
call dword [0x66c7bc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43c53e
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c559
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c553
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x43c577
push 0x134
call dword [0x66c7bc]
mov edi, eax
add esp, 4
test edi, edi
jne 0x43c571
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x439d68
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.0x42f004.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 0x4388cb
mov dword [esi + 0x54], ebx
jmp 0x42fa6f
mov dword [esi + 0x54], ebx
jmp 0x42fa93
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 0x42f3d8
mov edi, dword [0x671f78]
test edi, edi
je 0x42f3c4
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 0x42f37e
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 0x42f3b3
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
jns 0x42f3c4
mov esi, dword [esi]
test esi, esi
je 0x438d0c
jmp 0x438829
movzx eax, byte [0x4d6fde]
add dword [esi + 0xc], eax
movzx eax, byte [0x4d6fde]
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.0x42f3fe.146
movzx eax, byte [eax + 0x43cef8]
jmp dword [eax*4 + 0x43cee0]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x42f3fe.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x42f437
cmp edx, dword [edi + 4]
je 0x42f437
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x438b63
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x438b63
cmp dword [ebp + 0xa4], ebx
je case.0x42f3fe.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.0x42f3fe.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 0x438b63
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x42f480
jmp 0x438b63
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 0x42f4e4
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x42f4e4
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x42f3fe.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x42f3fe.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 0x438b63
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 0x42f539
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x42f548
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x42f517
jmp 0x438b63
mov dword [esi + 0x58], 1
jmp 0x438b63
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c58c
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c586
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x42f5e4
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x42efc6
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 0x42efc6
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x42f633
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 0x42efc6
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x42f686
cmp edx, 0x9f
je 0x42f686
cmp dword [ebp + 0xa4], ebx
jne 0x42f686
cmp dword [ebp + 0x5c], ebx
jne 0x42f675
cmp dword [ebp + 0x60], ebx
je 0x42f686
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x42f686
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
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 0x438d0c
jmp 0x438829
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x42f6df
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x438c5d
mov dword [esi + 0x58], ebx
jmp 0x438c5d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x42f70b
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x438dab
mov dword [esi + 0x58], ebx
jmp 0x438dab
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x42f772
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x42f758
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x435f56.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42f754
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x42f748
test edx, edx
jg 0x42f730
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x42efc6
mov dword [ebp + 0x84], eax
jmp 0x42efc6
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 0x42f758
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438830
mov edi, dword [0x671f78]
test edi, edi
je 0x42f87c
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 0x42f836
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 0x42f86b
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
jns 0x42f87c
mov esi, dword [esi]
test esi, esi
je 0x438d0c
jmp 0x438829
add dword [esi + 0xc], 6
jmp 0x42efca
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 0x42f8a6
xor edx, edx
jmp 0x42f8b3
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 0x42f8d3
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x42f8cd
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x42f934
mov ecx, dword [ecx]
test ecx, ecx
jne 0x42f8c0
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 0x42f948
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 0x438e94
mov esi, dword [esi]
test esi, esi
je 0x43cc52
mov edi, 0xffffffe6
jmp 0x438829
shl eax, 2
push eax
call dword [0x66c7b4]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x42f90e
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x42f971
jmp 0x42efd1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c5c7
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c5c1
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x42f9d0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c5e5
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c5df
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x42fa23
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x42efd1
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 0x42fa6f
cmp eax, 0x8b
jne 0x42fa93
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 0x42fab0
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 0x43997d
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 0x42fb2d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c977
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c96d
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x42fb88
cmp al, 0x81
je 0x42fb88
mov dword [esi + 0x38], ebx
jmp 0x42fb99
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 0x42fba6
cmp al, 0x80
jbe 0x42fbaa
cmp al, 0x82
jne 0x42fbd6
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 0x43cc86
mov edi, 1
jmp 0x438829
cmp al, 0x85
je 0x42fbea
cmp al, 0x8a
je 0x42fbea
cmp al, 0x86
je 0x42fbea
cmp al, 0x8b
jne 0x42fcb1
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 0x42fc26
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x42fc26
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x42fbbc
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 0x42fc55
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x42fcb1
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x42fc75
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x42fc75
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 0x42fcb1
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x42fce7
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 0x43cc5f
mov edi, 0xfffffc1a
jmp 0x438829
cmp cl, 0x78
je 0x42fd60
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x42fd60
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x42fd2e
test ecx, ecx
jne 0x43c606
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c600
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test ecx, ecx
jne 0x43c627
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c621
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x438fc7
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c645
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c63f
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
cmp dword [ebp + 0x44], ebx
je case.0x42f004.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x42f004.1
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x42fe88
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
cmp dword [ebp + 0x44], ebx
je 0x42fdfa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x42fdfa
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x430844
cmp ecx, dword [ebp + 0x78]
je 0x42fe60
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42fe38
cmp ecx, edx
jbe 0x42fe60
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043eeb0
add esp, 0x14
test eax, eax
jne 0x430844
jmp 0x42fe60
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x42fe60
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42fe60
cmp edi, 1
je 0x430844
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x430844
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438829
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x42fdc5
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x42efd1
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x42ff4a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x42fec5
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x430844
jmp 0x42fee9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42fee9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42fee9
cmp edx, 1
je 0x430844
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x430844
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x435f56.14
cmp dword [ebp + 0x18], ebx
jne case.0x435f56.14
cmp dword [edi], 2
jne case.0x435f56.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x435f56.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x435f56.14
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438829
cmp dword [ebp + 0x48], ebx
jne 0x42fdcb
cmp dword [ebp + 0x88], ebx
je 0x430844
cmp ecx, dword [ebp + 0x84]
jbe 0x430844
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x430844
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438829
cmp dword [ebp + 0x48], ebx
jne 0x42fdcb
cmp dword [ebp + 0x58], ebx
je case.0x42f004.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42fdcb
cmp dword [ebp + 0x88], ebx
je 0x42fe88
cmp eax, dword [ebp + 0x84]
jbe 0x42fe88
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42fe88
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438829
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x430055
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x43001d
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x430045
jmp 0x42fee9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42fee9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42fee9
cmp edx, 1
je 0x430045
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x42fee9
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x42fee9
cmp dword [ebp + 0x88], ebx
je 0x430844
cmp ecx, dword [ebp + 0x84]
jbe 0x430844
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x430844
jmp 0x42ff36
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x430357
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x4300a5
mov dword [esi + 0x5c], ebx
jmp 0x4301de
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x4300ba
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x4300b0
cmp edx, dword [ebp + 0x84]
jae 0x4300c8
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x43017c
test bl, 0x20
jne 0x4300f0
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x43017c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x43010a
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x430172
and eax, 0x3f
test bl, 8
jne 0x430125
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x430172
test bl, 4
jne 0x430149
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 0x430172
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 0x430217
cmp ebx, 0x5f
jne 0x430194
mov dword [esi + 0x5c], 1
jmp 0x4301de
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x4301b6
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x430228
cmp eax, 3
je 0x430228
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x43022f
cmp dword [ebp + 0x88], 0
je 0x43020b
cmp edx, dword [ebp + 0x84]
jbe 0x43020b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
mov dword [esi + 0x54], 0
jmp 0x430495
cmp ebx, 0x100
jae 0x4301d9
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x4301d9
mov eax, 1
jmp 0x4301db
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x4302d9
test bl, 0x20
jne 0x43024f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x4302d1
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x430269
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x4302d1
and eax, 0x3f
test bl, 8
jne 0x430284
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x4302d1
test bl, 4
jne 0x4302a8
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 0x4302d1
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 0x43033c
cmp ebx, 0x5f
jne 0x4302f0
mov dword [esi + 0x54], 1
jmp 0x430495
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x430312
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x43034d
cmp eax, 3
je 0x43034d
xor eax, eax
jmp 0x430492
cmp ebx, 0x100
jae 0x430335
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x430335
mov eax, 1
jmp 0x430492
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x430367
mov dword [esi + 0x5c], ebx
jmp 0x430402
cmp eax, dword [ebp + 0x84]
ja 0x430376
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x4303ee
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x430390
mov dword [esi + 0x5c], 1
jmp 0x430402
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ecx, 0x8000007f
jns 0x4303b2
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x4303e0
cmp eax, 3
je 0x4303e0
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x4303ff
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x4303ff
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 0x430443
cmp dword [ebp + 0x88], ebx
je 0x43043e
cmp eax, dword [ebp + 0x84]
jbe 0x43043e
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43043e
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438830
mov dword [esi + 0x54], ebx
jmp 0x430495
cmp dword [ebp + 0x54], ebx
je 0x430482
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x430459
mov dword [esi + 0x54], 1
jmp 0x430495
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ecx, 0x8000007f
jns 0x43047b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x430314
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 0x4304b0
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x4304b8
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x42efd1
jmp 0x42fdcb
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x4304fd
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x430528
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x42fdcb
jmp 0x430528
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x430528
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x430528
cmp edx, 1
je 0x42fdcb
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42fdcb
cmp dword [ebp + 0x88], ebx
je case.0x42f004.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x42f004.13
cmp dword [ebp + 0x18], ebx
jne case.0x42f004.13
cmp dword [ebp + 0x1c], 2
jne case.0x42f004.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x42f004.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x430586
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
cmp eax, dword [ebp + 0x84]
jbe case.0x435f56.14
jmp 0x42ff22
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x42fe88
cmp eax, dword [ebp + 0x78]
jae 0x42fe88
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42fe88
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x4305a2
inc dword [esi + 0xc]
jmp 0x42efd1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x430569
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x42efd1
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4305fd
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
cmp edi, dword [ebp + 0x84]
jbe case.0x435f56.14
jmp 0x42ff22
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4306f9
cmp ebx, 0xc0
jb 0x4306f9
test bl, 0x20
jne 0x43063a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4306f6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430664
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4306f9
mov edx, dword [esi + 8]
test bl, 8
jne 0x43068a
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 0x4306ed
test bl, 4
jne 0x4306b9
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 0x4306ed
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 0x430844
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x430844
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438830
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x43082b
cmp ebx, 0xc0
jb 0x43082b
test bl, 0x20
jne 0x43076c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430828
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430796
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43082b
mov edx, dword [esi + 8]
test bl, 8
jne 0x4307bc
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 0x43081f
test bl, 4
jne 0x4307eb
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 0x43081f
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 0x42f78d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x42f78d
inc dword [esi + 0xc]
jmp 0x42efca
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430954
cmp ebx, 0xc0
jb 0x430954
test bl, 0x20
jne 0x430895
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430951
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4308bf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430954
mov edx, dword [esi + 8]
test bl, 8
jne 0x4308e5
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 0x430948
test bl, 4
jne 0x430914
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 0x430948
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 0x430844
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x43070c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430a74
cmp ebx, 0xc0
jb 0x430a74
test bl, 0x20
jne 0x4309b5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430a71
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4309df
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430a74
mov edx, dword [esi + 8]
test bl, 8
jne 0x430a05
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 0x430a68
test bl, 4
jne 0x430a34
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 0x430a68
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 0x42f78d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x42f78d
inc dword [esi + 0xc]
jmp 0x42efca
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430b9d
cmp ebx, 0xc0
jb 0x430b9d
test bl, 0x20
jne 0x430ade
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430b9a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430b08
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430b9d
mov edx, dword [esi + 8]
test bl, 8
jne 0x430b2e
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 0x430b91
test bl, 4
jne 0x430b5d
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 0x430b91
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 0x430844
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x43070c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430cbd
cmp ebx, 0xc0
jb 0x430cbd
test bl, 0x20
jne 0x430bfe
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430cba
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430c28
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430cbd
mov edx, dword [esi + 8]
test bl, 8
jne 0x430c4e
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 0x430cb1
test bl, 4
jne 0x430c7d
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 0x430cb1
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 0x42f78d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x42f78d
inc dword [esi + 0xc]
jmp 0x42efca
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430de6
cmp ebx, 0xc0
jb 0x430de6
test bl, 0x20
jne 0x430d27
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430de3
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430d51
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430de6
mov edx, dword [esi + 8]
test bl, 8
jne 0x430d77
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 0x430dda
test bl, 4
jne 0x430da6
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 0x430dda
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 0x430e5f
je 0x430e01
cmp ebx, 0xa
je 0x430844
jbe 0x430712
cmp ebx, 0xc
jmp 0x430e79
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x430e4a
cmp dword [ebp + 0x88], 0
je 0x430844
cmp eax, dword [ebp + 0x84]
jbe 0x430844
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x430844
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438830
cmp byte [eax], 0xa
jne 0x430844
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x42efca
cmp ebx, 0x85
je 0x430e7f
cmp ebx, 0x2027
jbe 0x430712
cmp ebx, 0x2029
ja 0x430712
cmp dword [ebp + 0x68], 0
jmp 0x43070c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x430f90
cmp ebx, 0xc0
jb 0x430f90
test bl, 0x20
jne 0x430ed1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x430f8d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x430efb
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x430f90
mov edx, dword [esi + 8]
test bl, 8
jne 0x430f21
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 0x430f84
test bl, 4
jne 0x430f50
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 0x430f84
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 0x430fc8
je 0x42f78d
cmp ebx, 0xa0
ja 0x430fbd
je 0x42f78d
cmp ebx, 9
je 0x42f78d
cmp ebx, 0x20
jmp 0x43083e
cmp ebx, 0x1680
jmp 0x43083e
cmp ebx, 0x205f
ja 0x430ff9
je 0x42f78d
cmp ebx, 0x2000
jb 0x430844
cmp ebx, 0x200a
jbe 0x42f78d
cmp ebx, 0x202f
jmp 0x43083e
cmp ebx, 0x3000
je 0x42f78d
inc dword [esi + 0xc]
jmp 0x42efca
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x431115
cmp ebx, 0xc0
jb 0x431115
test bl, 0x20
jne 0x431056
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x431112
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x431080
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x431115
mov edx, dword [esi + 8]
test bl, 8
jne 0x4310a6
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 0x431109
test bl, 4
jne 0x4310d5
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 0x431109
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 0x43114d
je 0x430844
cmp ebx, 0xa0
ja 0x431142
je 0x430844
cmp ebx, 9
je 0x430844
cmp ebx, 0x20
jmp 0x43070c
cmp ebx, 0x1680
jmp 0x43070c
cmp ebx, 0x205f
ja 0x43117e
je 0x430844
cmp ebx, 0x2000
jb 0x430712
cmp ebx, 0x200a
jbe 0x430844
cmp ebx, 0x202f
jmp 0x43070c
cmp ebx, 0x3000
jmp 0x43070c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x431291
cmp ebx, 0xc0
jb 0x431291
test bl, 0x20
jne 0x4311d2
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43128e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4311fc
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x431291
mov edx, dword [esi + 8]
test bl, 8
jne 0x431222
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 0x431285
test bl, 4
jne 0x431251
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 0x431285
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 0x4312b9
je 0x430712
cmp ebx, 0xa
jb 0x430844
cmp ebx, 0xd
jbe 0x430712
inc dword [esi + 0xc]
jmp 0x42efca
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x430844
jmp 0x430712
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x4313d5
cmp ebx, 0xc0
jb 0x4313d5
test bl, 0x20
jne 0x431316
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4313d2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x431340
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4313d5
mov edx, dword [esi + 8]
test bl, 8
jne 0x431366
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 0x4313c9
test bl, 4
jne 0x431395
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 0x4313c9
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 0x4313fa
je 0x430844
cmp ebx, 0xa
jb 0x42f78d
cmp ebx, 0xd
jbe 0x430844
jmp 0x42f78d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x42f78d
inc dword [esi + 0xc]
jmp 0x42efca
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x43150d
cmp ebx, 0xc0
jb 0x43150d
test bl, 0x20
jne 0x431459
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43150a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x431481
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43150d
mov edx, dword [esi + 8]
test bl, 8
jne 0x4314a7
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 0x43150a
test bl, 4
jne 0x4314d6
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 0x43150a
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 + 0x4d88f0]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x431530
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 + 0x4daaf0]
cmp eax, 0xa
ja case.default.0x43154a
jmp dword [eax*4 + 0x43cf0c]
cmp dword [esi + 0x9c], 0xf
jne 0x42efc6
jmp 0x42fdcb
mov al, byte [edx*8 + 0x4d7271]
cmp al, 9
je 0x43157a
cmp al, 5
je 0x43157a
cmp al, 8
je 0x43157a
xor ecx, ecx
jmp 0x43157f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x42efc6
jmp 0x42fdcb
movzx ecx, byte [edx*8 + 0x4d7271]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x4d7080]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x42efc6
jmp 0x42fdcb
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4d7271]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x42efc6
jmp 0x42fdcb
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4d7270]
jmp 0x4315db
movzx eax, byte [edx*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x43157a
cmp eax, 3
je 0x43157a
xor ecx, ecx
jmp 0x43157f
cmp ebx, 0x180e
ja 0x431673
je case.0x43154a.0
cmp ebx, 0x85
ja 0x43165f
je case.0x43154a.0
cmp ebx, 9
jb case.0x431693.8203
cmp ebx, 0xd
jbe case.0x43154a.0
cmp ebx, 0x20
jmp 0x4316ac
cmp ebx, 0xa0
je case.0x43154a.0
cmp ebx, 0x1680
jmp 0x4316ac
cmp ebx, 0x202f
ja 0x43169a
je case.0x43154a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x431693.8203
movzx eax, byte [ebx + 0x43cf40]
jmp dword [eax*4 + 0x43cf38]
cmp ebx, 0x205f
je case.0x43154a.0
cmp ebx, 0x3000
je case.0x43154a.0
movzx eax, byte [edx*8 + 0x4d7271]
xor ecx, ecx
cmp dword [eax*4 + 0x4d7080], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x4315e7
movzx eax, byte [edx*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x43157a
cmp eax, 3
je 0x43157a
cmp ebx, 0x5f
je 0x43157a
xor ecx, ecx
jmp 0x43157f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x4d7130]
lea eax, [eax*4 + 0x4d7130]
cmp ebx, ecx
jb 0x43172d
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x43173f
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x431720
cmp dword [esi + 0x9c], 0x10
jne 0x42efc6
jmp 0x42fdcb
cmp dword [esi + 0x9c], 0x10
je 0x42efc6
jmp 0x42fdcb
cmp ebx, 0x24
je 0x43157a
cmp ebx, 0x40
je 0x43157a
cmp ebx, 0x60
je 0x43157a
cmp ebx, 0xa0
jb 0x431780
cmp ebx, 0xd7ff
jbe 0x43157a
cmp ebx, 0xe000
jae 0x43157a
xor ecx, ecx
jmp 0x43157f
mov esi, dword [esi]
test esi, esi
je case.default.0x438844
mov edi, 0xfffffff2
jmp 0x438829
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x4318b2
cmp ebx, 0xc0
jb 0x4318b2
test bl, 0x20
jne 0x4317f0
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4318af
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43181f
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 0x4318b2
mov edx, dword [esi + 8]
test bl, 8
jne 0x431845
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 0x4318a8
test bl, 4
jne 0x431874
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 0x4318a8
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x4318d4
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7272]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x431a66
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4319fe
cmp ebx, 0xc0
jb 0x4319fe
test bl, 0x20
jne 0x431935
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4319f6
test bl, 0x10
jne 0x43195a
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 0x4319f6
test bl, 8
jne 0x431988
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 0x4319f6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4319c2
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 0x4319f6
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x431a20
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx ecx, byte [eax*8 + 0x4d7272]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4d70f8], eax
je 0x431a66
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 0x431900
cmp dword [ebp + 0x88], 0
je 0x430844
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x430844
cmp eax, dword [ebp + 0x84]
jbe 0x430844
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x430844
jmp 0x42ff36
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 0x431b94
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 0x431b24
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x431b2d
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x431b00
jmp 0x431b94
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x431b94
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 0x431b84
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x431b84
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x431b8e
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.0x431baf
movzx eax, byte [eax + 0x43cf74]
jmp dword [eax*4 + 0x43cf6c]
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 + 0x4d65c0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4d65cc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x431c3d
mov dword [esi + 0x8c], closesocket
jmp 0x431c3d
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 0x431c39
mov dword [esi + 0x8c], closesocket
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x42efd1
jns 0x431c61
cmp dword [esi + 0x90], 0
je 0x42efd1
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x431c9f
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.0043d470
add esp, 0x14
test eax, eax
js 0x431cd1
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x431c70
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x42efd1
cmp dword [esp + 0x80], 0
je 0x431cfa
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4390e2
cmp eax, 0xfffffffe
jne 0x431cdc
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x435f56.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x435f56.14
jmp 0x430575
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x431d10
cmp edi, dword [esi + 0x8c]
jge 0x439131
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0043d470
add esp, 0x14
test eax, eax
js 0x431d45
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x431d10
cmp eax, 0xfffffffe
jne 0x439131
cmp dword [ebp + 0x88], 0
je 0x439131
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x439131
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x439131
jmp 0x42ff36
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.0043d470
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x431e09
cmp eax, 0xfffffffe
jne 0x431db5
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x43970d.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x43970d.14
cmp eax, dword [ebp + 0x84]
jbe case.0x43970d.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x43970d.14
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x438834
add dword [esi + 8], eax
jmp 0x42efca
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.0x431e37
movzx eax, byte [eax + 0x43cf84]
jmp dword [eax*4 + 0x43cf7c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x431e5a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x431e65
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4d65c0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4d65cc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x431efc
mov dword [esi + 0x8c], closesocket
jmp 0x431efc
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 0x431ee2
mov dword [esi + 0x8c], closesocket
add dword [esi + 0xc], 5
jmp 0x431efc
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x43205c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x4320b1
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x43200c
test bl, 0x20
jne 0x431f5a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x432009
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x431f81
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x432007
test bl, 8
jne 0x431fa4
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 0x432007
test bl, 4
jne 0x431fd3
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 0x432007
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 0x43201d
cmp dword [esi + 0x9c], 0x6e
jmp 0x432032
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.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x431f20
jmp 0x4320a3
cmp dword [ebp + 0x88], 0
je case.0x435f56.14
mov eax, dword [esi + 8]
jmp 0x430575
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x4320aa
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x432047
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.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x432070
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42efca
test ebx, ebx
je 0x4320da
test edx, edx
jne 0x43c347
mov dword [esi + 0x84], eax
jmp 0x4391cb
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x432292
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x43227f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x432257
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x432206
test bl, 0x20
jne 0x43214b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x432206
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x432173
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x4321fc
and eax, 0x3f
test bl, 8
jne 0x432199
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 0x4321fc
test bl, 4
jne 0x4321c8
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 0x4321fc
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 0x432217
cmp dword [esi + 0x9c], 0x6e
jmp 0x43222c
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 0x43227f
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 0x432101
jmp 0x43227f
cmp dword [ebp + 0x88], 0
je 0x43227f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43227f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43a18c
jmp 0x42efca
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x43230a
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x4322e2
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 0x43230a
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 0x4322a1
jmp 0x43230a
cmp dword [ebp + 0x88], 0
je 0x43230a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43230a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43920b
jmp 0x42efca
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.0x432355
movzx eax, byte [eax + 0x43cf98]
jmp dword [eax*4 + 0x43cf90]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x432378
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x432383
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4d65c0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4d65cc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x43241a
mov dword [esi + 0x8c], closesocket
jmp 0x43241a
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 0x432400
mov dword [esi + 0x8c], closesocket
add dword [esi + 0xc], 5
jmp 0x43241a
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x432555
jmp 0x432430
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x43252a
cmp edx, 0xc0
jb 0x43252a
test dl, 0x20
jne 0x432478
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x432527
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x43249f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x432525
test dl, 8
jne 0x4324c2
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 0x432525
test dl, 4
jne 0x4324f1
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 0x432525
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.0043e6f0
add esp, 0xc
test eax, eax
je case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x432430
jmp 0x43255c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42efd1
cmp dword [esp + 0x84], 0
jne 0x43c358
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 0x4326ed
jmp 0x4325a0
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4326c3
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x43268b
cmp edx, 0xc0
jb 0x43268b
test dl, 0x20
jne 0x4325ec
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x43268b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x43260b
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x432681
and eax, 0x3f
test dl, 8
jne 0x43262b
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x432681
test dl, 4
jne 0x432654
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 0x432681
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.0043e6f0
add esp, 0xc
test eax, eax
je 0x4326ed
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x4325a0
jmp 0x4326ed
cmp dword [ebp + 0x88], 0
je 0x4326e6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4326e6
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x42ff36
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x42efd1
jmp 0x439fa1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x4328d9
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 0x432860
test al, 0x20
jne 0x432760
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 0x432860
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x43279a
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 0x432860
test al, 8
jne 0x4327d6
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 0x432860
test al, 4
mov eax, dword [esi + 0x80]
jne 0x43281b
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 0x432860
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 0x432899
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
cmp edx, edi
jb case.0x435f56.14
cmp edx, dword [ebp + 0x84]
jbe case.0x435f56.14
jmp 0x42ff22
test ecx, ecx
jle 0x4328ce
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.0x435f56.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x4328a0
dec dword [esi + 0x88]
jmp 0x42efca
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x432926
cmp dword [ebp + 0x88], ebx
je 0x42f78d
cmp edi, dword [ebp + 0x84]
jbe 0x42f78d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42f78d
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438830
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 0x432c3b
jmp 0x42fdcb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4305e0
cmp dword [esp + 0x8c], ebx
je 0x432c1c
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 0x432aab
test al, 0x20
jne 0x4329ab
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 0x432aab
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x4329e5
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 0x432aab
test al, 8
jne 0x432a21
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 0x432aab
test al, 4
mov eax, dword [esi + 0x80]
jne 0x432a66
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 0x432aab
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 0x432ad9
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x42fdcb
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x42efca
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x432bbb
test bl, 0x20
jne 0x432b09
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x432bb8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x432b30
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x432bb6
test bl, 8
jne 0x432b53
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 0x432bb6
test bl, 4
jne 0x432b82
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 0x432bb6
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 0x42efca
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4d88f0]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x432bf5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
mov eax, dword [eax*8 + 0x4d7274]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x42efd1
jmp 0x42fdcb
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 0x42fdcb
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x42efca
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 0x432d6d
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 0x432ca4
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x432caf
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x432d6d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x432d74
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x432d74
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x432d74
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 + 0x4d65c0]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4d65cc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x432d6d
mov dword [esi + 0x8c], closesocket
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x4331e8
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 0x432ebb
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x432dd1
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 0x432ebb
test bl, 0x10
jne 0x432e06
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 0x432ebb
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 0x432e44
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 0x432ebb
test bl, 4
jne 0x432e7d
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 0x432ebb
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 0x4331f7
cmp dword [esi + 0x9c], 0x2e
jb 0x432f2c
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4d88f0]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x432f03
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
mov ecx, dword [eax*8 + 0x4d7274]
add ecx, edi
cmp ecx, edi
je 0x432f2c
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.0043e690
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x432f33
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x433066
jmp 0x432f50
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 0x432fd4
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x432f88
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x432f91
add ecx, 4
add edx, 4
sub edi, 4
jae 0x432f77
cmp edi, 0xfffffffc
je 0x433048
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x432fca
cmp edi, 0xfffffffd
je 0x433048
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x432fca
cmp edi, 0xfffffffe
je 0x433048
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x432fca
cmp edi, 0xffffffff
je 0x433048
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x433048
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x431cdc
sub ecx, ebx
cmp edi, ecx
ja 0x431cdc
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x433006
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43300b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x432ff5
cmp edi, 0xfffffffc
je 0x433048
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x431cdc
cmp edi, 0xfffffffd
je 0x433048
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x431cdc
cmp edi, 0xfffffffe
je 0x433048
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x431cdc
cmp edi, 0xffffffff
je 0x433048
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x431cdc
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x432f50
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x42efd1
cmp dword [esp + 0x84], 0
jne 0x43c369
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 0x4331d5
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 0x43312c
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x4330e8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4330f1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4330d7
cmp edi, 0xfffffffc
je 0x433188
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x433122
cmp edi, 0xfffffffd
je 0x433188
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x433122
cmp edi, 0xfffffffe
je 0x433188
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x433122
cmp edi, 0xffffffff
je 0x433188
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x433188
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x4331a8
sub ecx, ebx
cmp edi, ecx
ja 0x4331a8
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x433156
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43315b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x433145
cmp edi, 0xfffffffc
je 0x433188
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4331a8
cmp edi, 0xfffffffd
je 0x433188
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4331a8
cmp edi, 0xfffffffe
je 0x433188
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4331a8
cmp edi, 0xffffffff
je 0x433188
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4331a8
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x4330b0
jmp 0x4331d5
cmp dword [ebp + 0x88], 0
je 0x4331d5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4331d5
cmp eax, dword [ebp + 0x84]
jbe 0x4331d5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43a34c
jmp 0x42efca
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x4332ef
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 0x433254
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x432047
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x433247
cmp dword [esi + 0x94], ecx
jne case.0x435f56.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x433224
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42efca
cmp dword [esp + 0x84], 0
je 0x43327b
mov dword [esi + 0x84], eax
jmp 0x4392ab
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4332e2
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4332ba
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4332ab
cmp dword [esi + 0x94], ecx
jne 0x4332e2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x433290
jmp 0x4332e2
cmp dword [ebp + 0x88], 0
je 0x4332e2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4332e2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
test edi, edi
je 0x4392eb
jmp 0x42efca
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x43332a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433300
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x42efd1
cmp dword [esp + 0x84], 0
je 0x433358
mov dword [esi + 0x84], eax
jmp 0x439378
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4333bc
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x433394
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x4333bc
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x433370
jmp 0x4333bc
cmp dword [ebp + 0x88], 0
je 0x4333bc
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4333bc
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x4393b8
jmp 0x42efd1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x4333f4
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x435f56.14
jmp 0x42ff22
test edi, edi
je 0x43366c
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 0x4334f5
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x433432
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4334f2
test bl, 0x10
jne 0x433453
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 0x4334f2
test bl, 8
jne 0x43347e
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 0x4334f5
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x4334b7
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 0x4334f2
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 0x4335e8
test dl, 0x20
jne 0x43352f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4335de
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x433556
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4335dc
test dl, 8
jne 0x433579
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 0x4335dc
test dl, 4
jne 0x4335a8
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 0x4335dc
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 0x433605
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x42efd1
jmp 0x42fdcb
cmp ebx, 0x7f
jbe 0x433642
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4d88f0]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x43362d
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
mov ecx, dword [eax*8 + 0x4d7274]
add ecx, ebx
jmp 0x433649
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x42fdcb
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x42efd1
jmp 0x42fdcb
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.0x435f56.14
cmp dword [esi + 0x9c], 0x20
jne 0x432c3b
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x435f56.14
add dword [esi + 0xc], 2
jmp 0x42efca
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 0x433806
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 0x43370b
cmp al, 0x4f
je 0x43370b
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x433806
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x433806
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x433806
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x433806
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x433806
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 0x433806
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 + 0x4d65c0]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4d65cc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x433806
mov dword [esi + 0x8c], closesocket
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 0x433961
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x433961
test al, 0x20
jne 0x433858
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 0x433961
test al, 0x10
jne 0x43388b
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 0x433961
test al, 8
jne 0x4338cd
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 0x433961
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x433918
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 0x43395a
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 0x433d85
test edx, edx
je 0x4339bc
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x4339bc
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4d88f0]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x4339a0
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
mov eax, dword [eax*8 + 0x4d7274]
add eax, edi
jmp 0x4339c9
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x433b10
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x433b5b
jmp 0x4339f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x433ae9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x433a2a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x433ae6
test cl, 0x10
jne 0x433a4b
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 0x433ae6
test cl, 8
jne 0x433a75
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 0x433ae6
test cl, 4
jne 0x433aab
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 0x433ae6
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.0x435f56.14
cmp dword [esi + 0x94], ecx
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4339f0
jmp 0x433b54
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x433b54
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x432047
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x435f56.14
cmp dword [esi + 0x94], ecx
je case.0x435f56.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x433b20
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42efca
test ebx, ebx
je 0x433b84
test edx, edx
jne 0x43c37a
mov dword [esi + 0x84], eax
jmp 0x43944f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x433d0d
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x433cfa
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x433cd2
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x433cae
test dl, 0x20
jne 0x433be2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x433cae
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x433c0c
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 0x433cac
test dl, 8
jne 0x433c38
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 0x433cac
test dl, 4
jne 0x433c70
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 0x433cac
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 0x433cfa
cmp dword [esi + 0x94], edx
je 0x433cfa
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x433ba4
jmp 0x433cfa
cmp dword [ebp + 0x88], 0
je 0x433cfa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x433cfa
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43a52c
jmp 0x42efca
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x433d72
jmp 0x433d20
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x433d4a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x433d72
cmp dword [esi + 0x94], ecx
je 0x433d72
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x433d20
jmp 0x433d72
cmp dword [ebp + 0x88], 0
je 0x433d72
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x433d72
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43948f
jmp 0x42efca
test edx, edx
je 0x433ea7
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x433ee5
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x433e8c
test dl, 0x20
jne 0x433dda
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x433e89
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x433e01
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x433e87
test dl, 8
jne 0x433e24
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 0x433e87
test dl, 4
jne 0x433e53
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 0x433e87
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.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x433da0
jmp 0x433ede
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x433ee5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x433eb4
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x42efca
cmp dword [esp + 0x84], 0
je 0x433f14
test edx, edx
jne 0x43c38f
mov dword [esi + 0x84], eax
jmp 0x43951c
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x434098
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x434085
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x43405d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x434041
test dl, 0x20
jne 0x433f72
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x434041
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x433f9c
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 0x43403f
test dl, 8
jne 0x433fcb
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 0x43403f
test dl, 4
jne 0x434003
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 0x43403f
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 0x434085
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x433f34
jmp 0x434085
cmp dword [ebp + 0x88], 0
je 0x434085
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x434085
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43a6f0
jmp 0x42efca
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4340f2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4340ca
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x4340f2
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4340a6
jmp 0x4340f2
cmp dword [ebp + 0x88], 0
je 0x4340f2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4340f2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43955c
jmp 0x42efca
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 0x434244
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 0x434244
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x434244
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], closesocket
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x434244
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x434244
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 0x434244
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x4d656b]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x4d6577]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x434244
mov dword [esi + 0x8c], closesocket
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 0x434266
cmp ecx, 0xf
je 0x434266
mov dword [esi + 0x60], 0xffffffff
jmp 0x434289
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 0x43622b
mov eax, dword [esi + 0x60]
test eax, eax
js 0x435038
cmp eax, 0xa
ja case.default.0x43154a
jmp dword [eax*4 + 0x43cfa4]
cmp dword [esi + 0x68], ebx
jne 0x42fdcb
mov edx, 1
cmp ecx, edx
jl 0x43622b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x43430f
cmp ecx, 0xc0
jb 0x43430f
test cl, 0x20
jne 0x4342eb
inc eax
jmp 0x43430c
test cl, 0x10
jne 0x4342f5
add eax, 2
jmp 0x43430c
test cl, 8
jne 0x4342ff
add eax, 3
jmp 0x43430c
test cl, 4
jne 0x434309
add eax, 4
jmp 0x43430c
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4342c8
jmp 0x43622b
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
mov eax, dword [esi + 8]
jmp 0x430575
mov edi, 1
cmp ecx, edi
jl 0x43622b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x43443a
cmp ebx, 0xc0
jb 0x43443a
test bl, 0x20
jne 0x434388
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x434437
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4343af
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x434435
test bl, 8
jne 0x4343d2
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 0x434435
test bl, 4
jne 0x434401
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 0x434435
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43445c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp eax, 9
je 0x434481
cmp eax, 5
je 0x434481
cmp eax, 8
je 0x434481
xor eax, eax
jmp 0x434486
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434340
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x43622b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4345a8
cmp ebx, 0xc0
jb 0x4345a8
test bl, 0x20
jne 0x4344f8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4345a5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43451f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4345a5
test bl, 8
jne 0x434542
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 0x4345a5
test bl, 4
jne 0x434571
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 0x4345a5
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x4345ca
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4344b0
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x43622b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x43470b
cmp ebx, 0xc0
jb 0x43470b
test bl, 0x20
jne 0x43465b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x434708
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x434682
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x434708
test bl, 8
jne 0x4346a5
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 0x434708
test bl, 4
jne 0x4346d4
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 0x434708
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43472d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434613
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x43622b
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x434868
cmp ebx, 0xc0
jb 0x434868
test bl, 0x20
jne 0x4347b8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x434865
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4347df
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x434865
test bl, 8
jne 0x434802
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 0x434865
test bl, 4
jne 0x434831
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 0x434865
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43488a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7270]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434770
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x43622b
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4349ca
cmp ebx, 0xc0
jb 0x4349ca
test bl, 0x20
jne 0x434918
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4349c7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43493f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4349c5
test bl, 8
jne 0x434962
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 0x4349c5
test bl, 4
jne 0x434991
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 0x4349c5
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x4349ec
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x434a13
cmp eax, 3
je 0x434a13
xor eax, eax
jmp 0x434a18
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4348d0
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x43622b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x434b3a
cmp ebx, 0xc0
jb 0x434b3a
test bl, 0x20
jne 0x434a88
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x434b37
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x434aaf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x434b35
test bl, 8
jne 0x434ad2
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 0x434b35
test bl, 4
jne 0x434b01
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 0x434b35
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 0x434b7d
je case.0x434b99.8192
cmp ebx, 0x85
ja 0x434b69
je case.0x434b99.8192
cmp ebx, 9
jb case.0x434b99.8203
cmp ebx, 0xd
jbe case.0x434b99.8192
cmp ebx, 0x20
jmp 0x434bae
cmp ebx, 0xa0
je case.0x434b99.8192
cmp ebx, 0x1680
jmp 0x434bae
cmp ebx, 0x202f
ja 0x434ba0
je case.0x434b99.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x434b99.8203
movzx eax, byte [eax + 0x43cfd8]
jmp dword [eax*4 + 0x43cfd0]
cmp ebx, 0x205f
je case.0x434b99.8192
cmp ebx, 0x3000
je case.0x434b99.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x434bd2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp dword [eax*4 + 0x4d7080], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x435f56.14
jmp 0x434c06
cmp dword [esi + 0x68], 0
jne case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434a40
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x43622b
jmp 0x434c30
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x434d28
cmp ebx, 0xc0
jb 0x434d28
test bl, 0x20
jne 0x434c78
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x434d25
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x434c9f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x434d25
test bl, 8
jne 0x434cc2
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 0x434d25
test bl, 4
jne 0x434cf1
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 0x434d25
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 + 0x4d88f0]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x434d4b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x434d77
cmp eax, 3
je 0x434d77
cmp ebx, 0x5f
je 0x434d77
xor eax, eax
jmp 0x434d7c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x435f56.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x434c30
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x43622b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x434e9c
cmp edx, 0xc0
jb 0x434e9c
test dl, 0x20
jne 0x434dec
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x434e99
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434e13
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x434e99
test dl, 8
jne 0x434e36
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 0x434e99
test dl, 4
jne 0x434e65
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 0x434e99
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 + 0x4d7130]
lea eax, [eax*4 + 0x4d7130]
cmp edx, ecx
jb 0x434ebe
lea eax, [eax + 4]
cmp edx, ecx
je 0x434eda
mov ecx, dword [eax]
cmp edx, ecx
jae 0x434eb1
cmp dword [esi + 0x68], 0
je case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434da4
jmp 0x43622b
cmp dword [esi + 0x68], 0
jne case.0x435f56.14
jmp 0x434ec8
mov ebx, 1
cmp ecx, ebx
jl 0x43622b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x434fed
cmp edx, 0xc0
jb 0x434fed
test dl, 0x20
jne 0x434f3b
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x434fea
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x434f62
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x434fe8
test dl, 8
jne 0x434f85
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 0x434fe8
test dl, 4
jne 0x434fb4
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 0x434fe8
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 0x435018
cmp edx, 0x40
je 0x435018
cmp edx, 0x60
je 0x435018
cmp edx, 0xa0
jb 0x43500c
cmp edx, 0xd7ff
jbe 0x435018
cmp edx, 0xe000
jae 0x435018
xor eax, eax
jmp 0x43501d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x434ef3
jmp 0x43622b
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x435363
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x43622b
jmp 0x435060
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x432047
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x435160
cmp ebx, 0xc0
jb 0x435160
test bl, 0x20
jne 0x4350a9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x43515d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4350d0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x435156
test bl, 8
jne 0x4350f3
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 0x435156
test bl, 4
jne 0x435122
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 0x435156
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x435182
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7272]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43531d
jmp 0x4351b0
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4352ae
cmp ebx, 0xc0
jb 0x4352ae
test bl, 0x20
jne 0x4351e5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4352a6
test bl, 0x10
jne 0x43520a
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 0x4352a6
test bl, 8
jne 0x435238
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 0x4352a6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x435272
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 0x4352a6
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x4352d0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx ecx, byte [eax*8 + 0x4d7272]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4d70f8], eax
je 0x435316
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 0x4351b0
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x43534a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43534a
cmp eax, dword [ebp + 0x84]
jbe 0x43534a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x435060
jmp 0x43622b
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x435e2f
cmp eax, 0xf
ja case.0x438377.9
jmp dword [eax*4 + 0x43d004]
mov ebx, 1
cmp ecx, ebx
jl 0x436232
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x432047
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4353c7
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne case.0x435f56.14
jmp 0x4353eb
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4353eb
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4353eb
cmp edx, 1
je case.0x435f56.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x435f56.14
cmp dword [ebp + 0x88], 0
je 0x435426
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x435426
cmp dword [ebp + 0x18], 0
jne 0x435426
cmp dword [edi], 2
jne 0x435426
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x435426
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x435442
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435442
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x435431
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435392
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x43431d
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x435498
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435498
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x435480
inc edi
cmp edi, dword [esi + 0x90]
jle 0x435464
jmp 0x43622b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x42fdcb
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x436232
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4355bc
test dl, 0x20
jne 0x43550a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4355b9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x435531
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4355b7
test dl, 8
jne 0x435554
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 0x4355b7
test dl, 4
jne 0x435583
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 0x4355b7
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 0x4355e0
je 0x4355cd
cmp edx, 0xa
je 0x435601
lea eax, [edx - 0xb]
jmp 0x4355ee
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x435601
cmp byte [eax], 0xa
jne 0x435601
inc eax
mov dword [esi + 8], eax
jmp 0x435601
cmp edx, 0x85
je 0x4355f7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x435f56.14
cmp dword [ebp + 0x68], 0
jne case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4354d0
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x436232
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x43570c
test dl, 0x20
jne 0x43565a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x435709
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x435681
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x435707
test dl, 8
jne 0x4356a4
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 0x435707
test dl, 4
jne 0x4356d3
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 0x435707
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 0x43573e
je case.0x435f56.14
cmp edx, 0xa0
ja 0x435736
je case.0x435f56.14
cmp edx, 9
je case.0x435f56.14
cmp edx, 0x20
jmp 0x43576e
cmp edx, 0x1680
jmp 0x43576e
cmp edx, 0x205f
ja 0x435768
je case.0x435f56.14
cmp edx, 0x2000
jb 0x435774
cmp edx, 0x200a
jbe case.0x435f56.14
cmp edx, 0x202f
jmp 0x43576e
cmp edx, 0x3000
je case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435620
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x436232
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x43587f
test dl, 0x20
jne 0x4357cd
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43587c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4357f4
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x43587a
test dl, 8
jne 0x435817
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 0x43587a
test dl, 4
jne 0x435846
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 0x43587a
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 0x4358a5
je 0x4358d7
cmp edx, 0xa0
ja 0x43589d
je 0x4358d7
cmp edx, 9
je 0x4358d7
cmp edx, 0x20
jmp 0x4358d1
cmp edx, 0x1680
jmp 0x4358d1
cmp edx, 0x205f
ja 0x4358cb
je 0x4358d7
cmp edx, 0x2000
jb case.0x435f56.14
cmp edx, 0x200a
jbe 0x4358d7
cmp edx, 0x202f
jmp 0x4358d1
cmp edx, 0x3000
jne case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435793
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x436232
jmp 0x435900
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4359ec
test dl, 0x20
jne 0x43593a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4359e9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x435961
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4359e7
test dl, 8
jne 0x435984
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 0x4359e7
test dl, 4
jne 0x4359b3
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 0x4359e7
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 0x435a04
je case.0x435f56.14
cmp edx, 0xa
jb 0x435a18
cmp edx, 0xd
jmp 0x435a12
cmp edx, 0x2028
jb 0x435a18
cmp edx, 0x2029
jbe case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435900
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x436232
jmp 0x435a40
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x435b2c
test dl, 0x20
jne 0x435a7a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x435b29
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x435aa1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x435b27
test dl, 8
jne 0x435ac4
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 0x435b27
test dl, 4
jne 0x435af3
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 0x435b27
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 0x435b3e
je 0x435b4d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x435b47
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435a40
jmp 0x43622b
mov ebx, 1
cmp ecx, ebx
jl 0x436232
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x432047
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x435c5c
test dl, 0x20
jne 0x435baa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x435c59
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x435bd1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x435c57
test dl, 8
jne 0x435bf4
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 0x435c57
test dl, 4
jne 0x435c23
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 0x435c57
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 0x435c71
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x435f56.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435b70
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43431d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x435f56.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x435f56.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x435c90
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x43431d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x435d03
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x435f56.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x435d28
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435d28
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x435d10
inc edi
cmp edi, dword [esi + 0x90]
jle 0x435ce0
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43431d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x435f56.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x435f56.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x435d43
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x43431d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x435db3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x435f56.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x435dd8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x435dd8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x435dc0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x435d90
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43431d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x435f56.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x435f56.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x435df3
jmp 0x43622b
cmp eax, 0xf
ja case.0x438377.9
jmp dword [eax*4 + 0x43d044]
mov ebx, 1
cmp ecx, ebx
jl 0x436232
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x432047
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x435e80
push 0
push edi
push eax
push edx
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne case.0x435f56.14
jmp 0x435ea4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x435ea4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x435ea4
cmp edx, 1
je case.0x435f56.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x435f56.14
cmp dword [ebp + 0x88], 0
je 0x435edf
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x435edf
cmp dword [ebp + 0x18], 0
jne 0x435edf
cmp dword [edi], 2
jne 0x435edf
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x435edf
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x435e50
jmp 0x43622b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x4354b6
cmp dword [ebp + 0x88], ebx
je case.0x435f56.14
cmp edx, dword [ebp + 0x84]
jbe case.0x435f56.14
jmp 0x42ff22
mov edx, 1
cmp ecx, edx
jl 0x43622b
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x43431d
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x435f56.14
movzx eax, byte [eax + 0x43d094]
jmp dword [eax*4 + 0x43d084]
cmp ecx, dword [ebp + 0x78]
jae case.0x435f56.10
cmp byte [ecx], 0xa
jne case.0x435f56.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x435f56.10
cmp dword [ebp + 0x68], ebx
jne case.0x435f56.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x435f30
jmp 0x43622b
mov edx, 1
cmp ecx, edx
jl 0x43622b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x435f56.14
cmp ecx, 0x20
je case.0x435f56.14
cmp ecx, 0xa0
je case.0x435f56.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x435f93
jmp 0x43622b
mov edx, 1
cmp ecx, edx
jl 0x43622b
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x436009
cmp ecx, 0x20
je 0x436009
cmp ecx, 0xa0
jne case.0x435f56.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x435fe0
jmp 0x43622b
mov edx, 1
cmp ecx, edx
jl 0x43622b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x436051
cmp ecx, 0xd
jle case.0x435f56.14
cmp ecx, 0x85
je case.0x435f56.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x436024
jmp 0x43622b
mov edx, 1
cmp ecx, edx
jl 0x43622b
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x435f56.14
cmp ecx, 0xd
jle 0x43609d
cmp ecx, 0x85
jne case.0x435f56.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x436070
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
jmp 0x4360c0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x435f56.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4360c0
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x435f56.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x436100
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x435f56.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x436140
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x435f56.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x436180
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
jmp 0x4361c0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x435f56.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4361c0
jmp 0x43622b
mov edi, 1
cmp ecx, edi
jl 0x436232
jmp 0x436200
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x43431d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x435f56.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x436200
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x42efca
cmp dword [esp + 0x84], 0
je 0x436292
mov eax, dword [esi + 0x60]
test eax, eax
js 0x436275
cmp eax, 0xa
ja case.0x438377.9
jmp dword [eax*4 + 0x43d110]
mov esi, dword [esi]
test esi, esi
je case.default.0x438844
mov edi, 0xfffffff2
jmp 0x438830
cmp dword [esi + 0x7c], 0x16
je 0x43c463
test edx, edx
jne 0x43c44e
mov dword [esi + 0x84], ecx
jmp 0x4396c5
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4372cb
cmp eax, 0xa
ja case.0x438377.9
jmp dword [eax*4 + 0x43d13c]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4372b8
mov ebx, dword [esp + 0x8c]
jmp 0x4362d0
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x43633b
movzx ecx, byte [edx]
test ebx, ebx
je 0x43631e
cmp ecx, 0xc0
jb 0x43631e
test cl, 0x20
jne 0x4362f8
mov eax, 2
jmp 0x43631e
test cl, 0x10
jne 0x436304
mov eax, 3
jmp 0x43631e
test cl, 8
jne 0x436310
mov eax, 4
jmp 0x43631e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x4372b8
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4362d0
jmp 0x4372b8
cmp dword [ebp + 0x88], 0
je 0x4372b8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4372b8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4372b8
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x438830
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4364fe
movzx ebx, byte [edi]
test edx, edx
je 0x43647c
cmp ebx, 0xc0
jb 0x43647c
test bl, 0x20
jne 0x4363de
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x436474
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4363fd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x436474
and eax, 0x3f
test bl, 8
jne 0x43641d
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x436474
test bl, 4
jne 0x436446
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 0x436474
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43649e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp eax, 9
je 0x4364c3
cmp eax, 5
je 0x4364c3
cmp eax, 8
je 0x4364c3
xor eax, eax
jmp 0x4364c8
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4372b8
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 0x4363a0
jmp 0x4372b8
cmp dword [ebp + 0x88], 0
je 0x4372b8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4372b8
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4372b8
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438830
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
jmp 0x436560
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4366e2
movzx ebx, byte [edi]
test edx, edx
je 0x436663
cmp ebx, 0xc0
jb 0x436663
test bl, 0x20
jne 0x4365aa
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x43665b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4365d2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x43665b
and eax, 0x3f
test bl, 8
jne 0x4365f8
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 0x43665b
test bl, 4
jne 0x436627
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 0x43665b
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x436685
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4372b8
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 0x436560
jmp 0x4372b8
cmp dword [ebp + 0x88], 0
je 0x4372b8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4372b8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x436523
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4366e2
movzx ebx, byte [edi]
test edx, edx
je 0x43682f
cmp ebx, 0xc0
jb 0x43682f
test bl, 0x20
jne 0x436776
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x436827
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x43679e
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x436827
and eax, 0x3f
test bl, 8
jne 0x4367c4
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 0x436827
test bl, 4
jne 0x4367f3
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 0x436827
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x436851
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4372b8
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 0x436730
jmp 0x4372b8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4366e2
movzx ebx, byte [edi]
test edx, edx
je 0x4369c3
cmp ebx, 0xc0
jb 0x4369c3
test bl, 0x20
jne 0x43690a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4369bb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x436932
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4369bb
and eax, 0x3f
test bl, 8
jne 0x436958
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 0x4369bb
test bl, 4
jne 0x436987
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 0x4369bb
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x4369e5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7270]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4372b8
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 0x4368c0
jmp 0x4372b8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4364fe
movzx ebx, byte [edi]
test edx, edx
je 0x436b33
cmp ebx, 0xc0
jb 0x436b33
test bl, 0x20
jne 0x436a92
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x436b2b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x436ab4
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x436b2b
and eax, 0x3f
test bl, 8
jne 0x436ad4
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x436b2b
test bl, 4
jne 0x436afd
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 0x436b2b
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x436b55
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x436b7c
cmp eax, 3
je 0x436b7c
xor eax, eax
jmp 0x436b81
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4372b8
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 0x436a54
jmp 0x4372b8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4366e2
movzx ebx, byte [edi]
test edx, edx
je 0x436cdd
cmp ebx, 0xc0
jb 0x436cdd
test bl, 0x20
jne 0x436c22
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x436cdd
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x436c4a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x436cd3
and eax, 0x3f
test bl, 8
jne 0x436c70
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 0x436cd3
test bl, 4
jne 0x436c9f
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 0x436cd3
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 0x436d20
je case.0x436d40.8192
cmp ebx, 0x85
ja 0x436d0c
je case.0x436d40.8192
cmp ebx, 9
jb case.0x436d40.8203
cmp ebx, 0xd
jbe case.0x436d40.8192
cmp ebx, 0x20
jmp 0x436d55
cmp ebx, 0xa0
je case.0x436d40.8192
cmp ebx, 0x1680
jmp 0x436d55
cmp ebx, 0x202f
ja 0x436d47
je case.0x436d40.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x436d40.8203
movzx eax, byte [eax + 0x43d170]
jmp dword [eax*4 + 0x43d168]
cmp ebx, 0x205f
je case.0x436d40.8192
cmp ebx, 0x3000
je case.0x436d40.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x436d79
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp dword [eax*4 + 0x4d7080], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4372b8
mov edx, dword [esp + 0x8c]
jmp 0x436db4
cmp dword [esi + 0x68], 0
jne 0x4372b8
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 0x436bd0
jmp 0x4372b8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4366e2
movzx ebx, byte [edi]
test edx, edx
je 0x436f03
cmp ebx, 0xc0
jb 0x436f03
test bl, 0x20
jne 0x436e4a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x436efb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x436e72
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x436efb
and eax, 0x3f
test bl, 8
jne 0x436e98
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 0x436efb
test bl, 4
jne 0x436ec7
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 0x436efb
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 + 0x4d88f0]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x436f26
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x436f52
cmp eax, 3
je 0x436f52
cmp ebx, 0x5f
je 0x436f52
xor eax, eax
jmp 0x436f57
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4372b8
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 0x436e00
jmp 0x4372b8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4372b8
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4370ef
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x437091
cmp edx, 0xc0
jb 0x437091
test dl, 0x20
jne 0x436ff4
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x437089
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x437013
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x437089
and eax, 0x3f
test dl, 8
jne 0x437033
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x437089
test dl, 4
jne 0x43705c
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 0x437089
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 + 0x4d7130]
lea eax, [eax*4 + 0x4d7130]
cmp edx, ecx
jb 0x4370b3
lea eax, [eax + 4]
cmp edx, ecx
je 0x4370e3
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4370a6
cmp dword [esi + 0x68], 0
je 0x4372b8
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 0x436fb0
jmp 0x4372b8
cmp dword [esi + 0x68], 0
jne 0x4372b8
jmp 0x4370bd
cmp dword [ebp + 0x88], 0
je 0x4372b8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4372b8
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x4372b8
jmp 0x42ff36
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4372b8
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x437290
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x437247
cmp edx, 0xc0
jb 0x437247
test dl, 0x20
jne 0x43717d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x437247
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4371a7
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 0x437247
test dl, 8
jne 0x4371d3
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 0x437247
test dl, 4
jne 0x43720b
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 0x437247
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 0x437272
cmp edx, 0x40
je 0x437272
cmp edx, 0x60
je 0x437272
cmp edx, 0xa0
jb 0x437266
cmp edx, 0xd7ff
jbe 0x437272
cmp edx, 0xe000
jae 0x437272
xor ecx, ecx
jmp 0x437277
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x4372b8
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437131
jmp 0x4372b8
cmp dword [ebp + 0x88], 0
je 0x4372b8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4372b8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
je 0x43b76c
jmp 0x42efca
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x437667
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x437618
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4375f0
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x4373f0
cmp ebx, 0xc0
jb 0x4373f0
test bl, 0x20
jne 0x437339
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4373ed
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x437360
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4373e6
test bl, 8
jne 0x437383
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 0x4373e6
test bl, 4
jne 0x4373b2
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 0x4373e6
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x437412
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7272]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4375ad
jmp 0x437440
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x43753e
cmp ebx, 0xc0
jb 0x43753e
test bl, 0x20
jne 0x437475
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x437536
test bl, 0x10
jne 0x43749a
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 0x437536
test bl, 8
jne 0x4374c8
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 0x437536
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x437502
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 0x437536
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x437560
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx ecx, byte [eax*8 + 0x4d7272]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4d70f8], eax
je 0x4375a6
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 0x437440
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x4375da
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4375da
cmp eax, dword [ebp + 0x84]
jbe 0x4375da
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x4372f0
jmp 0x437618
cmp dword [ebp + 0x88], 0
je 0x437618
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x437618
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
cmp dword [esp + 0x80], 0
jne 0x42efca
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cb95
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cb8b
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
add eax, 0xfffffffa
test edx, edx
je 0x43836e
cmp eax, 0xf
ja case.0x438377.9
jmp dword [eax*4 + 0x43d19c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x437756
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4376c9
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x43835b
jmp 0x4376ed
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4376ed
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4376ed
cmp edx, 1
je 0x43835b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x43835b
cmp dword [ebp + 0x88], 0
je 0x437728
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x437728
cmp dword [ebp + 0x18], 0
jne 0x437728
cmp dword [edi], 2
jne 0x437728
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x437728
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x437744
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x437744
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x437733
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x437694
jmp 0x43835b
cmp dword [ebp + 0x88], 0
je 0x43835b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43835b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43835b
jmp 0x42ff36
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x4377e8
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x43835b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x437756
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4377da
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4377da
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4377c2
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x4377b0
jmp 0x43835b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x43835b
cmp eax, dword [ebp + 0x84]
jbe 0x43835b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43835b
jmp 0x436529
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 0x43786f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x43835b
cmp edx, dword [ebp + 0x84]
jbe 0x43835b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x43835b
jmp 0x42ff36
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x437756
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x43799a
test dl, 0x20
jne 0x4378ce
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x43799a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4378f8
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 0x437998
test dl, 8
jne 0x437924
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 0x437998
test dl, 4
jne 0x43795c
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 0x437998
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 0x4379b6
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x43835b
cmp byte [eax], 0xa
jne 0x4379f0
inc eax
jmp 0x4379ed
cmp edx, 0xa
je 0x4379eb
cmp dword [ebp + 0x68], 0
jne 0x43835b
cmp edx, 0xb
je 0x4379eb
cmp edx, 0xc
je 0x4379eb
cmp edx, 0x85
je 0x4379eb
cmp edx, 0x2028
je 0x4379eb
cmp edx, 0x2029
jne 0x43835b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x437890
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437ae8
test dl, 0x20
jne 0x437a4a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x437ae0
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x437a69
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x437ae0
and eax, 0x3f
test dl, 8
jne 0x437a89
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x437ae0
test dl, 4
jne 0x437ab2
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 0x437ae0
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 0x437b0e
je 0x437b3c
cmp edx, 0xa0
ja 0x437b06
je 0x437b3c
cmp edx, 9
je 0x437b3c
cmp edx, 0x20
jmp 0x437b36
cmp edx, 0x1680
jmp 0x437b36
cmp edx, 0x205f
ja 0x437b30
je 0x437b3c
cmp edx, 0x2000
jb 0x437b38
cmp edx, 0x200a
jbe 0x437b3c
cmp edx, 0x202f
jmp 0x437b36
cmp edx, 0x3000
je 0x437b3c
xor edx, edx
jmp 0x437b41
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437a14
jmp 0x43835b
cmp dword [ebp + 0x88], 0
je 0x43835b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x43835b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x43835b
jmp 0x42ff36
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437c80
test dl, 0x20
jne 0x437be2
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x437c78
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x437c01
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x437c78
and eax, 0x3f
test dl, 8
jne 0x437c21
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x437c78
test dl, 4
jne 0x437c4a
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 0x437c78
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 0x437cbf
je 0x437cca
cmp edx, 0xa
jb 0x437c94
cmp edx, 0xd
jbe 0x437cca
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437bb0
jmp 0x43835b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x437c94
mov edx, 1
jmp 0x437c96
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437db7
test dl, 0x20
jne 0x437d19
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x437daf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x437d38
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x437daf
and eax, 0x3f
test dl, 8
jne 0x437d58
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x437daf
test dl, 4
jne 0x437d81
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 0x437daf
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 0x437dcc
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437ce3
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
jmp 0x437e00
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437ed4
test dl, 0x20
jne 0x437e36
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x437ecc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x437e55
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x437ecc
and eax, 0x3f
test dl, 8
jne 0x437e75
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x437ecc
test dl, 4
jne 0x437e9e
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 0x437ecc
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 0x43835b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437e00
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
jmp 0x437f20
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x437ff4
test dl, 0x20
jne 0x437f56
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x437fec
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x437f75
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x437fec
and eax, 0x3f
test dl, 8
jne 0x437f95
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x437fec
test dl, 4
jne 0x437fbe
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 0x437fec
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 0x438009
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x437f20
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x438107
test dl, 0x20
jne 0x438069
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4380ff
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x438088
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4380ff
and eax, 0x3f
test dl, 8
jne 0x4380a8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4380ff
test dl, 4
jne 0x4380d1
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 0x4380ff
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 0x43835b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x438033
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x438224
test dl, 0x20
jne 0x438186
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43821c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4381a5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43821c
and eax, 0x3f
test dl, 8
jne 0x4381c5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43821c
test dl, 4
jne 0x4381ee
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 0x43821c
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 0x438239
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x438150
jmp 0x43835b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x43835b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x437b6a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x438337
test dl, 0x20
jne 0x438299
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x43832f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4382b8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x43832f
and eax, 0x3f
test dl, 8
jne 0x4382d8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x43832f
test dl, 4
jne 0x438301
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 0x43832f
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 0x43835b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x43835b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x438263
cmp dword [esp + 0x80], 0
je 0x43ac28
jmp 0x42efca
cmp eax, 0xf
ja case.0x438377.9
jmp dword [eax*4 + 0x43d1dc]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x438807
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x438434
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4383c0
push 0
push edi
push eax
push edx
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x438807
jmp 0x4383e4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4383e4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4383e4
cmp edx, 1
je 0x438807
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x438807
cmp dword [ebp + 0x88], 0
je 0x43841f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x43841f
cmp dword [ebp + 0x18], 0
jne 0x43841f
cmp dword [edi], 2
jne 0x43841f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x43841f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x438390
jmp 0x438807
cmp dword [ebp + 0x88], 0
je 0x438807
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x438807
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x438807
jmp 0x42ff36
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 0x4384b8
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x438807
cmp edx, dword [ebp + 0x84]
jbe 0x438807
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x438807
jmp 0x42ff36
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x438807
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x438807
jmp 0x4384e0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x438434
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x43850b
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x438807
cmp byte [eax], 0xa
jne 0x438535
inc eax
jmp 0x438532
cmp eax, 0xa
je 0x43852f
cmp dword [ebp + 0x68], 0
jne 0x438807
cmp eax, 0xb
je 0x43852f
cmp eax, 0xc
je 0x43852f
cmp eax, 0x85
jne 0x438807
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x4384e0
jmp 0x438807
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x438807
jmp 0x438560
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x438434
mov al, byte [ecx]
cmp al, 9
je 0x438807
cmp al, 0x20
je 0x438807
cmp al, 0xa0
je 0x438807
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x438560
jmp 0x438807
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x438807
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x438434
mov al, byte [ecx]
cmp al, 9
je 0x4385ce
cmp al, 0x20
je 0x4385ce
cmp al, 0xa0
jne 0x438807
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4385b0
jmp 0x438807
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x438807
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x438434
mov al, byte [ecx]
cmp al, 0xa
jb 0x438616
cmp al, 0xd
jbe 0x438807
cmp al, 0x85
je 0x438807
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4385f4
jmp 0x438807
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x438807
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x438434
mov al, byte [ecx]
cmp al, 0xa
jb 0x438807
cmp al, 0xd
jbe 0x438662
cmp al, 0x85
jne 0x438807
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x438640
jmp 0x438807
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x438807
jmp 0x438690
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x438434
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x438807
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x438690
jmp 0x438807
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x438807
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x438434
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x438807
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4386d2
jmp 0x438807
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x438807
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x438434
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x438807
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x438714
jmp 0x438807
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x438807
jmp 0x438760
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x438434
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x438807
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x438760
jmp 0x438807
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x438807
jmp 0x4387a0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x438434
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x438807
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4387a0
jmp 0x438807
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x438807
jmp 0x4387e0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x438434
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x438807
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4387e0
cmp dword [esp + 0x80], 0
je 0x43986a
jmp 0x42efca
mov esi, dword [esi]
test esi, esi
je 0x43cce1
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.0x438844
jmp dword [eax*4 + 0x43d21c]
cmp edi, 0xfffffc1b
je 0x438916
cmp edi, 0xfffffc20
jne 0x438893
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.0x438844.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x43888f
cmp byte [ecx], 0x77
jne case.0x438844.49
xor edi, edi
jmp 0x43889b
test edi, edi
jne case.0x438844.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 0x438916
cmp dword [esi + 0x9c], 0x88
jb 0x4388e1
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c66a
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c660
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x438d0c
mov edx, dword [esp + 0x8c]
jmp 0x438834
cmp edi, 0xfffffc20
jne 0x4389d3
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 0x438a21
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x43899e
cmp byte [ecx], 0x77
jne 0x438a21
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 0x438a37
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438834
test edi, edi
je 0x43899e
cmp edi, 0xfffffc1b
jne 0x438a21
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x438a13
cmp al, 0x77
jne 0x438a04
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 0x4389f0
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 0x438d0c
mov edx, dword [esp + 0x8c]
jmp 0x438834
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x438a89
cmp eax, 0x81
je 0x438a89
cmp dword [ebp + 0x6c], 0
jne 0x438a93
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 0x438a93
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4d6f68]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x42ef50
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 0x43c68c
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c682
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
cmp edi, 1
jne 0x438b53
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x438af0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x438b03
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 0x438b39
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 0x438b20
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x4d6f68]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x42f3fe.145
test edi, edi
je 0x438b63
cmp edi, 0xfffffc20
jne case.0x438844.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x438b79
movzx eax, byte [edx + 0x4d6f68]
jmp 0x438b7c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x438b99
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x42efd1
cmp dword [esi + 0x9c], 0x8c
jne 0x42ef50
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c6ae
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c6a4
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
cmp edi, 1
je 0x438c92
cmp edi, 0xfffffc19
je 0x438c92
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x438c3a
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.0x438844.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x438c42
cmp byte [ecx], 0x77
jmp 0x438c3c
test edi, edi
jne case.0x438844.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 0x438c98
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c6c7
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c6bd
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x438cb1
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438834
cmp dword [esi + 0x58], 0
je 0x43c2ee
mov esi, dword [esi]
test esi, esi
je 0x43cc86
mov edi, 1
jmp 0x438834
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x438d7d
je 0x438d16
cmp edi, 0xfffffc19
je 0x4395b3
cmp edi, 0xfffffc1b
jle case.0x438844.49
cmp edi, 0xfffffc1f
jle 0x438d3e
mov esi, dword [esi]
test esi, esi
jne 0x438834
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 0x438d3e
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x438d90
cmp byte [ecx], 0x77
je 0x438d90
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 0x438d41
cmp dword [esi + 0x58], 0
je 0x438fc7
mov esi, dword [esi]
test esi, esi
je 0x43cc86
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x438834
mov eax, edi
sub eax, 0
je 0x438d90
dec eax
je 0x4395b3
jmp case.0x438844.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 0x438d58
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c6dd
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c6d3
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
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 0x43c31c
cmp edi, 0xfffffc19
je 0x43c31c
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x438e49
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x42fdcb
push ecx
call dword [0x66c7b8]
add esp, 4
jmp 0x42fdcb
test edi, edi
je 0x438e73
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x438e64
push ecx
call dword [0x66c7b8]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x438d0c
jmp 0x438829
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 0x438ed9
cmp dword [esi + 0x58], 0
je 0x438ea4
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c723
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c719
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x438e29
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x438f33
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c771
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c767
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x438834
cmp al, 0x88
jb 0x43c474
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c793
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c789
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x438834
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x43cc93
mov edi, 0xfffffc1b
jmp 0x438834
test edi, edi
jne case.0x438844.49
mov edx, dword [esi + 0x2c]
jmp 0x438fb0
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 0x438fb0
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x42efca
test edi, edi
je 0x430844
jmp case.0x438844.49
test edi, edi
je 0x438f7f
jmp case.0x438844.49
cmp edi, 0xfffffc1b
jne 0x438ffb
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x438ffd
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x439deb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c7b5
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c7ab
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x438834
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439070
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0043d470
add esp, 0x14
test eax, eax
jns 0x4390d7
cmp eax, 0xfffffffe
jne 0x439099
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x43abb1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43abb1
cmp eax, dword [ebp + 0x84]
jbe 0x43abb1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x431dee
jmp 0x43abb1
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c7da
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c7d0
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x438834
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x435f56.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c7f3
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c7e9
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439197
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43ac96
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 0x43abb1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c80c
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c802
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x42fdcb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c825
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c81b
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439271
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43ac96
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4392a1
cmp dword [esi + 0x94], ecx
je 0x4392a1
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438834
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c83e
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c834
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
dec dword [esi + 8]
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c857
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c84d
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439351
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43ac96
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x43abb1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c870
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c866
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
dec dword [esi + 8]
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c889
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c87f
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43941e
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43ac96
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4395b3
cmp dword [esi + 0x94], ecx
je 0x4395b3
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c8a2
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c898
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c8bb
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c8b1
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4394f5
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43ac96
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x43abb1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c8d1
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c8c7
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c8e7
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c8dd
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4395c4
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438834
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x43960b
cmp dword [ebp + 0x88], 0
je 0x4395f3
cmp ecx, dword [ebp + 0x84]
jbe 0x4395f3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x431dee
mov esi, dword [esi]
test esi, esi
je 0x43cc48
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x438834
cmp dword [esi + 0x7c], 0xc
jne 0x439632
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x439654
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x439671
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.0x43964d.15
jmp dword [eax*4 + 0x43d328]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x439632
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x439632
cmp edi, 1
je 0x439671
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x439632
mov esi, dword [esi]
test esi, esi
je 0x43cc48
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x438834
cmp dword [ebp + 0x88], 0
je case.0x43964d.13
cmp edx, dword [ebp + 0x78]
jb case.0x43964d.13
cmp dword [ebp + 0x18], 0
jne case.0x43964d.13
cmp dword [ebp + 0x1c], 2
jne case.0x43964d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x43964d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x431dee
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c8fd
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c8f3
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x43970d.14
movzx eax, byte [ecx + 0x43d378]
jmp dword [eax*4 + 0x43d368]
cmp edx, dword [ebp + 0x78]
jae case.0x43964d.13
cmp byte [edx], 0xa
jne case.0x43964d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x43964d.13
cmp dword [ebp + 0x68], 0
je case.0x43964d.13
jmp case.0x43970d.14
cmp ecx, 9
je case.0x43970d.14
cmp ecx, 0x20
je case.0x43970d.14
cmp ecx, 0xa0
jmp 0x43980a
cmp ecx, 9
je case.0x43964d.13
cmp ecx, 0x20
je case.0x43964d.13
cmp ecx, 0xa0
je case.0x43964d.13
jmp case.0x43970d.14
cmp ecx, 0xa
jb case.0x43964d.13
cmp ecx, 0xd
jbe case.0x43970d.14
cmp ecx, 0x85
jmp 0x43980a
cmp ecx, 0xa
jb case.0x43970d.14
cmp ecx, 0xd
jbe case.0x43964d.13
cmp ecx, 0x85
je case.0x43964d.13
jmp case.0x43970d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x43964d.13
jmp case.0x43970d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x43980a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x43964d.13
jmp case.0x43970d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x43980a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x43964d.13
mov esi, dword [esi]
test esi, esi
je 0x43cc48
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x438834
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x43964d.13
mov esi, dword [esi]
test esi, esi
je 0x43cc48
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x438834
mov esi, dword [esi]
test esi, esi
je case.default.0x438844
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x438834
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x43986a
cmp eax, dword [esi + 0x30]
jbe 0x43986a
cmp byte [eax], 0xa
jne 0x43986a
cmp byte [eax - 1], 0xd
jne 0x43986a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c913
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c909
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
cmp edi, 0xfffffc1a
jne 0x439901
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 0x4398f9
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 0x4398e0
jmp 0x439958
mov dword [esi + 8], eax
jmp 0x43997d
cmp edi, 0xfffffc20
jne 0x439935
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.0x438844.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x43993d
cmp byte [ecx], 0x77
jmp 0x439937
test edi, edi
jne case.0x438844.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 0x439971
cmp dword [esi + 0x5c], 0
jne 0x438fc7
cmp dword [esi + 0x54], 0
jne 0x438fc7
jmp 0x43abb1
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x439993
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x43c955
push 0x134
call dword [0x66c7bc]
mov edx, eax
add esp, 4
test edx, edx
jne 0x43c94b
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
mov esi, dword [esi]
test edi, edi
jne 0x438d04
test esi, esi
je 0x43ccad
mov edi, 0xfffffc1c
jmp 0x438834
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43ccc7
mov edi, 0xfffffc1e
jmp 0x438834
cmp edi, 1
je 0x439a13
cmp edi, 0xfffffc19
jne 0x439a2d
cmp dword [ebp + 0xac], 0
jne 0x439a2d
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x438a21
cmp edi, 0xfffffc1f
jne 0x438a21
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x439a62
test dl, dl
je 0x439a5e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x439a62
add eax, 2
add ecx, 2
test dl, dl
jne 0x439a42
xor eax, eax
jmp 0x439a67
sbb eax, eax
or eax, 1
test eax, eax
jne 0x438a21
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43ccc7
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x438834
cmp edi, 1
je 0x439a9d
cmp edi, 0xfffffc19
jne case.0x438844.51
cmp dword [ebp + 0xac], 0
jne case.0x438844.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x438d04
test esi, esi
je 0x43cca0
mov edi, 0xfffffc1d
jmp 0x438834
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43ccd4
mov edi, 0xfffffc1f
jmp 0x438834
cmp edi, 1
je 0x439b00
cmp edi, 0xfffffc19
jne case.0x438844.54
cmp dword [ebp + 0xac], 0
jne case.0x438844.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x43ccba
mov edi, 0xfffffc20
jmp 0x438834
cmp edi, 0xfffffc1a
jne 0x439ba1
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 0x439b99
mov edx, dword [esi + 0xc]
jmp 0x439b80
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 0x439b80
jmp 0x439c08
mov dword [esi + 8], eax
jmp 0x42fb02
cmp edi, 0xfffffc20
jne 0x439bd5
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.0x438844.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x439bdd
cmp byte [ecx], 0x77
jmp 0x439bd7
test edi, edi
jne case.0x438844.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 0x42fb02
cmp dword [esi + 0x5c], 0
jne 0x439c48
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 0x42efc6
cmp dword [esi + 0x5c], 0
jne 0x42efc6
jmp 0x43abb1
cmp edi, 1
jne 0x439d04
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x439c81
cmp al, 0x77
jne 0x43abb1
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 0x439c81
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 0x42efc6
cmp ecx, dword [esi + 0x38]
je 0x42efc6
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x439d9d
test ecx, ecx
jne 0x43c9be
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c9b4
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x438834
cmp edi, 0xfffffc20
jne 0x439d38
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.0x438844.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x439d40
cmp byte [ecx], 0x77
jmp 0x439d3a
test edi, edi
jne case.0x438844.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 0x439c70
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43c999
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c98f
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test ecx, ecx
jne 0x43c9e3
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c9d9
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x438834
test edi, edi
je 0x43c474
jmp case.0x438844.49
test edi, edi
jne case.0x438844.49
add dword [esi + 0xc], 3
jmp 0x42ef50
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439e19
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x439f1a
cmp ebx, 0xc0
jb 0x439f1a
test bl, 0x20
jne 0x439e5b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x439f17
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x439e85
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x439f1a
mov edx, dword [esi + 8]
test bl, 8
jne 0x439eab
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 0x439f0e
test bl, 4
jne 0x439eda
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 0x439f0e
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.0043e6f0
add esp, 0xc
test eax, eax
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ca05
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43c9fb
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x43abb1
cmp dword [esp + 0x8c], edi
je 0x439fa1
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x439fa1
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x439f95
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ca1e
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ca14
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x439ffb
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x43a0f0
test bl, 0x20
jne 0x43a035
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43a0ed
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43a05f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43a0f0
mov edx, dword [esi + 8]
test bl, 8
jne 0x43a088
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 0x43a0eb
test bl, 4
jne 0x43a0b7
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 0x43a0eb
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 0x43a106
cmp dword [esi + 0x9c], 0x6e
jne 0x43a123
jmp 0x42fdcb
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 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ca37
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ca2d
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x42fdcb
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x43a18c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x43a180
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ca50
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ca46
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a1e6
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
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 0x43a255
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x43a215
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43a21a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x43a204
cmp edi, 0xfffffffc
je 0x43a247
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x43a252
cmp edi, 0xfffffffd
je 0x43a247
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x43a252
cmp edi, 0xfffffffe
je 0x43a247
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x43a252
cmp edi, 0xffffffff
je 0x43a247
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x43a252
mov eax, dword [esi + 0x88]
jmp 0x43a2c0
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x43a300
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x43a300
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x43a287
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x43a28c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x43a276
cmp edi, 0xfffffffc
je 0x43a2bd
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x43a300
cmp edi, 0xfffffffd
je 0x43a2bd
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x43a300
cmp edi, 0xfffffffe
je 0x43a2bd
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x43a300
cmp edi, 0xffffffff
je 0x43a2bd
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x43a300
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 0x43ca69
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ca5f
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
cmp dword [ebp + 0x88], 0
je case.0x435f56.14
cmp ebx, dword [ebp + 0x78]
jb case.0x435f56.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x435f56.14
jmp 0x42ff22
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43a34c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43a340
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ca82
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ca78
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a3b2
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x43a4b2
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x43a3ec
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43a4af
test dl, 0x10
jne 0x43a40e
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 0x43a4b2
mov ecx, dword [esi + 8]
test dl, 8
jne 0x43a43e
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 0x43a4af
test dl, 4
jne 0x43a474
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 0x43a4af
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 0x439671
cmp dword [esi + 0x94], edx
je 0x439671
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43a4f9
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x439105
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x43c91d
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43a52c
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43a520
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ca9b
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43ca91
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a592
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x43a687
test bl, 0x20
jne 0x43a5cc
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43a684
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43a5f6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43a687
mov edx, dword [esi + 8]
test bl, 8
jne 0x43a61f
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 0x43a682
test bl, 4
jne 0x43a64e
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 0x43a682
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 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cab4
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43caaa
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43a6f0
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43a6e4
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cacd
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cac3
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43a756
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x43a792
cmp dword [ebp + 0x88], 0
je 0x43abb1
cmp ecx, dword [ebp + 0x84]
jbe 0x43abb1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x431dee
jmp 0x43abb1
cmp dword [esi + 0x7c], 0xc
jne 0x43a7e4
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x43a7bf
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0043ed60
add esp, 0x14
test eax, eax
jne 0x43abb1
jmp 0x43a7e4
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x43a7e4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x43a7e4
cmp edi, 1
je 0x43abb1
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x43abb1
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x43a8cc
test dl, 0x20
jne 0x43a817
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x43a8c9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x43a83e
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x43a8c7
test dl, 8
jne 0x43a864
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 0x43a8c7
test dl, 4
jne 0x43a893
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 0x43a8c7
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.0x43a8db.15
jmp dword [eax*4 + 0x43d3f4]
cmp dword [ebp + 0x88], 0
je case.0x43a8db.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x43a8db.13
cmp dword [ebp + 0x18], 0
jne case.0x43a8db.13
cmp dword [ebp + 0x1c], 2
jne case.0x43a8db.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x43a8db.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x43a8db.13
jmp 0x431dee
cmp edx, 0xd
ja 0x43a95e
je 0x43a94b
cmp edx, 0xa
je case.0x43a8db.13
jbe 0x43abb1
cmp edx, 0xc
jmp 0x43a978
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x43a8db.13
cmp byte [eax], 0xa
jne case.0x43a8db.13
inc eax
mov dword [esi + 8], eax
jmp case.0x43a8db.13
cmp edx, 0x85
je 0x43a97e
cmp edx, 0x2027
jbe 0x43abb1
cmp edx, 0x2029
ja 0x43abb1
cmp dword [ebp + 0x68], 0
je case.0x43a8db.13
jmp 0x43abb1
cmp edx, 0x180e
ja 0x43a9fd
je 0x43abb1
cmp edx, 0xa0
ja 0x43a9f5
je 0x43abb1
cmp edx, 9
je 0x43abb1
cmp edx, 0x20
je 0x43abb1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43a9e6
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x439105
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x43c91d
cmp edx, 0x1680
jmp 0x43a9b1
cmp edx, 0x205f
ja 0x43aa27
je 0x43abb1
cmp edx, 0x2000
jb case.0x43a8db.13
cmp edx, 0x200a
jbe 0x43abb1
cmp edx, 0x202f
jmp 0x43a9b1
cmp edx, 0x3000
jmp 0x43abab
cmp edx, 0x180e
ja 0x43aa64
je case.0x43a8db.13
cmp edx, 0xa0
ja 0x43aa5c
je case.0x43a8db.13
cmp edx, 9
je case.0x43a8db.13
cmp edx, 0x20
jmp 0x43aa98
cmp edx, 0x1680
jmp 0x43aa98
cmp edx, 0x205f
ja 0x43aa92
je case.0x43a8db.13
cmp edx, 0x2000
jb 0x43abb1
cmp edx, 0x200a
jbe case.0x43a8db.13
cmp edx, 0x202f
jmp 0x43aa98
cmp edx, 0x3000
je case.0x43a8db.13
jmp 0x43abb1
cmp edx, 0x85
ja 0x43aac8
je 0x43abb1
cmp edx, 0xa
jb case.0x43a8db.13
cmp edx, 0xd
jbe 0x43abb1
jmp case.0x43a8db.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x43a8db.13
jmp 0x43abb1
cmp edx, 0x85
ja 0x43aaf8
je case.0x43a8db.13
cmp edx, 0xa
jb 0x43abb1
cmp edx, 0xd
jmp 0x43ab01
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x43a8db.13
jmp 0x43abb1
cmp edx, 0x100
jae case.0x43a8db.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x43a8db.13
jmp 0x43abb1
cmp edx, 0x100
jae 0x43abb1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x43abab
cmp edx, 0x100
jae case.0x43a8db.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x43a8db.13
jmp 0x43abb1
cmp edx, 0x100
jae 0x43abb1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x43abab
cmp edx, 0x100
jae case.0x43a8db.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x43a8db.13
mov esi, dword [esi]
test esi, esi
je 0x43cc48
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x438834
cmp edx, 0x100
jae 0x43abb1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x43a8db.13
mov esi, dword [esi]
test esi, esi
je 0x43cc48
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x438834
mov esi, dword [esi]
test esi, esi
je case.default.0x438844
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x438834
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43ac0c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43ac00
cmp dword [esi + 0x7c], 0x11
jne 0x43ac28
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x43ac28
cmp byte [eax], 0xa
jne 0x43ac28
dec eax
cmp byte [eax], 0xd
jne 0x43ac28
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cae6
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cadc
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43ac8e
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43acae
cmp dword [ebp + 0x88], 0
je 0x4395b3
cmp eax, dword [ebp + 0x84]
jmp 0x43b409
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x43aced
cmp ecx, 0xc0
jb 0x43aced
test cl, 0x20
jne 0x43acc9
inc eax
jmp 0x43acea
test cl, 0x10
jne 0x43acd3
add eax, 2
jmp 0x43acea
test cl, 8
jne 0x43acdd
add eax, 3
jmp 0x43acea
test cl, 4
jne 0x43ace7
add eax, 4
jmp 0x43acea
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x43ad04
mov esi, dword [esi]
test esi, esi
je 0x43cc48
xor edi, edi
jmp 0x438834
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43ad33
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x439105
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x43c91d
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43ad67
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43ae61
cmp ebx, 0xc0
jb 0x43ae61
test bl, 0x20
jne 0x43ada9
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43ae5e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43add3
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43ae61
mov edx, dword [esi + 8]
test bl, 8
jne 0x43adf9
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 0x43ae5c
test bl, 4
jne 0x43ae28
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 0x43ae5c
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43ae83
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp eax, 9
je 0x43aea8
cmp eax, 5
je 0x43aea8
cmp eax, 8
je 0x43aea8
xor eax, eax
jmp 0x43aead
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43caff
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43caf5
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43af16
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43b00c
cmp ebx, 0xc0
jb 0x43b00c
test bl, 0x20
jne 0x43af58
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43b009
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43af80
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43b00c
mov edx, dword [esi + 8]
test bl, 8
jne 0x43afa6
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 0x43b009
test bl, 4
jne 0x43afd5
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 0x43b009
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b02e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cb18
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cb0e
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43b0b8
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43b1ae
cmp ebx, 0xc0
jb 0x43b1ae
test bl, 0x20
jne 0x43b0fa
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43b1ab
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43b122
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43b1ae
mov edx, dword [esi + 8]
test bl, 8
jne 0x43b148
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 0x43b1ab
test bl, 4
jne 0x43b177
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 0x43b1ab
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b1d0
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cb31
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cb27
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43b253
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43b349
cmp ebx, 0xc0
jb 0x43b349
test bl, 0x20
jne 0x43b295
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43b346
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43b2bd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43b349
mov edx, dword [esi + 8]
test bl, 8
jne 0x43b2e3
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 0x43b346
test bl, 4
jne 0x43b312
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 0x43b346
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b36b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7270]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cb4a
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cb40
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43b3ee
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x43b437
cmp dword [ebp + 0x88], 0
je 0x4395b3
cmp edi, dword [ebp + 0x84]
jbe 0x4395b3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4395b3
mov esi, dword [esi]
test esi, esi
je 0x43cc6c
mov edi, 0xfffffff4
jmp 0x438834
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43b525
cmp ebx, 0xc0
jb 0x43b525
test bl, 0x20
jne 0x43b46d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43b522
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43b497
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43b525
mov edx, dword [esi + 8]
test bl, 8
jne 0x43b4bd
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 0x43b520
test bl, 4
jne 0x43b4ec
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 0x43b520
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b547
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7272]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x43b6d8
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x43b677
cmp ebx, 0xc0
jb 0x43b677
test bl, 0x20
jne 0x43b5ab
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x43b66f
test bl, 0x10
jne 0x43b5d0
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 0x43b66f
test bl, 8
jne 0x43b601
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 0x43b66f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x43b63b
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 0x43b66f
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b699
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx ecx, byte [eax*8 + 0x4d7272]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4d70f8], eax
je 0x43b6d8
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x43b570
cmp dword [ebp + 0x88], 0
je 0x43b705
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x43b705
cmp eax, dword [ebp + 0x84]
jbe 0x43b705
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x42ff36
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cb63
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cb59
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x43b76c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43b76c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43b760
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x42ef50
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cb7c
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cb72
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x43b7c7
movzx ebx, byte [ecx]
jmp 0x43b8b5
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x43b7dc
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x43b7d0
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x43b8b5
test bl, 0x20
jne 0x43b7ff
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x43b8ad
test bl, 0x10
jne 0x43b81f
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 0x43b8ad
test bl, 8
jne 0x43b848
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 0x43b8ad
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x43b87d
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 0x43b8ad
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b8d7
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7272]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x42ef50
dec edi
cmp dword [esp + 0x8c], 0
jne 0x43b90f
movzx ebx, byte [edi]
jmp 0x43b9ce
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x43b921
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x43b917
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x43b9ce
test bl, 0x20
jne 0x43b941
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x43b9c6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x43b95e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x43b9c6
and eax, 0x3f
test bl, 8
jne 0x43b979
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x43b9c6
test bl, 4
jne 0x43b99d
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 0x43b9c6
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43b9f0
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx edx, byte [eax*8 + 0x4d7272]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4d70f8], eax
je 0x437626
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x43b8f0
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43ba51
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43bb4b
cmp ebx, 0xc0
jb 0x43bb4b
test bl, 0x20
jne 0x43ba93
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43bb48
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43babd
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43bb4b
mov edx, dword [esi + 8]
test bl, 8
jne 0x43bae3
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 0x43bb46
test bl, 4
jne 0x43bb12
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 0x43bb46
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 + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43bb6d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x43bb94
cmp eax, 3
je 0x43bb94
xor eax, eax
jmp 0x43bb99
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cbae
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cba4
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43bc02
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43bd03
cmp ebx, 0xc0
jb 0x43bd03
test bl, 0x20
jne 0x43bc44
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43bd00
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43bc6e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43bd03
mov edx, dword [esi + 8]
test bl, 8
jne 0x43bc94
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 0x43bcf7
test bl, 4
jne 0x43bcc3
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 0x43bcf7
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 0x43bd2e
cmp ebx, 0x40
je 0x43bd2e
cmp ebx, 0x60
je 0x43bd2e
cmp ebx, 0xa0
jb 0x43bd22
cmp ebx, 0xd7ff
jbe 0x43bd2e
cmp ebx, 0xe000
jae 0x43bd2e
xor eax, eax
jmp 0x43bd33
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x430712
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cbc7
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cbbd
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43bd9c
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43be9d
cmp ebx, 0xc0
jb 0x43be9d
test bl, 0x20
jne 0x43bdde
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43be9a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43be08
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x43be9d
mov edx, dword [esi + 8]
test bl, 8
jne 0x43be2e
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 0x43be91
test bl, 4
jne 0x43be5d
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 0x43be91
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 0x43bee0
je case.0x43bf00.8192
cmp ebx, 0x85
ja 0x43becc
je case.0x43bf00.8192
cmp ebx, 9
jb case.0x43bf00.8203
cmp ebx, 0xd
jbe case.0x43bf00.8192
cmp ebx, 0x20
jmp 0x43bf15
cmp ebx, 0xa0
je case.0x43bf00.8192
cmp ebx, 0x1680
jmp 0x43bf15
cmp ebx, 0x202f
ja 0x43bf07
je case.0x43bf00.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x43bf00.8203
movzx eax, byte [eax + 0x43d43c]
jmp dword [eax*4 + 0x43d434]
cmp ebx, 0x205f
je case.0x43bf00.8192
cmp ebx, 0x3000
je case.0x43bf00.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4d88f0]
shl eax, 7
and ebx, 0x8000007f
jns 0x43bf39
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
cmp dword [eax*4 + 0x4d7080], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x43bf6c
jmp 0x42fdcb
cmp dword [esi + 0x68], 0
jne 0x430712
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cbe0
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cbd6
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43bfcc
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43c0c2
cmp ebx, 0xc0
jb 0x43c0c2
test bl, 0x20
jne 0x43c00e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43c0bf
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43c036
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43c0c2
mov edx, dword [esi + 8]
test bl, 8
jne 0x43c05c
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 0x43c0bf
test bl, 4
jne 0x43c08b
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 0x43c0bf
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 + 0x4d88f0]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x43c0e5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4daaf0]
movzx eax, byte [eax*8 + 0x4d7271]
mov eax, dword [eax*4 + 0x4d7080]
cmp eax, 1
je 0x43c111
cmp eax, 3
je 0x43c111
cmp ebx, 0x5f
je 0x43c111
xor eax, eax
jmp 0x43c116
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x42fdcb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cbf9
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cbef
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
test edi, edi
jne case.0x438844.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x43c17f
mov esi, dword [esi]
test esi, esi
je 0x43cc48
jmp 0x438834
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x43b3f6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x43c27c
cmp ebx, 0xc0
jb 0x43c27c
test bl, 0x20
jne 0x43c1c1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x43c279
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x43c1e9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x43c27c
mov edx, dword [esi + 8]
test bl, 8
jne 0x43c20f
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 0x43c272
test bl, 4
jne 0x43c23e
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 0x43c272
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 + 0x4d7130]
lea eax, [eax*4 + 0x4d7130]
cmp ebx, ecx
jb 0x43c29e
lea eax, [eax + 4]
cmp ebx, ecx
je 0x43c2e3
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x43c291
cmp dword [esi + 0x68], 0
je 0x430712
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x43cc12
push 0x134
call dword [0x66c7bc]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x43cc08
mov esi, dword [esi]
test esi, esi
je 0x43cc3b
lea edi, [eax - 6]
jmp 0x438829
cmp dword [esi + 0x68], 0
je 0x43c2a8
jmp 0x430712
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 0x43c2f1
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x42efca
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x43c333
push ecx
call dword [0x66c7b8]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x42efca
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a129
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x439f35
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a2cb
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x43a4d0
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43a699
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x43ad0a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43aebc
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43b05e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43b1f9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43b394
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43bba8
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43bf72
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43c125
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43c2ae
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43bd42
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x43a9bd
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x43b70b
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x42ef50
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 + 0x4d6f68]
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 0x42ef40
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 0x43c736
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 0x43c736
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x43c48f
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 0x43c736
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x43c48f
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 0x43c736
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x43c48f
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 0x42ef40
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 0x43c926
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 0x43c926
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 0x43c926
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 0x43c926
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 0x43c926
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 0x43c736
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 0x43c736
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x43c6e7
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 0x42ef40
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 + 0x4d6f68]
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 0x42ef40
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 0x43c926
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 0x43c926
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 0x43c926
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x43c91d
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 0x42ef40
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 0x43c736
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 0x43c736
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 0x43c926
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 0x43c926
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 0x43c926
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x43c91d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x43c91d
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