Function at 0x419ec0
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 0x419f4e
mov esi, dword [esi]
test esi, esi
je 0x427bf1
mov edi, 0xfffffff8
jmp 0x4237f9
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x419f6a
mov esi, dword [esi]
test esi, esi
je 0x427bfe
mov edi, 0xffffffeb
jmp 0x4237f9
cmp dword [ebp + 0x98], 2
jne 0x419fa1
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 0x419fa1
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.0x419fd4.98
movzx eax, byte [edx + 0x427e0c]
jmp dword [eax*4 + 0x427cc0]
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 0x427455
push 0x134
call dword [0x524384]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42744f
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov edx, dword [esi + 4]
test edx, edx
jne 0x4274a5
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42749f
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov edx, dword [esi + 4]
test edx, edx
jne 0x4274c3
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4274bd
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x4274e1
push 0x134
call dword [0x524384]
mov edi, eax
add esp, 4
test edi, edi
jne 0x4274db
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov edx, dword [esi + 4]
test edx, edx
jne 0x4274f6
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4274f0
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x41a12e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4e0c98]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x419fa1
mov edi, dword [esi + 4]
test edi, edi
jne 0x427514
push 0x134
call dword [0x524384]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42750e
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov edx, dword [esi + 4]
test edx, edx
jne 0x427529
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x427523
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x427547
push 0x134
call dword [0x524384]
mov edi, eax
add esp, 4
test edi, edi
jne 0x427541
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x424d38
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.0x419fd4.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 0x42389b
mov dword [esi + 0x54], ebx
jmp 0x41aa3f
mov dword [esi + 0x54], ebx
jmp 0x41aa63
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 0x41a3a8
mov edi, dword [0x526d58]
test edi, edi
je 0x41a394
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 0x41a34e
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 0x41a383
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
jns 0x41a394
mov esi, dword [esi]
test esi, esi
je 0x423cdc
jmp 0x4237f9
movzx eax, byte [0x4e0d0e]
add dword [esi + 0xc], eax
movzx eax, byte [0x4e0d0e]
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.0x41a3ce.146
movzx eax, byte [eax + 0x427ec8]
jmp dword [eax*4 + 0x427eb0]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x41a3ce.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x41a407
cmp edx, dword [edi + 4]
je 0x41a407
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x423b33
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x423b33
cmp dword [ebp + 0xa4], ebx
je case.0x41a3ce.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.0x41a3ce.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 0x423b33
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x41a450
jmp 0x423b33
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 0x41a4b4
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x41a4b4
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x41a3ce.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x41a3ce.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 0x423b33
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 0x41a509
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x41a518
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x41a4e7
jmp 0x423b33
mov dword [esi + 0x58], 1
jmp 0x423b33
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42755c
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427556
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x41a5b4
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x419f96
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 0x419f96
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41a603
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 0x419f96
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x41a656
cmp edx, 0x9f
je 0x41a656
cmp dword [ebp + 0xa4], ebx
jne 0x41a656
cmp dword [ebp + 0x5c], ebx
jne 0x41a645
cmp dword [ebp + 0x60], ebx
je 0x41a656
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x41a656
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
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 0x423cdc
jmp 0x4237f9
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41a6af
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x423c2d
mov dword [esi + 0x58], ebx
jmp 0x423c2d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41a6db
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x423d7b
mov dword [esi + 0x58], ebx
jmp 0x423d7b
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x41a742
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x41a728
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x420f26.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41a724
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x41a718
test edx, edx
jg 0x41a700
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x419f96
mov dword [ebp + 0x84], eax
jmp 0x419f96
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 0x41a728
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423800
mov edi, dword [0x526d58]
test edi, edi
je 0x41a84c
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 0x41a806
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 0x41a83b
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
jns 0x41a84c
mov esi, dword [esi]
test esi, esi
je 0x423cdc
jmp 0x4237f9
add dword [esi + 0xc], 6
jmp 0x419f9a
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 0x41a876
xor edx, edx
jmp 0x41a883
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 0x41a8a3
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x41a89d
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x41a904
mov ecx, dword [ecx]
test ecx, ecx
jne 0x41a890
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 0x41a918
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 0x423e64
mov esi, dword [esi]
test esi, esi
je 0x427c22
mov edi, 0xffffffe6
jmp 0x4237f9
shl eax, 2
push eax
call dword [0x52437c]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x41a8de
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x41a941
jmp 0x419fa1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427597
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427591
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x41a9a0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4275b5
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4275af
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x41a9f3
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x419fa1
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 0x41aa3f
cmp eax, 0x8b
jne 0x41aa63
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 0x41aa80
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 0x42494d
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 0x41aafd
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x427947
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42793d
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x41ab58
cmp al, 0x81
je 0x41ab58
mov dword [esi + 0x38], ebx
jmp 0x41ab69
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 0x41ab76
cmp al, 0x80
jbe 0x41ab7a
cmp al, 0x82
jne 0x41aba6
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 0x427c56
mov edi, 1
jmp 0x4237f9
cmp al, 0x85
je 0x41abba
cmp al, 0x8a
je 0x41abba
cmp al, 0x86
je 0x41abba
cmp al, 0x8b
jne 0x41ac81
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 0x41abf6
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x41abf6
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x41ab8c
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 0x41ac25
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41ac81
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x41ac45
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41ac45
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 0x41ac81
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x41acb7
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 0x427c2f
mov edi, 0xfffffc1a
jmp 0x4237f9
cmp cl, 0x78
je 0x41ad30
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x41ad30
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x41acfe
test ecx, ecx
jne 0x4275d6
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4275d0
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test ecx, ecx
jne 0x4275f7
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4275f1
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x423f97
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427615
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42760f
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
cmp dword [ebp + 0x44], ebx
je case.0x419fd4.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x419fd4.1
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x41ae58
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
cmp dword [ebp + 0x44], ebx
je 0x41adca
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41adca
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x41b814
cmp ecx, dword [ebp + 0x78]
je 0x41ae30
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x41ae08
cmp ecx, edx
jbe 0x41ae30
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00429e80
add esp, 0x14
test eax, eax
jne 0x41b814
jmp 0x41ae30
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x41ae30
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41ae30
cmp edi, 1
je 0x41b814
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41b814
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x4237f9
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x41ad95
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x419fa1
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41af1a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41ae95
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x41b814
jmp 0x41aeb9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41aeb9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41aeb9
cmp edx, 1
je 0x41b814
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41b814
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x420f26.14
cmp dword [ebp + 0x18], ebx
jne case.0x420f26.14
cmp dword [edi], 2
jne case.0x420f26.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x420f26.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x420f26.14
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x4237f9
cmp dword [ebp + 0x48], ebx
jne 0x41ad9b
cmp dword [ebp + 0x88], ebx
je 0x41b814
cmp ecx, dword [ebp + 0x84]
jbe 0x41b814
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b814
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x4237f9
cmp dword [ebp + 0x48], ebx
jne 0x41ad9b
cmp dword [ebp + 0x58], ebx
je case.0x419fd4.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41ad9b
cmp dword [ebp + 0x88], ebx
je 0x41ae58
cmp eax, dword [ebp + 0x84]
jbe 0x41ae58
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41ae58
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x4237f9
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41b025
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41afed
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x41b015
jmp 0x41aeb9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41aeb9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41aeb9
cmp edx, 1
je 0x41b015
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x41aeb9
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x41aeb9
cmp dword [ebp + 0x88], ebx
je 0x41b814
cmp ecx, dword [ebp + 0x84]
jbe 0x41b814
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b814
jmp 0x41af06
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41b327
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x41b075
mov dword [esi + 0x5c], ebx
jmp 0x41b1ae
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x41b08a
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x41b080
cmp edx, dword [ebp + 0x84]
jae 0x41b098
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41b14c
test bl, 0x20
jne 0x41b0c0
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x41b14c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41b0da
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x41b142
and eax, 0x3f
test bl, 8
jne 0x41b0f5
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x41b142
test bl, 4
jne 0x41b119
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 0x41b142
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 0x41b1e7
cmp ebx, 0x5f
jne 0x41b164
mov dword [esi + 0x5c], 1
jmp 0x41b1ae
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41b186
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41b1f8
cmp eax, 3
je 0x41b1f8
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x41b1ff
cmp dword [ebp + 0x88], 0
je 0x41b1db
cmp edx, dword [ebp + 0x84]
jbe 0x41b1db
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
mov dword [esi + 0x54], 0
jmp 0x41b465
cmp ebx, 0x100
jae 0x41b1a9
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41b1a9
mov eax, 1
jmp 0x41b1ab
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41b2a9
test bl, 0x20
jne 0x41b21f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x41b2a1
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41b239
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x41b2a1
and eax, 0x3f
test bl, 8
jne 0x41b254
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x41b2a1
test bl, 4
jne 0x41b278
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 0x41b2a1
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 0x41b30c
cmp ebx, 0x5f
jne 0x41b2c0
mov dword [esi + 0x54], 1
jmp 0x41b465
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41b2e2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41b31d
cmp eax, 3
je 0x41b31d
xor eax, eax
jmp 0x41b462
cmp ebx, 0x100
jae 0x41b305
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41b305
mov eax, 1
jmp 0x41b462
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41b337
mov dword [esi + 0x5c], ebx
jmp 0x41b3d2
cmp eax, dword [ebp + 0x84]
ja 0x41b346
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x41b3be
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x41b360
mov dword [esi + 0x5c], 1
jmp 0x41b3d2
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ecx, 0x8000007f
jns 0x41b382
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41b3b0
cmp eax, 3
je 0x41b3b0
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x41b3cf
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x41b3cf
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 0x41b413
cmp dword [ebp + 0x88], ebx
je 0x41b40e
cmp eax, dword [ebp + 0x84]
jbe 0x41b40e
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b40e
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x423800
mov dword [esi + 0x54], ebx
jmp 0x41b465
cmp dword [ebp + 0x54], ebx
je 0x41b452
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x41b429
mov dword [esi + 0x54], 1
jmp 0x41b465
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ecx, 0x8000007f
jns 0x41b44b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x41b2e4
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 0x41b480
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x41b488
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x419fa1
jmp 0x41ad9b
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x41b4cd
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x41b4f8
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x41ad9b
jmp 0x41b4f8
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x41b4f8
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41b4f8
cmp edx, 1
je 0x41ad9b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41ad9b
cmp dword [ebp + 0x88], ebx
je case.0x419fd4.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x419fd4.13
cmp dword [ebp + 0x18], ebx
jne case.0x419fd4.13
cmp dword [ebp + 0x1c], 2
jne case.0x419fd4.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x419fd4.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41b556
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
cmp eax, dword [ebp + 0x84]
jbe case.0x420f26.14
jmp 0x41aef2
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41ae58
cmp eax, dword [ebp + 0x78]
jae 0x41ae58
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41ae58
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x41b572
inc dword [esi + 0xc]
jmp 0x419fa1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41b539
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x419fa1
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x41b5cd
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
cmp edi, dword [ebp + 0x84]
jbe case.0x420f26.14
jmp 0x41aef2
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41b6c9
cmp ebx, 0xc0
jb 0x41b6c9
test bl, 0x20
jne 0x41b60a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41b6c6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b634
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41b6c9
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b65a
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 0x41b6bd
test bl, 4
jne 0x41b689
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 0x41b6bd
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 0x41b814
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41b814
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423800
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41b7fb
cmp ebx, 0xc0
jb 0x41b7fb
test bl, 0x20
jne 0x41b73c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41b7f8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b766
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41b7fb
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b78c
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 0x41b7ef
test bl, 4
jne 0x41b7bb
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 0x41b7ef
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 0x41a75d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41a75d
inc dword [esi + 0xc]
jmp 0x419f9a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41b924
cmp ebx, 0xc0
jb 0x41b924
test bl, 0x20
jne 0x41b865
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41b921
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b88f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41b924
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b8b5
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 0x41b918
test bl, 4
jne 0x41b8e4
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 0x41b918
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 0x41b814
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x41b6dc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41ba44
cmp ebx, 0xc0
jb 0x41ba44
test bl, 0x20
jne 0x41b985
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ba41
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b9af
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41ba44
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b9d5
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 0x41ba38
test bl, 4
jne 0x41ba04
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 0x41ba38
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 0x41a75d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x41a75d
inc dword [esi + 0xc]
jmp 0x419f9a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bb6d
cmp ebx, 0xc0
jb 0x41bb6d
test bl, 0x20
jne 0x41baae
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bb6a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bad8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bb6d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bafe
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 0x41bb61
test bl, 4
jne 0x41bb2d
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 0x41bb61
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 0x41b814
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x41b6dc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bc8d
cmp ebx, 0xc0
jb 0x41bc8d
test bl, 0x20
jne 0x41bbce
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bc8a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bbf8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bc8d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bc1e
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 0x41bc81
test bl, 4
jne 0x41bc4d
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 0x41bc81
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 0x41a75d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41a75d
inc dword [esi + 0xc]
jmp 0x419f9a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bdb6
cmp ebx, 0xc0
jb 0x41bdb6
test bl, 0x20
jne 0x41bcf7
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bdb3
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bd21
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bdb6
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bd47
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 0x41bdaa
test bl, 4
jne 0x41bd76
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 0x41bdaa
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 0x41be2f
je 0x41bdd1
cmp ebx, 0xa
je 0x41b814
jbe 0x41b6e2
cmp ebx, 0xc
jmp 0x41be49
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41be1a
cmp dword [ebp + 0x88], 0
je 0x41b814
cmp eax, dword [ebp + 0x84]
jbe 0x41b814
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b814
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x423800
cmp byte [eax], 0xa
jne 0x41b814
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x419f9a
cmp ebx, 0x85
je 0x41be4f
cmp ebx, 0x2027
jbe 0x41b6e2
cmp ebx, 0x2029
ja 0x41b6e2
cmp dword [ebp + 0x68], 0
jmp 0x41b6dc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bf60
cmp ebx, 0xc0
jb 0x41bf60
test bl, 0x20
jne 0x41bea1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bf5d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41becb
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bf60
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bef1
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 0x41bf54
test bl, 4
jne 0x41bf20
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 0x41bf54
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 0x41bf98
je 0x41a75d
cmp ebx, 0xa0
ja 0x41bf8d
je 0x41a75d
cmp ebx, 9
je 0x41a75d
cmp ebx, 0x20
jmp 0x41b80e
cmp ebx, 0x1680
jmp 0x41b80e
cmp ebx, 0x205f
ja 0x41bfc9
je 0x41a75d
cmp ebx, 0x2000
jb 0x41b814
cmp ebx, 0x200a
jbe 0x41a75d
cmp ebx, 0x202f
jmp 0x41b80e
cmp ebx, 0x3000
je 0x41a75d
inc dword [esi + 0xc]
jmp 0x419f9a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c0e5
cmp ebx, 0xc0
jb 0x41c0e5
test bl, 0x20
jne 0x41c026
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c0e2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c050
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c0e5
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c076
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 0x41c0d9
test bl, 4
jne 0x41c0a5
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 0x41c0d9
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 0x41c11d
je 0x41b814
cmp ebx, 0xa0
ja 0x41c112
je 0x41b814
cmp ebx, 9
je 0x41b814
cmp ebx, 0x20
jmp 0x41b6dc
cmp ebx, 0x1680
jmp 0x41b6dc
cmp ebx, 0x205f
ja 0x41c14e
je 0x41b814
cmp ebx, 0x2000
jb 0x41b6e2
cmp ebx, 0x200a
jbe 0x41b814
cmp ebx, 0x202f
jmp 0x41b6dc
cmp ebx, 0x3000
jmp 0x41b6dc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c261
cmp ebx, 0xc0
jb 0x41c261
test bl, 0x20
jne 0x41c1a2
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c25e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c1cc
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c261
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c1f2
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 0x41c255
test bl, 4
jne 0x41c221
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 0x41c255
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 0x41c289
je 0x41b6e2
cmp ebx, 0xa
jb 0x41b814
cmp ebx, 0xd
jbe 0x41b6e2
inc dword [esi + 0xc]
jmp 0x419f9a
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41b814
jmp 0x41b6e2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c3a5
cmp ebx, 0xc0
jb 0x41c3a5
test bl, 0x20
jne 0x41c2e6
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c3a2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c310
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c3a5
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c336
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 0x41c399
test bl, 4
jne 0x41c365
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 0x41c399
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 0x41c3ca
je 0x41b814
cmp ebx, 0xa
jb 0x41a75d
cmp ebx, 0xd
jbe 0x41b814
jmp 0x41a75d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41a75d
inc dword [esi + 0xc]
jmp 0x419f9a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41c4dd
cmp ebx, 0xc0
jb 0x41c4dd
test bl, 0x20
jne 0x41c429
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c4da
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c451
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x41c4dd
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c477
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 0x41c4da
test bl, 4
jne 0x41c4a6
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 0x41c4da
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 + 0x4e2620]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41c500
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 + 0x4e4820]
cmp eax, 0xa
ja case.default.0x41c51a
jmp dword [eax*4 + 0x427edc]
cmp dword [esi + 0x9c], 0xf
jne 0x419f96
jmp 0x41ad9b
mov al, byte [edx*8 + 0x4e0fa1]
cmp al, 9
je 0x41c54a
cmp al, 5
je 0x41c54a
cmp al, 8
je 0x41c54a
xor ecx, ecx
jmp 0x41c54f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x419f96
jmp 0x41ad9b
movzx ecx, byte [edx*8 + 0x4e0fa1]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x4e0db0]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x419f96
jmp 0x41ad9b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4e0fa1]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x419f96
jmp 0x41ad9b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4e0fa0]
jmp 0x41c5ab
movzx eax, byte [edx*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41c54a
cmp eax, 3
je 0x41c54a
xor ecx, ecx
jmp 0x41c54f
cmp ebx, 0x180e
ja 0x41c643
je case.0x41c51a.0
cmp ebx, 0x85
ja 0x41c62f
je case.0x41c51a.0
cmp ebx, 9
jb case.0x41c663.8203
cmp ebx, 0xd
jbe case.0x41c51a.0
cmp ebx, 0x20
jmp 0x41c67c
cmp ebx, 0xa0
je case.0x41c51a.0
cmp ebx, 0x1680
jmp 0x41c67c
cmp ebx, 0x202f
ja 0x41c66a
je case.0x41c51a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x41c663.8203
movzx eax, byte [ebx + 0x427f10]
jmp dword [eax*4 + 0x427f08]
cmp ebx, 0x205f
je case.0x41c51a.0
cmp ebx, 0x3000
je case.0x41c51a.0
movzx eax, byte [edx*8 + 0x4e0fa1]
xor ecx, ecx
cmp dword [eax*4 + 0x4e0db0], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x41c5b7
movzx eax, byte [edx*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41c54a
cmp eax, 3
je 0x41c54a
cmp ebx, 0x5f
je 0x41c54a
xor ecx, ecx
jmp 0x41c54f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x4e0e60]
lea eax, [eax*4 + 0x4e0e60]
cmp ebx, ecx
jb 0x41c6fd
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x41c70f
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x41c6f0
cmp dword [esi + 0x9c], 0x10
jne 0x419f96
jmp 0x41ad9b
cmp dword [esi + 0x9c], 0x10
je 0x419f96
jmp 0x41ad9b
cmp ebx, 0x24
je 0x41c54a
cmp ebx, 0x40
je 0x41c54a
cmp ebx, 0x60
je 0x41c54a
cmp ebx, 0xa0
jb 0x41c750
cmp ebx, 0xd7ff
jbe 0x41c54a
cmp ebx, 0xe000
jae 0x41c54a
xor ecx, ecx
jmp 0x41c54f
mov esi, dword [esi]
test esi, esi
je case.default.0x423814
mov edi, 0xfffffff2
jmp 0x4237f9
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x41c882
cmp ebx, 0xc0
jb 0x41c882
test bl, 0x20
jne 0x41c7c0
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c87f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c7ef
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 0x41c882
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c815
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 0x41c878
test bl, 4
jne 0x41c844
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 0x41c878
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41c8a4
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41ca36
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x41c9ce
cmp ebx, 0xc0
jb 0x41c9ce
test bl, 0x20
jne 0x41c905
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x41c9c6
test bl, 0x10
jne 0x41c92a
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 0x41c9c6
test bl, 8
jne 0x41c958
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 0x41c9c6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x41c992
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 0x41c9c6
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41c9f0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx ecx, byte [eax*8 + 0x4e0fa2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e0e28], eax
je 0x41ca36
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 0x41c8d0
cmp dword [ebp + 0x88], 0
je 0x41b814
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41b814
cmp eax, dword [ebp + 0x84]
jbe 0x41b814
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b814
jmp 0x41af06
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 0x41cb64
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 0x41caf4
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x41cafd
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x41cad0
jmp 0x41cb64
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x41cb64
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 0x41cb54
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x41cb54
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x41cb5e
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.0x41cb7f
movzx eax, byte [eax + 0x427f44]
jmp dword [eax*4 + 0x427f3c]
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 + 0x4e02f0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4e02fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41cc0d
mov dword [esi + 0x8c], getpeername
jmp 0x41cc0d
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 0x41cc09
mov dword [esi + 0x8c], getpeername
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x419fa1
jns 0x41cc31
cmp dword [esi + 0x90], 0
je 0x419fa1
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41cc6f
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.00428440
add esp, 0x14
test eax, eax
js 0x41cca1
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x41cc40
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x419fa1
cmp dword [esp + 0x80], 0
je 0x41ccca
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4240b2
cmp eax, 0xfffffffe
jne 0x41ccac
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x420f26.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x420f26.14
jmp 0x41b545
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x41cce0
cmp edi, dword [esi + 0x8c]
jge 0x424101
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.00428440
add esp, 0x14
test eax, eax
js 0x41cd15
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x41cce0
cmp eax, 0xfffffffe
jne 0x424101
cmp dword [ebp + 0x88], 0
je 0x424101
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x424101
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x424101
jmp 0x41af06
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.00428440
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x41cdd9
cmp eax, 0xfffffffe
jne 0x41cd85
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x4246dd.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x4246dd.14
cmp eax, dword [ebp + 0x84]
jbe case.0x4246dd.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x4246dd.14
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x423804
add dword [esi + 8], eax
jmp 0x419f9a
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.0x41ce07
movzx eax, byte [eax + 0x427f54]
jmp dword [eax*4 + 0x427f4c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41ce2a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x41ce35
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4e02f0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4e02fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41cecc
mov dword [esi + 0x8c], getpeername
jmp 0x41cecc
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 0x41ceb2
mov dword [esi + 0x8c], getpeername
add dword [esi + 0xc], 5
jmp 0x41cecc
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41d02c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41d081
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41cfdc
test bl, 0x20
jne 0x41cf2a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41cfd9
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41cf51
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41cfd7
test bl, 8
jne 0x41cf74
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 0x41cfd7
test bl, 4
jne 0x41cfa3
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 0x41cfd7
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 0x41cfed
cmp dword [esi + 0x9c], 0x6e
jmp 0x41d002
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.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41cef0
jmp 0x41d073
cmp dword [ebp + 0x88], 0
je case.0x420f26.14
mov eax, dword [esi + 8]
jmp 0x41b545
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41d07a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d017
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.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41d040
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x419f9a
test ebx, ebx
je 0x41d0aa
test edx, edx
jne 0x427317
mov dword [esi + 0x84], eax
jmp 0x42419b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x41d262
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x41d24f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x41d227
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x41d1d6
test bl, 0x20
jne 0x41d11b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x41d1d6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41d143
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x41d1cc
and eax, 0x3f
test bl, 8
jne 0x41d169
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 0x41d1cc
test bl, 4
jne 0x41d198
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 0x41d1cc
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 0x41d1e7
cmp dword [esi + 0x9c], 0x6e
jmp 0x41d1fc
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 0x41d24f
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 0x41d0d1
jmp 0x41d24f
cmp dword [ebp + 0x88], 0
je 0x41d24f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41d24f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x42515c
jmp 0x419f9a
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x41d2da
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x41d2b2
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 0x41d2da
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 0x41d271
jmp 0x41d2da
cmp dword [ebp + 0x88], 0
je 0x41d2da
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41d2da
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x4241db
jmp 0x419f9a
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.0x41d325
movzx eax, byte [eax + 0x427f68]
jmp dword [eax*4 + 0x427f60]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41d348
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x41d353
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4e02f0]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4e02fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41d3ea
mov dword [esi + 0x8c], getpeername
jmp 0x41d3ea
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 0x41d3d0
mov dword [esi + 0x8c], getpeername
add dword [esi + 0xc], 5
jmp 0x41d3ea
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41d525
jmp 0x41d400
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41d4fa
cmp edx, 0xc0
jb 0x41d4fa
test dl, 0x20
jne 0x41d448
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41d4f7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41d46f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41d4f5
test dl, 8
jne 0x41d492
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 0x41d4f5
test dl, 4
jne 0x41d4c1
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 0x41d4f5
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.004296c0
add esp, 0xc
test eax, eax
je case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41d400
jmp 0x41d52c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x419fa1
cmp dword [esp + 0x84], 0
jne 0x427328
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 0x41d6bd
jmp 0x41d570
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x41d693
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x41d65b
cmp edx, 0xc0
jb 0x41d65b
test dl, 0x20
jne 0x41d5bc
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x41d65b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x41d5db
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x41d651
and eax, 0x3f
test dl, 8
jne 0x41d5fb
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x41d651
test dl, 4
jne 0x41d624
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 0x41d651
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.004296c0
add esp, 0xc
test eax, eax
je 0x41d6bd
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x41d570
jmp 0x41d6bd
cmp dword [ebp + 0x88], 0
je 0x41d6b6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41d6b6
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41af06
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x419fa1
jmp 0x424f71
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41d8a9
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 0x41d830
test al, 0x20
jne 0x41d730
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 0x41d830
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41d76a
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 0x41d830
test al, 8
jne 0x41d7a6
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 0x41d830
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41d7eb
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 0x41d830
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 0x41d869
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
cmp edx, edi
jb case.0x420f26.14
cmp edx, dword [ebp + 0x84]
jbe case.0x420f26.14
jmp 0x41aef2
test ecx, ecx
jle 0x41d89e
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.0x420f26.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x41d870
dec dword [esi + 0x88]
jmp 0x419f9a
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x41d8f6
cmp dword [ebp + 0x88], ebx
je 0x41a75d
cmp edi, dword [ebp + 0x84]
jbe 0x41a75d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41a75d
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x423800
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 0x41dc0b
jmp 0x41ad9b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b5b0
cmp dword [esp + 0x8c], ebx
je 0x41dbec
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 0x41da7b
test al, 0x20
jne 0x41d97b
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 0x41da7b
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41d9b5
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 0x41da7b
test al, 8
jne 0x41d9f1
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 0x41da7b
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41da36
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 0x41da7b
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 0x41daa9
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x41ad9b
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x419f9a
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41db8b
test bl, 0x20
jne 0x41dad9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41db88
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41db00
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41db86
test bl, 8
jne 0x41db23
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 0x41db86
test bl, 4
jne 0x41db52
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 0x41db86
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 0x419f9a
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4e2620]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41dbc5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
mov eax, dword [eax*8 + 0x4e0fa4]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x419fa1
jmp 0x41ad9b
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 0x41ad9b
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x419f9a
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 0x41dd3d
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 0x41dc74
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x41dc7f
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x41dd3d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], getpeername
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41dd44
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], getpeername
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x41dd44
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x41dd44
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 + 0x4e02f0]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4e02fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41dd3d
mov dword [esi + 0x8c], getpeername
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x41e1b8
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 0x41de8b
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x41dda1
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 0x41de8b
test bl, 0x10
jne 0x41ddd6
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 0x41de8b
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 0x41de14
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 0x41de8b
test bl, 4
jne 0x41de4d
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 0x41de8b
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 0x41e1c7
cmp dword [esi + 0x9c], 0x2e
jb 0x41defc
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4e2620]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41ded3
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
mov ecx, dword [eax*8 + 0x4e0fa4]
add ecx, edi
cmp ecx, edi
je 0x41defc
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.00429660
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x41df03
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x41e036
jmp 0x41df20
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 0x41dfa4
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x41df58
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41df61
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41df47
cmp edi, 0xfffffffc
je 0x41e018
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41df9a
cmp edi, 0xfffffffd
je 0x41e018
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41df9a
cmp edi, 0xfffffffe
je 0x41e018
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41df9a
cmp edi, 0xffffffff
je 0x41e018
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x41e018
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41ccac
sub ecx, ebx
cmp edi, ecx
ja 0x41ccac
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x41dfd6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41dfdb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41dfc5
cmp edi, 0xfffffffc
je 0x41e018
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41ccac
cmp edi, 0xfffffffd
je 0x41e018
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41ccac
cmp edi, 0xfffffffe
je 0x41e018
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41ccac
cmp edi, 0xffffffff
je 0x41e018
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41ccac
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x41df20
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x419fa1
cmp dword [esp + 0x84], 0
jne 0x427339
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 0x41e1a5
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 0x41e0fc
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x41e0b8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41e0c1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41e0a7
cmp edi, 0xfffffffc
je 0x41e158
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41e0f2
cmp edi, 0xfffffffd
je 0x41e158
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41e0f2
cmp edi, 0xfffffffe
je 0x41e158
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41e0f2
cmp edi, 0xffffffff
je 0x41e158
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x41e158
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41e178
sub ecx, ebx
cmp edi, ecx
ja 0x41e178
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x41e126
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41e12b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41e115
cmp edi, 0xfffffffc
je 0x41e158
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41e178
cmp edi, 0xfffffffd
je 0x41e158
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41e178
cmp edi, 0xfffffffe
je 0x41e158
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41e178
cmp edi, 0xffffffff
je 0x41e158
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41e178
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x41e080
jmp 0x41e1a5
cmp dword [ebp + 0x88], 0
je 0x41e1a5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41e1a5
cmp eax, dword [ebp + 0x84]
jbe 0x41e1a5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x42531c
jmp 0x419f9a
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x41e2bf
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 0x41e224
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d017
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41e217
cmp dword [esi + 0x94], ecx
jne case.0x420f26.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x41e1f4
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x419f9a
cmp dword [esp + 0x84], 0
je 0x41e24b
mov dword [esi + 0x84], eax
jmp 0x42427b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41e2b2
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e28a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41e27b
cmp dword [esi + 0x94], ecx
jne 0x41e2b2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41e260
jmp 0x41e2b2
cmp dword [ebp + 0x88], 0
je 0x41e2b2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e2b2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
test edi, edi
je 0x4242bb
jmp 0x419f9a
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41e2fa
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41e2d0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x419fa1
cmp dword [esp + 0x84], 0
je 0x41e328
mov dword [esi + 0x84], eax
jmp 0x424348
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41e38c
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41e364
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x41e38c
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41e340
jmp 0x41e38c
cmp dword [ebp + 0x88], 0
je 0x41e38c
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e38c
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x424388
jmp 0x419fa1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x41e3c4
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x420f26.14
jmp 0x41aef2
test edi, edi
je 0x41e63c
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 0x41e4c5
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x41e402
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41e4c2
test bl, 0x10
jne 0x41e423
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 0x41e4c2
test bl, 8
jne 0x41e44e
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 0x41e4c5
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x41e487
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 0x41e4c2
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 0x41e5b8
test dl, 0x20
jne 0x41e4ff
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41e5ae
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41e526
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41e5ac
test dl, 8
jne 0x41e549
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 0x41e5ac
test dl, 4
jne 0x41e578
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 0x41e5ac
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 0x41e5d5
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x419fa1
jmp 0x41ad9b
cmp ebx, 0x7f
jbe 0x41e612
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4e2620]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41e5fd
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
mov ecx, dword [eax*8 + 0x4e0fa4]
add ecx, ebx
jmp 0x41e619
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x41ad9b
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x419fa1
jmp 0x41ad9b
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.0x420f26.14
cmp dword [esi + 0x9c], 0x20
jne 0x41dc0b
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x420f26.14
add dword [esi + 0xc], 2
jmp 0x419f9a
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 0x41e7d6
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 0x41e6db
cmp al, 0x4f
je 0x41e6db
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x41e7d6
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x41e7d6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], getpeername
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41e7d6
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], getpeername
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41e7d6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41e7d6
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 0x41e7d6
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 + 0x4e02f0]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4e02fc]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41e7d6
mov dword [esi + 0x8c], getpeername
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 0x41e931
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x41e931
test al, 0x20
jne 0x41e828
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 0x41e931
test al, 0x10
jne 0x41e85b
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 0x41e931
test al, 8
jne 0x41e89d
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 0x41e931
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41e8e8
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 0x41e92a
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 0x41ed55
test edx, edx
je 0x41e98c
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x41e98c
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4e2620]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41e970
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
mov eax, dword [eax*8 + 0x4e0fa4]
add eax, edi
jmp 0x41e999
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x41eae0
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41eb2b
jmp 0x41e9c0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x41eab9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x41e9fa
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x41eab6
test cl, 0x10
jne 0x41ea1b
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 0x41eab6
test cl, 8
jne 0x41ea45
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 0x41eab6
test cl, 4
jne 0x41ea7b
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 0x41eab6
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.0x420f26.14
cmp dword [esi + 0x94], ecx
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41e9c0
jmp 0x41eb24
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x41eb24
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d017
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x420f26.14
cmp dword [esi + 0x94], ecx
je case.0x420f26.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x41eaf0
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x419f9a
test ebx, ebx
je 0x41eb54
test edx, edx
jne 0x42734a
mov dword [esi + 0x84], eax
jmp 0x42441f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x41ecdd
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x41ecca
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x41eca2
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x41ec7e
test dl, 0x20
jne 0x41ebb2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x41ec7e
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x41ebdc
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 0x41ec7c
test dl, 8
jne 0x41ec08
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 0x41ec7c
test dl, 4
jne 0x41ec40
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 0x41ec7c
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 0x41ecca
cmp dword [esi + 0x94], edx
je 0x41ecca
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x41eb74
jmp 0x41ecca
cmp dword [ebp + 0x88], 0
je 0x41ecca
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41ecca
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x4254fc
jmp 0x419f9a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41ed42
jmp 0x41ecf0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41ed1a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41ed42
cmp dword [esi + 0x94], ecx
je 0x41ed42
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41ecf0
jmp 0x41ed42
cmp dword [ebp + 0x88], 0
je 0x41ed42
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41ed42
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x42445f
jmp 0x419f9a
test edx, edx
je 0x41ee77
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41eeb5
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x41ee5c
test dl, 0x20
jne 0x41edaa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41ee59
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41edd1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41ee57
test dl, 8
jne 0x41edf4
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 0x41ee57
test dl, 4
jne 0x41ee23
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 0x41ee57
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.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41ed70
jmp 0x41eeae
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41eeb5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41ee84
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x419f9a
cmp dword [esp + 0x84], 0
je 0x41eee4
test edx, edx
jne 0x42735f
mov dword [esi + 0x84], eax
jmp 0x4244ec
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x41f068
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x41f055
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x41f02d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x41f011
test dl, 0x20
jne 0x41ef42
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x41f011
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x41ef6c
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 0x41f00f
test dl, 8
jne 0x41ef9b
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 0x41f00f
test dl, 4
jne 0x41efd3
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 0x41f00f
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 0x41f055
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x41ef04
jmp 0x41f055
cmp dword [ebp + 0x88], 0
je 0x41f055
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f055
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x4256c0
jmp 0x419f9a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41f0c2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f09a
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x41f0c2
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41f076
jmp 0x41f0c2
cmp dword [ebp + 0x88], 0
je 0x41f0c2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f0c2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x42452c
jmp 0x419f9a
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 0x41f214
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 0x41f214
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], getpeername
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f214
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], getpeername
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f214
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f214
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 0x41f214
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x4e029b]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x4e02a7]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41f214
mov dword [esi + 0x8c], getpeername
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 0x41f236
cmp ecx, 0xf
je 0x41f236
mov dword [esi + 0x60], 0xffffffff
jmp 0x41f259
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 0x4211fb
mov eax, dword [esi + 0x60]
test eax, eax
js 0x420008
cmp eax, 0xa
ja case.default.0x41c51a
jmp dword [eax*4 + 0x427f74]
cmp dword [esi + 0x68], ebx
jne 0x41ad9b
mov edx, 1
cmp ecx, edx
jl 0x4211fb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41f2df
cmp ecx, 0xc0
jb 0x41f2df
test cl, 0x20
jne 0x41f2bb
inc eax
jmp 0x41f2dc
test cl, 0x10
jne 0x41f2c5
add eax, 2
jmp 0x41f2dc
test cl, 8
jne 0x41f2cf
add eax, 3
jmp 0x41f2dc
test cl, 4
jne 0x41f2d9
add eax, 4
jmp 0x41f2dc
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x41f298
jmp 0x4211fb
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
mov eax, dword [esi + 8]
jmp 0x41b545
mov edi, 1
cmp ecx, edi
jl 0x4211fb
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f40a
cmp ebx, 0xc0
jb 0x41f40a
test bl, 0x20
jne 0x41f358
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f407
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f37f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41f405
test bl, 8
jne 0x41f3a2
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 0x41f405
test bl, 4
jne 0x41f3d1
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 0x41f405
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f42c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp eax, 9
je 0x41f451
cmp eax, 5
je 0x41f451
cmp eax, 8
je 0x41f451
xor eax, eax
jmp 0x41f456
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f310
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x4211fb
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f578
cmp ebx, 0xc0
jb 0x41f578
test bl, 0x20
jne 0x41f4c8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f575
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f4ef
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41f575
test bl, 8
jne 0x41f512
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 0x41f575
test bl, 4
jne 0x41f541
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 0x41f575
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f59a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f480
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x4211fb
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f6db
cmp ebx, 0xc0
jb 0x41f6db
test bl, 0x20
jne 0x41f62b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f6d8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f652
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41f6d8
test bl, 8
jne 0x41f675
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 0x41f6d8
test bl, 4
jne 0x41f6a4
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 0x41f6d8
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f6fd
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f5e3
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x4211fb
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f838
cmp ebx, 0xc0
jb 0x41f838
test bl, 0x20
jne 0x41f788
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f835
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f7af
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41f835
test bl, 8
jne 0x41f7d2
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 0x41f835
test bl, 4
jne 0x41f801
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 0x41f835
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f85a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f740
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x4211fb
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f99a
cmp ebx, 0xc0
jb 0x41f99a
test bl, 0x20
jne 0x41f8e8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f997
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f90f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41f995
test bl, 8
jne 0x41f932
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 0x41f995
test bl, 4
jne 0x41f961
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 0x41f995
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f9bc
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41f9e3
cmp eax, 3
je 0x41f9e3
xor eax, eax
jmp 0x41f9e8
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f8a0
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x4211fb
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41fb0a
cmp ebx, 0xc0
jb 0x41fb0a
test bl, 0x20
jne 0x41fa58
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41fb07
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41fa7f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41fb05
test bl, 8
jne 0x41faa2
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 0x41fb05
test bl, 4
jne 0x41fad1
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 0x41fb05
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 0x41fb4d
je case.0x41fb69.8192
cmp ebx, 0x85
ja 0x41fb39
je case.0x41fb69.8192
cmp ebx, 9
jb case.0x41fb69.8203
cmp ebx, 0xd
jbe case.0x41fb69.8192
cmp ebx, 0x20
jmp 0x41fb7e
cmp ebx, 0xa0
je case.0x41fb69.8192
cmp ebx, 0x1680
jmp 0x41fb7e
cmp ebx, 0x202f
ja 0x41fb70
je case.0x41fb69.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x41fb69.8203
movzx eax, byte [eax + 0x427fa8]
jmp dword [eax*4 + 0x427fa0]
cmp ebx, 0x205f
je case.0x41fb69.8192
cmp ebx, 0x3000
je case.0x41fb69.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x41fba2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp dword [eax*4 + 0x4e0db0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420f26.14
jmp 0x41fbd6
cmp dword [esi + 0x68], 0
jne case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41fa10
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x4211fb
jmp 0x41fc00
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41fcf8
cmp ebx, 0xc0
jb 0x41fcf8
test bl, 0x20
jne 0x41fc48
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41fcf5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41fc6f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41fcf5
test bl, 8
jne 0x41fc92
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 0x41fcf5
test bl, 4
jne 0x41fcc1
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 0x41fcf5
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 + 0x4e2620]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41fd1b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x41fd47
cmp eax, 3
je 0x41fd47
cmp ebx, 0x5f
je 0x41fd47
xor eax, eax
jmp 0x41fd4c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420f26.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41fc00
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x4211fb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41fe6c
cmp edx, 0xc0
jb 0x41fe6c
test dl, 0x20
jne 0x41fdbc
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41fe69
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41fde3
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x41fe69
test dl, 8
jne 0x41fe06
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 0x41fe69
test dl, 4
jne 0x41fe35
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 0x41fe69
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 + 0x4e0e60]
lea eax, [eax*4 + 0x4e0e60]
cmp edx, ecx
jb 0x41fe8e
lea eax, [eax + 4]
cmp edx, ecx
je 0x41feaa
mov ecx, dword [eax]
cmp edx, ecx
jae 0x41fe81
cmp dword [esi + 0x68], 0
je case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41fd74
jmp 0x4211fb
cmp dword [esi + 0x68], 0
jne case.0x420f26.14
jmp 0x41fe98
mov ebx, 1
cmp ecx, ebx
jl 0x4211fb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41ffbd
cmp edx, 0xc0
jb 0x41ffbd
test dl, 0x20
jne 0x41ff0b
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41ffba
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41ff32
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41ffb8
test dl, 8
jne 0x41ff55
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 0x41ffb8
test dl, 4
jne 0x41ff84
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 0x41ffb8
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 0x41ffe8
cmp edx, 0x40
je 0x41ffe8
cmp edx, 0x60
je 0x41ffe8
cmp edx, 0xa0
jb 0x41ffdc
cmp edx, 0xd7ff
jbe 0x41ffe8
cmp edx, 0xe000
jae 0x41ffe8
xor eax, eax
jmp 0x41ffed
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41fec3
jmp 0x4211fb
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x420333
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x4211fb
jmp 0x420030
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d017
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x420130
cmp ebx, 0xc0
jb 0x420130
test bl, 0x20
jne 0x420079
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x42012d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4200a0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x420126
test bl, 8
jne 0x4200c3
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 0x420126
test bl, 4
jne 0x4200f2
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 0x420126
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x420152
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa2]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4202ed
jmp 0x420180
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42027e
cmp ebx, 0xc0
jb 0x42027e
test bl, 0x20
jne 0x4201b5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x420276
test bl, 0x10
jne 0x4201da
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 0x420276
test bl, 8
jne 0x420208
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 0x420276
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x420242
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 0x420276
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x4202a0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx ecx, byte [eax*8 + 0x4e0fa2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e0e28], eax
je 0x4202e6
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 0x420180
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x42031a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42031a
cmp eax, dword [ebp + 0x84]
jbe 0x42031a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x420030
jmp 0x4211fb
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x420dff
cmp eax, 0xf
ja case.0x423347.9
jmp dword [eax*4 + 0x427fd4]
mov ebx, 1
cmp ecx, ebx
jl 0x421202
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41d017
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x420397
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne case.0x420f26.14
jmp 0x4203bb
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4203bb
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4203bb
cmp edx, 1
je case.0x420f26.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x420f26.14
cmp dword [ebp + 0x88], 0
je 0x4203f6
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4203f6
cmp dword [ebp + 0x18], 0
jne 0x4203f6
cmp dword [edi], 2
jne 0x4203f6
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4203f6
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x420412
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420412
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x420401
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420362
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x41f2ed
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x420468
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420468
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x420450
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420434
jmp 0x4211fb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x41ad9b
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x421202
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42058c
test dl, 0x20
jne 0x4204da
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420589
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420501
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420587
test dl, 8
jne 0x420524
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 0x420587
test dl, 4
jne 0x420553
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 0x420587
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 0x4205b0
je 0x42059d
cmp edx, 0xa
je 0x4205d1
lea eax, [edx - 0xb]
jmp 0x4205be
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4205d1
cmp byte [eax], 0xa
jne 0x4205d1
inc eax
mov dword [esi + 8], eax
jmp 0x4205d1
cmp edx, 0x85
je 0x4205c7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x420f26.14
cmp dword [ebp + 0x68], 0
jne case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4204a0
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x421202
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4206dc
test dl, 0x20
jne 0x42062a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4206d9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420651
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4206d7
test dl, 8
jne 0x420674
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 0x4206d7
test dl, 4
jne 0x4206a3
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 0x4206d7
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 0x42070e
je case.0x420f26.14
cmp edx, 0xa0
ja 0x420706
je case.0x420f26.14
cmp edx, 9
je case.0x420f26.14
cmp edx, 0x20
jmp 0x42073e
cmp edx, 0x1680
jmp 0x42073e
cmp edx, 0x205f
ja 0x420738
je case.0x420f26.14
cmp edx, 0x2000
jb 0x420744
cmp edx, 0x200a
jbe case.0x420f26.14
cmp edx, 0x202f
jmp 0x42073e
cmp edx, 0x3000
je case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4205f0
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x421202
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42084f
test dl, 0x20
jne 0x42079d
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42084c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4207c4
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x42084a
test dl, 8
jne 0x4207e7
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 0x42084a
test dl, 4
jne 0x420816
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 0x42084a
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 0x420875
je 0x4208a7
cmp edx, 0xa0
ja 0x42086d
je 0x4208a7
cmp edx, 9
je 0x4208a7
cmp edx, 0x20
jmp 0x4208a1
cmp edx, 0x1680
jmp 0x4208a1
cmp edx, 0x205f
ja 0x42089b
je 0x4208a7
cmp edx, 0x2000
jb case.0x420f26.14
cmp edx, 0x200a
jbe 0x4208a7
cmp edx, 0x202f
jmp 0x4208a1
cmp edx, 0x3000
jne case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420763
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x421202
jmp 0x4208d0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4209bc
test dl, 0x20
jne 0x42090a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4209b9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420931
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4209b7
test dl, 8
jne 0x420954
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 0x4209b7
test dl, 4
jne 0x420983
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 0x4209b7
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 0x4209d4
je case.0x420f26.14
cmp edx, 0xa
jb 0x4209e8
cmp edx, 0xd
jmp 0x4209e2
cmp edx, 0x2028
jb 0x4209e8
cmp edx, 0x2029
jbe case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4208d0
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x421202
jmp 0x420a10
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x420afc
test dl, 0x20
jne 0x420a4a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420af9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420a71
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420af7
test dl, 8
jne 0x420a94
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 0x420af7
test dl, 4
jne 0x420ac3
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 0x420af7
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 0x420b0e
je 0x420b1d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x420b17
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420a10
jmp 0x4211fb
mov ebx, 1
cmp ecx, ebx
jl 0x421202
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d017
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x420c2c
test dl, 0x20
jne 0x420b7a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420c29
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420ba1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420c27
test dl, 8
jne 0x420bc4
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 0x420c27
test dl, 4
jne 0x420bf3
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 0x420c27
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 0x420c41
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x420f26.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420b40
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f2ed
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x420f26.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x420f26.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420c60
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x41f2ed
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x420cd3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x420f26.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x420cf8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420cf8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x420ce0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420cb0
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f2ed
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x420f26.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x420f26.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420d13
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x41f2ed
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x420d83
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x420f26.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x420da8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420da8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x420d90
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420d60
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f2ed
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x420f26.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x420f26.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420dc3
jmp 0x4211fb
cmp eax, 0xf
ja case.0x423347.9
jmp dword [eax*4 + 0x428014]
mov ebx, 1
cmp ecx, ebx
jl 0x421202
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41d017
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x420e50
push 0
push edi
push eax
push edx
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne case.0x420f26.14
jmp 0x420e74
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x420e74
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x420e74
cmp edx, 1
je case.0x420f26.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x420f26.14
cmp dword [ebp + 0x88], 0
je 0x420eaf
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x420eaf
cmp dword [ebp + 0x18], 0
jne 0x420eaf
cmp dword [edi], 2
jne 0x420eaf
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x420eaf
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420e20
jmp 0x4211fb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x420486
cmp dword [ebp + 0x88], ebx
je case.0x420f26.14
cmp edx, dword [ebp + 0x84]
jbe case.0x420f26.14
jmp 0x41aef2
mov edx, 1
cmp ecx, edx
jl 0x4211fb
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f2ed
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x420f26.14
movzx eax, byte [eax + 0x428064]
jmp dword [eax*4 + 0x428054]
cmp ecx, dword [ebp + 0x78]
jae case.0x420f26.10
cmp byte [ecx], 0xa
jne case.0x420f26.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x420f26.10
cmp dword [ebp + 0x68], ebx
jne case.0x420f26.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x420f00
jmp 0x4211fb
mov edx, 1
cmp ecx, edx
jl 0x4211fb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x420f26.14
cmp ecx, 0x20
je case.0x420f26.14
cmp ecx, 0xa0
je case.0x420f26.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x420f63
jmp 0x4211fb
mov edx, 1
cmp ecx, edx
jl 0x4211fb
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x420fd9
cmp ecx, 0x20
je 0x420fd9
cmp ecx, 0xa0
jne case.0x420f26.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x420fb0
jmp 0x4211fb
mov edx, 1
cmp ecx, edx
jl 0x4211fb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x421021
cmp ecx, 0xd
jle case.0x420f26.14
cmp ecx, 0x85
je case.0x420f26.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x420ff4
jmp 0x4211fb
mov edx, 1
cmp ecx, edx
jl 0x4211fb
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x420f26.14
cmp ecx, 0xd
jle 0x42106d
cmp ecx, 0x85
jne case.0x420f26.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x421040
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
jmp 0x421090
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x420f26.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421090
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x420f26.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4210d0
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x420f26.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421110
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x420f26.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421150
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
jmp 0x421190
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x420f26.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421190
jmp 0x4211fb
mov edi, 1
cmp ecx, edi
jl 0x421202
jmp 0x4211d0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f2ed
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x420f26.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4211d0
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x419f9a
cmp dword [esp + 0x84], 0
je 0x421262
mov eax, dword [esi + 0x60]
test eax, eax
js 0x421245
cmp eax, 0xa
ja case.0x423347.9
jmp dword [eax*4 + 0x4280e0]
mov esi, dword [esi]
test esi, esi
je case.default.0x423814
mov edi, 0xfffffff2
jmp 0x423800
cmp dword [esi + 0x7c], 0x16
je 0x427433
test edx, edx
jne 0x42741e
mov dword [esi + 0x84], ecx
jmp 0x424695
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x42229b
cmp eax, 0xa
ja case.0x423347.9
jmp dword [eax*4 + 0x42810c]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x422288
mov ebx, dword [esp + 0x8c]
jmp 0x4212a0
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x42130b
movzx ecx, byte [edx]
test ebx, ebx
je 0x4212ee
cmp ecx, 0xc0
jb 0x4212ee
test cl, 0x20
jne 0x4212c8
mov eax, 2
jmp 0x4212ee
test cl, 0x10
jne 0x4212d4
mov eax, 3
jmp 0x4212ee
test cl, 8
jne 0x4212e0
mov eax, 4
jmp 0x4212ee
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x422288
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4212a0
jmp 0x422288
cmp dword [ebp + 0x88], 0
je 0x422288
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422288
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x422288
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x423800
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4214ce
movzx ebx, byte [edi]
test edx, edx
je 0x42144c
cmp ebx, 0xc0
jb 0x42144c
test bl, 0x20
jne 0x4213ae
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x421444
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4213cd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x421444
and eax, 0x3f
test bl, 8
jne 0x4213ed
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x421444
test bl, 4
jne 0x421416
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 0x421444
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x42146e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp eax, 9
je 0x421493
cmp eax, 5
je 0x421493
cmp eax, 8
je 0x421493
xor eax, eax
jmp 0x421498
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x422288
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 0x421370
jmp 0x422288
cmp dword [ebp + 0x88], 0
je 0x422288
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422288
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x422288
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x423800
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
jmp 0x421530
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4216b2
movzx ebx, byte [edi]
test edx, edx
je 0x421633
cmp ebx, 0xc0
jb 0x421633
test bl, 0x20
jne 0x42157a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x42162b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4215a2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x42162b
and eax, 0x3f
test bl, 8
jne 0x4215c8
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 0x42162b
test bl, 4
jne 0x4215f7
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 0x42162b
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x421655
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422288
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 0x421530
jmp 0x422288
cmp dword [ebp + 0x88], 0
je 0x422288
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422288
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x4214f3
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4216b2
movzx ebx, byte [edi]
test edx, edx
je 0x4217ff
cmp ebx, 0xc0
jb 0x4217ff
test bl, 0x20
jne 0x421746
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4217f7
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42176e
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4217f7
and eax, 0x3f
test bl, 8
jne 0x421794
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 0x4217f7
test bl, 4
jne 0x4217c3
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 0x4217f7
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x421821
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422288
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 0x421700
jmp 0x422288
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4216b2
movzx ebx, byte [edi]
test edx, edx
je 0x421993
cmp ebx, 0xc0
jb 0x421993
test bl, 0x20
jne 0x4218da
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x42198b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421902
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x42198b
and eax, 0x3f
test bl, 8
jne 0x421928
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 0x42198b
test bl, 4
jne 0x421957
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 0x42198b
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x4219b5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422288
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 0x421890
jmp 0x422288
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4214ce
movzx ebx, byte [edi]
test edx, edx
je 0x421b03
cmp ebx, 0xc0
jb 0x421b03
test bl, 0x20
jne 0x421a62
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x421afb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421a84
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x421afb
and eax, 0x3f
test bl, 8
jne 0x421aa4
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x421afb
test bl, 4
jne 0x421acd
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 0x421afb
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x421b25
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x421b4c
cmp eax, 3
je 0x421b4c
xor eax, eax
jmp 0x421b51
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x422288
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 0x421a24
jmp 0x422288
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4216b2
movzx ebx, byte [edi]
test edx, edx
je 0x421cad
cmp ebx, 0xc0
jb 0x421cad
test bl, 0x20
jne 0x421bf2
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x421cad
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421c1a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x421ca3
and eax, 0x3f
test bl, 8
jne 0x421c40
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 0x421ca3
test bl, 4
jne 0x421c6f
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 0x421ca3
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 0x421cf0
je case.0x421d10.8192
cmp ebx, 0x85
ja 0x421cdc
je case.0x421d10.8192
cmp ebx, 9
jb case.0x421d10.8203
cmp ebx, 0xd
jbe case.0x421d10.8192
cmp ebx, 0x20
jmp 0x421d25
cmp ebx, 0xa0
je case.0x421d10.8192
cmp ebx, 0x1680
jmp 0x421d25
cmp ebx, 0x202f
ja 0x421d17
je case.0x421d10.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x421d10.8203
movzx eax, byte [eax + 0x428140]
jmp dword [eax*4 + 0x428138]
cmp ebx, 0x205f
je case.0x421d10.8192
cmp ebx, 0x3000
je case.0x421d10.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x421d49
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp dword [eax*4 + 0x4e0db0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422288
mov edx, dword [esp + 0x8c]
jmp 0x421d84
cmp dword [esi + 0x68], 0
jne 0x422288
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 0x421ba0
jmp 0x422288
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4216b2
movzx ebx, byte [edi]
test edx, edx
je 0x421ed3
cmp ebx, 0xc0
jb 0x421ed3
test bl, 0x20
jne 0x421e1a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x421ecb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421e42
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x421ecb
and eax, 0x3f
test bl, 8
jne 0x421e68
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 0x421ecb
test bl, 4
jne 0x421e97
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 0x421ecb
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 + 0x4e2620]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x421ef6
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x421f22
cmp eax, 3
je 0x421f22
cmp ebx, 0x5f
je 0x421f22
xor eax, eax
jmp 0x421f27
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x422288
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 0x421dd0
jmp 0x422288
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x422288
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4220bf
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x422061
cmp edx, 0xc0
jb 0x422061
test dl, 0x20
jne 0x421fc4
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x422059
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x421fe3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x422059
and eax, 0x3f
test dl, 8
jne 0x422003
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422059
test dl, 4
jne 0x42202c
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 0x422059
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 + 0x4e0e60]
lea eax, [eax*4 + 0x4e0e60]
cmp edx, ecx
jb 0x422083
lea eax, [eax + 4]
cmp edx, ecx
je 0x4220b3
mov ecx, dword [eax]
cmp edx, ecx
jae 0x422076
cmp dword [esi + 0x68], 0
je 0x422288
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 0x421f80
jmp 0x422288
cmp dword [esi + 0x68], 0
jne 0x422288
jmp 0x42208d
cmp dword [ebp + 0x88], 0
je 0x422288
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422288
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x422288
jmp 0x41af06
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x422288
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x422260
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x422217
cmp edx, 0xc0
jb 0x422217
test dl, 0x20
jne 0x42214d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x422217
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x422177
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 0x422217
test dl, 8
jne 0x4221a3
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 0x422217
test dl, 4
jne 0x4221db
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 0x422217
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 0x422242
cmp edx, 0x40
je 0x422242
cmp edx, 0x60
je 0x422242
cmp edx, 0xa0
jb 0x422236
cmp edx, 0xd7ff
jbe 0x422242
cmp edx, 0xe000
jae 0x422242
xor ecx, ecx
jmp 0x422247
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x422288
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422101
jmp 0x422288
cmp dword [ebp + 0x88], 0
je 0x422288
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422288
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
je 0x42673c
jmp 0x419f9a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x422637
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x4225e8
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4225c0
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x4223c0
cmp ebx, 0xc0
jb 0x4223c0
test bl, 0x20
jne 0x422309
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4223bd
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x422330
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4223b6
test bl, 8
jne 0x422353
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 0x4223b6
test bl, 4
jne 0x422382
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 0x4223b6
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x4223e2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa2]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42257d
jmp 0x422410
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42250e
cmp ebx, 0xc0
jb 0x42250e
test bl, 0x20
jne 0x422445
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x422506
test bl, 0x10
jne 0x42246a
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 0x422506
test bl, 8
jne 0x422498
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 0x422506
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4224d2
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 0x422506
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x422530
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx ecx, byte [eax*8 + 0x4e0fa2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e0e28], eax
je 0x422576
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 0x422410
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x4225aa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4225aa
cmp eax, dword [ebp + 0x84]
jbe 0x4225aa
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x4222c0
jmp 0x4225e8
cmp dword [ebp + 0x88], 0
je 0x4225e8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4225e8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
cmp dword [esp + 0x80], 0
jne 0x419f9a
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b65
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b5b
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
add eax, 0xfffffffa
test edx, edx
je 0x42333e
cmp eax, 0xf
ja case.0x423347.9
jmp dword [eax*4 + 0x42816c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x422726
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x422699
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x42332b
jmp 0x4226bd
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4226bd
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4226bd
cmp edx, 1
je 0x42332b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42332b
cmp dword [ebp + 0x88], 0
je 0x4226f8
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4226f8
cmp dword [ebp + 0x18], 0
jne 0x4226f8
cmp dword [edi], 2
jne 0x4226f8
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4226f8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x422714
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x422714
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x422703
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x422664
jmp 0x42332b
cmp dword [ebp + 0x88], 0
je 0x42332b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42332b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42332b
jmp 0x41af06
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x4227b8
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x42332b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x422726
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4227aa
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4227aa
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x422792
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x422780
jmp 0x42332b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x42332b
cmp eax, dword [ebp + 0x84]
jbe 0x42332b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42332b
jmp 0x4214f9
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 0x42283f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x42332b
cmp edx, dword [ebp + 0x84]
jbe 0x42332b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42332b
jmp 0x41af06
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x422726
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42296a
test dl, 0x20
jne 0x42289e
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x42296a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4228c8
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 0x422968
test dl, 8
jne 0x4228f4
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 0x422968
test dl, 4
jne 0x42292c
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 0x422968
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 0x422986
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x42332b
cmp byte [eax], 0xa
jne 0x4229c0
inc eax
jmp 0x4229bd
cmp edx, 0xa
je 0x4229bb
cmp dword [ebp + 0x68], 0
jne 0x42332b
cmp edx, 0xb
je 0x4229bb
cmp edx, 0xc
je 0x4229bb
cmp edx, 0x85
je 0x4229bb
cmp edx, 0x2028
je 0x4229bb
cmp edx, 0x2029
jne 0x42332b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x422860
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422ab8
test dl, 0x20
jne 0x422a1a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422ab0
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422a39
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422ab0
and eax, 0x3f
test dl, 8
jne 0x422a59
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422ab0
test dl, 4
jne 0x422a82
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 0x422ab0
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 0x422ade
je 0x422b0c
cmp edx, 0xa0
ja 0x422ad6
je 0x422b0c
cmp edx, 9
je 0x422b0c
cmp edx, 0x20
jmp 0x422b06
cmp edx, 0x1680
jmp 0x422b06
cmp edx, 0x205f
ja 0x422b00
je 0x422b0c
cmp edx, 0x2000
jb 0x422b08
cmp edx, 0x200a
jbe 0x422b0c
cmp edx, 0x202f
jmp 0x422b06
cmp edx, 0x3000
je 0x422b0c
xor edx, edx
jmp 0x422b11
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4229e4
jmp 0x42332b
cmp dword [ebp + 0x88], 0
je 0x42332b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42332b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x42332b
jmp 0x41af06
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422c50
test dl, 0x20
jne 0x422bb2
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422c48
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422bd1
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422c48
and eax, 0x3f
test dl, 8
jne 0x422bf1
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422c48
test dl, 4
jne 0x422c1a
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 0x422c48
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 0x422c8f
je 0x422c9a
cmp edx, 0xa
jb 0x422c64
cmp edx, 0xd
jbe 0x422c9a
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422b80
jmp 0x42332b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x422c64
mov edx, 1
jmp 0x422c66
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422d87
test dl, 0x20
jne 0x422ce9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422d7f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422d08
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422d7f
and eax, 0x3f
test dl, 8
jne 0x422d28
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422d7f
test dl, 4
jne 0x422d51
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 0x422d7f
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 0x422d9c
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422cb3
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
jmp 0x422dd0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422ea4
test dl, 0x20
jne 0x422e06
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422e9c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422e25
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422e9c
and eax, 0x3f
test dl, 8
jne 0x422e45
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422e9c
test dl, 4
jne 0x422e6e
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 0x422e9c
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 0x42332b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422dd0
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
jmp 0x422ef0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422fc4
test dl, 0x20
jne 0x422f26
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422fbc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422f45
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422fbc
and eax, 0x3f
test dl, 8
jne 0x422f65
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422fbc
test dl, 4
jne 0x422f8e
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 0x422fbc
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 0x422fd9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422ef0
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4230d7
test dl, 0x20
jne 0x423039
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4230cf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423058
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4230cf
and eax, 0x3f
test dl, 8
jne 0x423078
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4230cf
test dl, 4
jne 0x4230a1
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 0x4230cf
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 0x42332b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423003
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4231f4
test dl, 0x20
jne 0x423156
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4231ec
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423175
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4231ec
and eax, 0x3f
test dl, 8
jne 0x423195
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4231ec
test dl, 4
jne 0x4231be
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 0x4231ec
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 0x423209
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423120
jmp 0x42332b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42332b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422b3a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423307
test dl, 0x20
jne 0x423269
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4232ff
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423288
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4232ff
and eax, 0x3f
test dl, 8
jne 0x4232a8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4232ff
test dl, 4
jne 0x4232d1
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 0x4232ff
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 0x42332b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x42332b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423233
cmp dword [esp + 0x80], 0
je 0x425bf8
jmp 0x419f9a
cmp eax, 0xf
ja case.0x423347.9
jmp dword [eax*4 + 0x4281ac]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4237d7
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x423404
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x423390
push 0
push edi
push eax
push edx
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x4237d7
jmp 0x4233b4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4233b4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4233b4
cmp edx, 1
je 0x4237d7
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4237d7
cmp dword [ebp + 0x88], 0
je 0x4233ef
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4233ef
cmp dword [ebp + 0x18], 0
jne 0x4233ef
cmp dword [edi], 2
jne 0x4233ef
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4233ef
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x423360
jmp 0x4237d7
cmp dword [ebp + 0x88], 0
je 0x4237d7
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4237d7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4237d7
jmp 0x41af06
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 0x423488
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x4237d7
cmp edx, dword [ebp + 0x84]
jbe 0x4237d7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4237d7
jmp 0x41af06
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x4237d7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4237d7
jmp 0x4234b0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423404
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x4234db
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x4237d7
cmp byte [eax], 0xa
jne 0x423505
inc eax
jmp 0x423502
cmp eax, 0xa
je 0x4234ff
cmp dword [ebp + 0x68], 0
jne 0x4237d7
cmp eax, 0xb
je 0x4234ff
cmp eax, 0xc
je 0x4234ff
cmp eax, 0x85
jne 0x4237d7
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x4234b0
jmp 0x4237d7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4237d7
jmp 0x423530
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423404
mov al, byte [ecx]
cmp al, 9
je 0x4237d7
cmp al, 0x20
je 0x4237d7
cmp al, 0xa0
je 0x4237d7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x423530
jmp 0x4237d7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4237d7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423404
mov al, byte [ecx]
cmp al, 9
je 0x42359e
cmp al, 0x20
je 0x42359e
cmp al, 0xa0
jne 0x4237d7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x423580
jmp 0x4237d7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4237d7
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423404
mov al, byte [ecx]
cmp al, 0xa
jb 0x4235e6
cmp al, 0xd
jbe 0x4237d7
cmp al, 0x85
je 0x4237d7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4235c4
jmp 0x4237d7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4237d7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423404
mov al, byte [ecx]
cmp al, 0xa
jb 0x4237d7
cmp al, 0xd
jbe 0x423632
cmp al, 0x85
jne 0x4237d7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x423610
jmp 0x4237d7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4237d7
jmp 0x423660
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423404
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x4237d7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x423660
jmp 0x4237d7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4237d7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423404
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x4237d7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4236a2
jmp 0x4237d7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4237d7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423404
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x4237d7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4236e4
jmp 0x4237d7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4237d7
jmp 0x423730
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423404
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x4237d7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x423730
jmp 0x4237d7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4237d7
jmp 0x423770
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423404
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x4237d7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x423770
jmp 0x4237d7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4237d7
jmp 0x4237b0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423404
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x4237d7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4237b0
cmp dword [esp + 0x80], 0
je 0x42483a
jmp 0x419f9a
mov esi, dword [esi]
test esi, esi
je 0x427cb1
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.0x423814
jmp dword [eax*4 + 0x4281ec]
cmp edi, 0xfffffc1b
je 0x4238e6
cmp edi, 0xfffffc20
jne 0x423863
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.0x423814.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42385f
cmp byte [ecx], 0x77
jne case.0x423814.49
xor edi, edi
jmp 0x42386b
test edi, edi
jne case.0x423814.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 0x4238e6
cmp dword [esi + 0x9c], 0x88
jb 0x4238b1
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42763a
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x427630
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x423cdc
mov edx, dword [esp + 0x8c]
jmp 0x423804
cmp edi, 0xfffffc20
jne 0x4239a3
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 0x4239f1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42396e
cmp byte [ecx], 0x77
jne 0x4239f1
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 0x423a07
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423804
test edi, edi
je 0x42396e
cmp edi, 0xfffffc1b
jne 0x4239f1
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x4239e3
cmp al, 0x77
jne 0x4239d4
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 0x4239c0
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 0x423cdc
mov edx, dword [esp + 0x8c]
jmp 0x423804
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x423a59
cmp eax, 0x81
je 0x423a59
cmp dword [ebp + 0x6c], 0
jne 0x423a63
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 0x423a63
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4e0c98]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x419f20
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 0x42765c
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x427652
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
cmp edi, 1
jne 0x423b23
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x423ac0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x423ad3
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 0x423b09
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 0x423af0
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x4e0c98]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x41a3ce.145
test edi, edi
je 0x423b33
cmp edi, 0xfffffc20
jne case.0x423814.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x423b49
movzx eax, byte [edx + 0x4e0c98]
jmp 0x423b4c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x423b69
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x419fa1
cmp dword [esi + 0x9c], 0x8c
jne 0x419f20
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42767e
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427674
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
cmp edi, 1
je 0x423c62
cmp edi, 0xfffffc19
je 0x423c62
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x423c0a
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.0x423814.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x423c12
cmp byte [ecx], 0x77
jmp 0x423c0c
test edi, edi
jne case.0x423814.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 0x423c68
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427697
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42768d
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x423c81
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423804
cmp dword [esi + 0x58], 0
je 0x4272be
mov esi, dword [esi]
test esi, esi
je 0x427c56
mov edi, 1
jmp 0x423804
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x423d4d
je 0x423ce6
cmp edi, 0xfffffc19
je 0x424583
cmp edi, 0xfffffc1b
jle case.0x423814.49
cmp edi, 0xfffffc1f
jle 0x423d0e
mov esi, dword [esi]
test esi, esi
jne 0x423804
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 0x423d0e
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x423d60
cmp byte [ecx], 0x77
je 0x423d60
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 0x423d11
cmp dword [esi + 0x58], 0
je 0x423f97
mov esi, dword [esi]
test esi, esi
je 0x427c56
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x423804
mov eax, edi
sub eax, 0
je 0x423d60
dec eax
je 0x424583
jmp case.0x423814.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 0x423d28
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4276ad
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4276a3
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
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 0x4272ec
cmp edi, 0xfffffc19
je 0x4272ec
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x423e19
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x41ad9b
push ecx
call dword [0x524380]
add esp, 4
jmp 0x41ad9b
test edi, edi
je 0x423e43
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x423e34
push ecx
call dword [0x524380]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x423cdc
jmp 0x4237f9
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 0x423ea9
cmp dword [esi + 0x58], 0
je 0x423e74
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4276f3
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4276e9
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x423df9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x423f03
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427741
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427737
mov esi, dword [esi]
test esi, esi
je 0x427c0b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423804
cmp al, 0x88
jb 0x427444
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427763
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427759
mov esi, dword [esi]
test esi, esi
je 0x427c0b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423804
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x427c63
mov edi, 0xfffffc1b
jmp 0x423804
test edi, edi
jne case.0x423814.49
mov edx, dword [esi + 0x2c]
jmp 0x423f80
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 0x423f80
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x419f9a
test edi, edi
je 0x41b814
jmp case.0x423814.49
test edi, edi
je 0x423f4f
jmp case.0x423814.49
cmp edi, 0xfffffc1b
jne 0x423fcb
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x423fcd
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x424dbb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427785
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42777b
mov esi, dword [esi]
test esi, esi
je 0x427c0b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423804
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424040
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.00428440
add esp, 0x14
test eax, eax
jns 0x4240a7
cmp eax, 0xfffffffe
jne 0x424069
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x425b81
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x425b81
cmp eax, dword [ebp + 0x84]
jbe 0x425b81
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41cdbe
jmp 0x425b81
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4277aa
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277a0
mov esi, dword [esi]
test esi, esi
je 0x427c0b
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x423804
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x420f26.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4277c3
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277b9
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424167
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425c66
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 0x425b81
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4277dc
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277d2
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x41ad9b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4277f5
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277eb
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424241
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425c66
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x424271
cmp dword [esi + 0x94], ecx
je 0x424271
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423804
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42780e
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427804
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
dec dword [esi + 8]
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427827
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42781d
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424321
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425c66
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x425b81
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427840
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427836
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
dec dword [esi + 8]
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427859
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42784f
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4243ee
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425c66
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x424583
cmp dword [esi + 0x94], ecx
je 0x424583
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427872
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427868
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42788b
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427881
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4244c5
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425c66
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x425b81
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278a1
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427897
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278b7
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4278ad
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424594
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423804
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x4245db
cmp dword [ebp + 0x88], 0
je 0x4245c3
cmp ecx, dword [ebp + 0x84]
jbe 0x4245c3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41cdbe
mov esi, dword [esi]
test esi, esi
je 0x427c18
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423804
cmp dword [esi + 0x7c], 0xc
jne 0x424602
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x424624
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x424641
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.0x42461d.15
jmp dword [eax*4 + 0x4282f8]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x424602
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x424602
cmp edi, 1
je 0x424641
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x424602
mov esi, dword [esi]
test esi, esi
je 0x427c18
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423804
cmp dword [ebp + 0x88], 0
je case.0x42461d.13
cmp edx, dword [ebp + 0x78]
jb case.0x42461d.13
cmp dword [ebp + 0x18], 0
jne case.0x42461d.13
cmp dword [ebp + 0x1c], 2
jne case.0x42461d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x42461d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41cdbe
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278cd
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4278c3
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x4246dd.14
movzx eax, byte [ecx + 0x428348]
jmp dword [eax*4 + 0x428338]
cmp edx, dword [ebp + 0x78]
jae case.0x42461d.13
cmp byte [edx], 0xa
jne case.0x42461d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x42461d.13
cmp dword [ebp + 0x68], 0
je case.0x42461d.13
jmp case.0x4246dd.14
cmp ecx, 9
je case.0x4246dd.14
cmp ecx, 0x20
je case.0x4246dd.14
cmp ecx, 0xa0
jmp 0x4247da
cmp ecx, 9
je case.0x42461d.13
cmp ecx, 0x20
je case.0x42461d.13
cmp ecx, 0xa0
je case.0x42461d.13
jmp case.0x4246dd.14
cmp ecx, 0xa
jb case.0x42461d.13
cmp ecx, 0xd
jbe case.0x4246dd.14
cmp ecx, 0x85
jmp 0x4247da
cmp ecx, 0xa
jb case.0x4246dd.14
cmp ecx, 0xd
jbe case.0x42461d.13
cmp ecx, 0x85
je case.0x42461d.13
jmp case.0x4246dd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x42461d.13
jmp case.0x4246dd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x4247da
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x42461d.13
jmp case.0x4246dd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x4247da
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x42461d.13
mov esi, dword [esi]
test esi, esi
je 0x427c18
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423804
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x42461d.13
mov esi, dword [esi]
test esi, esi
je 0x427c18
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423804
mov esi, dword [esi]
test esi, esi
je case.default.0x423814
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x423804
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x42483a
cmp eax, dword [esi + 0x30]
jbe 0x42483a
cmp byte [eax], 0xa
jne 0x42483a
cmp byte [eax - 1], 0xd
jne 0x42483a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278e3
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4278d9
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
cmp edi, 0xfffffc1a
jne 0x4248d1
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 0x4248c9
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 0x4248b0
jmp 0x424928
mov dword [esi + 8], eax
jmp 0x42494d
cmp edi, 0xfffffc20
jne 0x424905
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.0x423814.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42490d
cmp byte [ecx], 0x77
jmp 0x424907
test edi, edi
jne case.0x423814.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 0x424941
cmp dword [esi + 0x5c], 0
jne 0x423f97
cmp dword [esi + 0x54], 0
jne 0x423f97
jmp 0x425b81
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x424963
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x427925
push 0x134
call dword [0x524384]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42791b
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
mov esi, dword [esi]
test edi, edi
jne 0x423cd4
test esi, esi
je 0x427c7d
mov edi, 0xfffffc1c
jmp 0x423804
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427c97
mov edi, 0xfffffc1e
jmp 0x423804
cmp edi, 1
je 0x4249e3
cmp edi, 0xfffffc19
jne 0x4249fd
cmp dword [ebp + 0xac], 0
jne 0x4249fd
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x4239f1
cmp edi, 0xfffffc1f
jne 0x4239f1
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x424a32
test dl, dl
je 0x424a2e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x424a32
add eax, 2
add ecx, 2
test dl, dl
jne 0x424a12
xor eax, eax
jmp 0x424a37
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4239f1
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427c97
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x423804
cmp edi, 1
je 0x424a6d
cmp edi, 0xfffffc19
jne case.0x423814.51
cmp dword [ebp + 0xac], 0
jne case.0x423814.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x423cd4
test esi, esi
je 0x427c70
mov edi, 0xfffffc1d
jmp 0x423804
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427ca4
mov edi, 0xfffffc1f
jmp 0x423804
cmp edi, 1
je 0x424ad0
cmp edi, 0xfffffc19
jne case.0x423814.54
cmp dword [ebp + 0xac], 0
jne case.0x423814.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427c8a
mov edi, 0xfffffc20
jmp 0x423804
cmp edi, 0xfffffc1a
jne 0x424b71
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 0x424b69
mov edx, dword [esi + 0xc]
jmp 0x424b50
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 0x424b50
jmp 0x424bd8
mov dword [esi + 8], eax
jmp 0x41aad2
cmp edi, 0xfffffc20
jne 0x424ba5
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.0x423814.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x424bad
cmp byte [ecx], 0x77
jmp 0x424ba7
test edi, edi
jne case.0x423814.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 0x41aad2
cmp dword [esi + 0x5c], 0
jne 0x424c18
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 0x419f96
cmp dword [esi + 0x5c], 0
jne 0x419f96
jmp 0x425b81
cmp edi, 1
jne 0x424cd4
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x424c51
cmp al, 0x77
jne 0x425b81
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 0x424c51
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 0x419f96
cmp ecx, dword [esi + 0x38]
je 0x419f96
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x424d6d
test ecx, ecx
jne 0x42798e
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427984
mov esi, dword [esi]
test esi, esi
je 0x427c0b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423804
cmp edi, 0xfffffc20
jne 0x424d08
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.0x423814.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x424d10
cmp byte [ecx], 0x77
jmp 0x424d0a
test edi, edi
jne case.0x423814.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 0x424c40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427969
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42795f
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test ecx, ecx
jne 0x4279b3
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4279a9
mov esi, dword [esi]
test esi, esi
je 0x427c0b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423804
test edi, edi
je 0x427444
jmp case.0x423814.49
test edi, edi
jne case.0x423814.49
add dword [esi + 0xc], 3
jmp 0x419f20
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424de9
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x424eea
cmp ebx, 0xc0
jb 0x424eea
test bl, 0x20
jne 0x424e2b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x424ee7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x424e55
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x424eea
mov edx, dword [esi + 8]
test bl, 8
jne 0x424e7b
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 0x424ede
test bl, 4
jne 0x424eaa
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 0x424ede
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.004296c0
add esp, 0xc
test eax, eax
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4279d5
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4279cb
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x425b81
cmp dword [esp + 0x8c], edi
je 0x424f71
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x424f71
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x424f65
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4279ee
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4279e4
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424fcb
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x4250c0
test bl, 0x20
jne 0x425005
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4250bd
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42502f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4250c0
mov edx, dword [esi + 8]
test bl, 8
jne 0x425058
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 0x4250bb
test bl, 4
jne 0x425087
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 0x4250bb
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 0x4250d6
cmp dword [esi + 0x9c], 0x6e
jne 0x4250f3
jmp 0x41ad9b
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 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a07
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4279fd
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x41ad9b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42515c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x425150
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a20
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a16
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4251b6
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
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 0x425225
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x4251e5
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4251ea
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4251d4
cmp edi, 0xfffffffc
je 0x425217
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x425222
cmp edi, 0xfffffffd
je 0x425217
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x425222
cmp edi, 0xfffffffe
je 0x425217
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x425222
cmp edi, 0xffffffff
je 0x425217
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x425222
mov eax, dword [esi + 0x88]
jmp 0x425290
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x4252d0
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x4252d0
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x425257
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42525c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x425246
cmp edi, 0xfffffffc
je 0x42528d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4252d0
cmp edi, 0xfffffffd
je 0x42528d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4252d0
cmp edi, 0xfffffffe
je 0x42528d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4252d0
cmp edi, 0xffffffff
je 0x42528d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4252d0
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 0x427a39
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a2f
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
cmp dword [ebp + 0x88], 0
je case.0x420f26.14
cmp ebx, dword [ebp + 0x78]
jb case.0x420f26.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x420f26.14
jmp 0x41aef2
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42531c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x425310
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a52
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a48
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425382
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x425482
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4253bc
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42547f
test dl, 0x10
jne 0x4253de
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 0x425482
mov ecx, dword [esi + 8]
test dl, 8
jne 0x42540e
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 0x42547f
test dl, 4
jne 0x425444
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 0x42547f
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 0x424641
cmp dword [esi + 0x94], edx
je 0x424641
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4254c9
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4240d5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x4278ed
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4254fc
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4254f0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a6b
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a61
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425562
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x425657
test bl, 0x20
jne 0x42559c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x425654
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4255c6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x425657
mov edx, dword [esi + 8]
test bl, 8
jne 0x4255ef
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 0x425652
test bl, 4
jne 0x42561e
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 0x425652
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 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a84
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a7a
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4256c0
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4256b4
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a9d
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a93
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425726
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x425762
cmp dword [ebp + 0x88], 0
je 0x425b81
cmp ecx, dword [ebp + 0x84]
jbe 0x425b81
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41cdbe
jmp 0x425b81
cmp dword [esi + 0x7c], 0xc
jne 0x4257b4
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42578f
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00429d30
add esp, 0x14
test eax, eax
jne 0x425b81
jmp 0x4257b4
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4257b4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4257b4
cmp edi, 1
je 0x425b81
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x425b81
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42589c
test dl, 0x20
jne 0x4257e7
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x425899
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x42580e
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x425897
test dl, 8
jne 0x425834
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 0x425897
test dl, 4
jne 0x425863
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 0x425897
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.0x4258ab.15
jmp dword [eax*4 + 0x4283c4]
cmp dword [ebp + 0x88], 0
je case.0x4258ab.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x4258ab.13
cmp dword [ebp + 0x18], 0
jne case.0x4258ab.13
cmp dword [ebp + 0x1c], 2
jne case.0x4258ab.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x4258ab.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x4258ab.13
jmp 0x41cdbe
cmp edx, 0xd
ja 0x42592e
je 0x42591b
cmp edx, 0xa
je case.0x4258ab.13
jbe 0x425b81
cmp edx, 0xc
jmp 0x425948
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x4258ab.13
cmp byte [eax], 0xa
jne case.0x4258ab.13
inc eax
mov dword [esi + 8], eax
jmp case.0x4258ab.13
cmp edx, 0x85
je 0x42594e
cmp edx, 0x2027
jbe 0x425b81
cmp edx, 0x2029
ja 0x425b81
cmp dword [ebp + 0x68], 0
je case.0x4258ab.13
jmp 0x425b81
cmp edx, 0x180e
ja 0x4259cd
je 0x425b81
cmp edx, 0xa0
ja 0x4259c5
je 0x425b81
cmp edx, 9
je 0x425b81
cmp edx, 0x20
je 0x425b81
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4259b6
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4240d5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x4278ed
cmp edx, 0x1680
jmp 0x425981
cmp edx, 0x205f
ja 0x4259f7
je 0x425b81
cmp edx, 0x2000
jb case.0x4258ab.13
cmp edx, 0x200a
jbe 0x425b81
cmp edx, 0x202f
jmp 0x425981
cmp edx, 0x3000
jmp 0x425b7b
cmp edx, 0x180e
ja 0x425a34
je case.0x4258ab.13
cmp edx, 0xa0
ja 0x425a2c
je case.0x4258ab.13
cmp edx, 9
je case.0x4258ab.13
cmp edx, 0x20
jmp 0x425a68
cmp edx, 0x1680
jmp 0x425a68
cmp edx, 0x205f
ja 0x425a62
je case.0x4258ab.13
cmp edx, 0x2000
jb 0x425b81
cmp edx, 0x200a
jbe case.0x4258ab.13
cmp edx, 0x202f
jmp 0x425a68
cmp edx, 0x3000
je case.0x4258ab.13
jmp 0x425b81
cmp edx, 0x85
ja 0x425a98
je 0x425b81
cmp edx, 0xa
jb case.0x4258ab.13
cmp edx, 0xd
jbe 0x425b81
jmp case.0x4258ab.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x4258ab.13
jmp 0x425b81
cmp edx, 0x85
ja 0x425ac8
je case.0x4258ab.13
cmp edx, 0xa
jb 0x425b81
cmp edx, 0xd
jmp 0x425ad1
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x4258ab.13
jmp 0x425b81
cmp edx, 0x100
jae case.0x4258ab.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x4258ab.13
jmp 0x425b81
cmp edx, 0x100
jae 0x425b81
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x425b7b
cmp edx, 0x100
jae case.0x4258ab.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x4258ab.13
jmp 0x425b81
cmp edx, 0x100
jae 0x425b81
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x425b7b
cmp edx, 0x100
jae case.0x4258ab.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x4258ab.13
mov esi, dword [esi]
test esi, esi
je 0x427c18
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423804
cmp edx, 0x100
jae 0x425b81
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x4258ab.13
mov esi, dword [esi]
test esi, esi
je 0x427c18
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423804
mov esi, dword [esi]
test esi, esi
je case.default.0x423814
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x423804
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x425bdc
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x425bd0
cmp dword [esi + 0x7c], 0x11
jne 0x425bf8
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x425bf8
cmp byte [eax], 0xa
jne 0x425bf8
dec eax
cmp byte [eax], 0xd
jne 0x425bf8
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427ab6
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427aac
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425c5e
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x425c7e
cmp dword [ebp + 0x88], 0
je 0x424583
cmp eax, dword [ebp + 0x84]
jmp 0x4263d9
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x425cbd
cmp ecx, 0xc0
jb 0x425cbd
test cl, 0x20
jne 0x425c99
inc eax
jmp 0x425cba
test cl, 0x10
jne 0x425ca3
add eax, 2
jmp 0x425cba
test cl, 8
jne 0x425cad
add eax, 3
jmp 0x425cba
test cl, 4
jne 0x425cb7
add eax, 4
jmp 0x425cba
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x425cd4
mov esi, dword [esi]
test esi, esi
je 0x427c18
xor edi, edi
jmp 0x423804
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x425d03
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4240d5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x4278ed
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425d37
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x425e31
cmp ebx, 0xc0
jb 0x425e31
test bl, 0x20
jne 0x425d79
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x425e2e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425da3
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x425e31
mov edx, dword [esi + 8]
test bl, 8
jne 0x425dc9
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 0x425e2c
test bl, 4
jne 0x425df8
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 0x425e2c
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x425e53
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp eax, 9
je 0x425e78
cmp eax, 5
je 0x425e78
cmp eax, 8
je 0x425e78
xor eax, eax
jmp 0x425e7d
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427acf
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427ac5
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425ee6
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x425fdc
cmp ebx, 0xc0
jb 0x425fdc
test bl, 0x20
jne 0x425f28
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x425fd9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425f50
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x425fdc
mov edx, dword [esi + 8]
test bl, 8
jne 0x425f76
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 0x425fd9
test bl, 4
jne 0x425fa5
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 0x425fd9
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x425ffe
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427ae8
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427ade
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426088
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42617e
cmp ebx, 0xc0
jb 0x42617e
test bl, 0x20
jne 0x4260ca
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42617b
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4260f2
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42617e
mov edx, dword [esi + 8]
test bl, 8
jne 0x426118
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 0x42617b
test bl, 4
jne 0x426147
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 0x42617b
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x4261a0
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b01
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427af7
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426223
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426319
cmp ebx, 0xc0
jb 0x426319
test bl, 0x20
jne 0x426265
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426316
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42628d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x426319
mov edx, dword [esi + 8]
test bl, 8
jne 0x4262b3
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 0x426316
test bl, 4
jne 0x4262e2
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 0x426316
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x42633b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b1a
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b10
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4263be
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x426407
cmp dword [ebp + 0x88], 0
je 0x424583
cmp edi, dword [ebp + 0x84]
jbe 0x424583
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x424583
mov esi, dword [esi]
test esi, esi
je 0x427c3c
mov edi, 0xfffffff4
jmp 0x423804
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4264f5
cmp ebx, 0xc0
jb 0x4264f5
test bl, 0x20
jne 0x42643d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4264f2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426467
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4264f5
mov edx, dword [esi + 8]
test bl, 8
jne 0x42648d
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 0x4264f0
test bl, 4
jne 0x4264bc
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 0x4264f0
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x426517
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4266a8
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x426647
cmp ebx, 0xc0
jb 0x426647
test bl, 0x20
jne 0x42657b
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x42663f
test bl, 0x10
jne 0x4265a0
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 0x42663f
test bl, 8
jne 0x4265d1
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 0x42663f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x42660b
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 0x42663f
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x426669
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx ecx, byte [eax*8 + 0x4e0fa2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e0e28], eax
je 0x4266a8
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x426540
cmp dword [ebp + 0x88], 0
je 0x4266d5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4266d5
cmp eax, dword [ebp + 0x84]
jbe 0x4266d5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af06
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b33
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b29
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x42673c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42673c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x426730
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419f20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b4c
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b42
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x426797
movzx ebx, byte [ecx]
jmp 0x426885
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4267ac
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4267a0
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x426885
test bl, 0x20
jne 0x4267cf
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x42687d
test bl, 0x10
jne 0x4267ef
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 0x42687d
test bl, 8
jne 0x426818
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 0x42687d
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x42684d
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 0x42687d
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x4268a7
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa2]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x419f20
dec edi
cmp dword [esp + 0x8c], 0
jne 0x4268df
movzx ebx, byte [edi]
jmp 0x42699e
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x4268f1
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x4268e7
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x42699e
test bl, 0x20
jne 0x426911
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x426996
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42692e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x426996
and eax, 0x3f
test bl, 8
jne 0x426949
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x426996
test bl, 4
jne 0x42696d
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 0x426996
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x4269c0
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx edx, byte [eax*8 + 0x4e0fa2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4e0e28], eax
je 0x4225f6
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x4268c0
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426a21
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426b1b
cmp ebx, 0xc0
jb 0x426b1b
test bl, 0x20
jne 0x426a63
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426b18
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426a8d
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426b1b
mov edx, dword [esi + 8]
test bl, 8
jne 0x426ab3
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 0x426b16
test bl, 4
jne 0x426ae2
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 0x426b16
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 + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x426b3d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x426b64
cmp eax, 3
je 0x426b64
xor eax, eax
jmp 0x426b69
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b7e
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b74
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426bd2
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426cd3
cmp ebx, 0xc0
jb 0x426cd3
test bl, 0x20
jne 0x426c14
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426cd0
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426c3e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426cd3
mov edx, dword [esi + 8]
test bl, 8
jne 0x426c64
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 0x426cc7
test bl, 4
jne 0x426c93
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 0x426cc7
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 0x426cfe
cmp ebx, 0x40
je 0x426cfe
cmp ebx, 0x60
je 0x426cfe
cmp ebx, 0xa0
jb 0x426cf2
cmp ebx, 0xd7ff
jbe 0x426cfe
cmp ebx, 0xe000
jae 0x426cfe
xor eax, eax
jmp 0x426d03
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41b6e2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b97
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b8d
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426d6c
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426e6d
cmp ebx, 0xc0
jb 0x426e6d
test bl, 0x20
jne 0x426dae
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426e6a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426dd8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426e6d
mov edx, dword [esi + 8]
test bl, 8
jne 0x426dfe
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 0x426e61
test bl, 4
jne 0x426e2d
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 0x426e61
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 0x426eb0
je case.0x426ed0.8192
cmp ebx, 0x85
ja 0x426e9c
je case.0x426ed0.8192
cmp ebx, 9
jb case.0x426ed0.8203
cmp ebx, 0xd
jbe case.0x426ed0.8192
cmp ebx, 0x20
jmp 0x426ee5
cmp ebx, 0xa0
je case.0x426ed0.8192
cmp ebx, 0x1680
jmp 0x426ee5
cmp ebx, 0x202f
ja 0x426ed7
je case.0x426ed0.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x426ed0.8203
movzx eax, byte [eax + 0x42840c]
jmp dword [eax*4 + 0x428404]
cmp ebx, 0x205f
je case.0x426ed0.8192
cmp ebx, 0x3000
je case.0x426ed0.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4e2620]
shl eax, 7
and ebx, 0x8000007f
jns 0x426f09
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
cmp dword [eax*4 + 0x4e0db0], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x426f3c
jmp 0x41ad9b
cmp dword [esi + 0x68], 0
jne 0x41b6e2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427bb0
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427ba6
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426f9c
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427092
cmp ebx, 0xc0
jb 0x427092
test bl, 0x20
jne 0x426fde
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42708f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427006
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x427092
mov edx, dword [esi + 8]
test bl, 8
jne 0x42702c
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 0x42708f
test bl, 4
jne 0x42705b
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 0x42708f
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 + 0x4e2620]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x4270b5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e4820]
movzx eax, byte [eax*8 + 0x4e0fa1]
mov eax, dword [eax*4 + 0x4e0db0]
cmp eax, 1
je 0x4270e1
cmp eax, 3
je 0x4270e1
cmp ebx, 0x5f
je 0x4270e1
xor eax, eax
jmp 0x4270e6
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ad9b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427bc9
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427bbf
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
test edi, edi
jne case.0x423814.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42714f
mov esi, dword [esi]
test esi, esi
je 0x427c18
jmp 0x423804
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4263c6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42724c
cmp ebx, 0xc0
jb 0x42724c
test bl, 0x20
jne 0x427191
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427249
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4271b9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42724c
mov edx, dword [esi + 8]
test bl, 8
jne 0x4271df
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 0x427242
test bl, 4
jne 0x42720e
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 0x427242
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 + 0x4e0e60]
lea eax, [eax*4 + 0x4e0e60]
cmp ebx, ecx
jb 0x42726e
lea eax, [eax + 4]
cmp ebx, ecx
je 0x4272b3
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x427261
cmp dword [esi + 0x68], 0
je 0x41b6e2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427be2
push 0x134
call dword [0x524384]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427bd8
mov esi, dword [esi]
test esi, esi
je 0x427c0b
lea edi, [eax - 6]
jmp 0x4237f9
cmp dword [esi + 0x68], 0
je 0x427278
jmp 0x41b6e2
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 0x4272c1
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x419f9a
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x427303
push ecx
call dword [0x524380]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x419f9a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4250f9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x424f05
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42529b
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4254a0
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x425669
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x425cda
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x425e8c
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42602e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4261c9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426364
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426b78
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426f42
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4270f5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42727e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426d12
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x42598d
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4266db
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x419f20
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 + 0x4e0c98]
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 0x419f10
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 0x427706
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 0x427706
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x42745f
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 0x427706
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x42745f
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 0x427706
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x42745f
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 0x419f10
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 0x4278f6
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 0x4278f6
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 0x4278f6
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 0x4278f6
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 0x4278f6
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 0x427706
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 0x427706
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x4276b7
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 0x419f10
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 + 0x4e0c98]
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 0x419f10
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 0x4278f6
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 0x4278f6
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 0x4278f6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x4278ed
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 0x419f10
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 0x427706
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 0x427706
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 0x4278f6
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 0x4278f6
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 0x4278f6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x4278ed
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x4278ed
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