Function at 0x419f40
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 0x419fce
mov esi, dword [esi]
test esi, esi
je 0x427c71
mov edi, 0xfffffff8
jmp 0x423879
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x419fea
mov esi, dword [esi]
test esi, esi
je 0x427c7e
mov edi, 0xffffffeb
jmp 0x423879
cmp dword [ebp + 0x98], 2
jne 0x41a021
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 0x41a021
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.0x41a054.98
movzx eax, byte [edx + 0x427e8c]
jmp dword [eax*4 + 0x427d40]
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 0x4274d5
push 0x134
call dword [0x515ff0]
mov edi, eax
add esp, 4
test edi, edi
jne 0x4274cf
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov edx, dword [esi + 4]
test edx, edx
jne 0x427525
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42751f
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov edx, dword [esi + 4]
test edx, edx
jne 0x427543
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42753d
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x427561
push 0x134
call dword [0x515ff0]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42755b
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov edx, dword [esi + 4]
test edx, edx
jne 0x427576
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x427570
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x41a1ae
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4dbcb8]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x41a021
mov edi, dword [esi + 4]
test edi, edi
jne 0x427594
push 0x134
call dword [0x515ff0]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42758e
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov edx, dword [esi + 4]
test edx, edx
jne 0x4275a9
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4275a3
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x4275c7
push 0x134
call dword [0x515ff0]
mov edi, eax
add esp, 4
test edi, edi
jne 0x4275c1
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x424db8
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.0x41a054.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 0x42391b
mov dword [esi + 0x54], ebx
jmp 0x41aabf
mov dword [esi + 0x54], ebx
jmp 0x41aae3
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 0x41a428
mov edi, dword [0x5188cc]
test edi, edi
je 0x41a414
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 0x41a3ce
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 0x41a403
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
jns 0x41a414
mov esi, dword [esi]
test esi, esi
je 0x423d5c
jmp 0x423879
movzx eax, byte [0x4dbd2e]
add dword [esi + 0xc], eax
movzx eax, byte [0x4dbd2e]
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.0x41a44e.146
movzx eax, byte [eax + 0x427f48]
jmp dword [eax*4 + 0x427f30]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x41a44e.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x41a487
cmp edx, dword [edi + 4]
je 0x41a487
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x423bb3
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x423bb3
cmp dword [ebp + 0xa4], ebx
je case.0x41a44e.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.0x41a44e.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 0x423bb3
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x41a4d0
jmp 0x423bb3
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 0x41a534
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x41a534
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x41a44e.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x41a44e.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 0x423bb3
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 0x41a589
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x41a598
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x41a567
jmp 0x423bb3
mov dword [esi + 0x58], 1
jmp 0x423bb3
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4275dc
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4275d6
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x41a634
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41a016
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 0x41a016
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41a683
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 0x41a016
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x41a6d6
cmp edx, 0x9f
je 0x41a6d6
cmp dword [ebp + 0xa4], ebx
jne 0x41a6d6
cmp dword [ebp + 0x5c], ebx
jne 0x41a6c5
cmp dword [ebp + 0x60], ebx
je 0x41a6d6
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x41a6d6
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
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 0x423d5c
jmp 0x423879
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41a72f
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x423cad
mov dword [esi + 0x58], ebx
jmp 0x423cad
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41a75b
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x423dfb
mov dword [esi + 0x58], ebx
jmp 0x423dfb
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x41a7c2
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x41a7a8
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x420fa6.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41a7a4
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x41a798
test edx, edx
jg 0x41a780
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x41a016
mov dword [ebp + 0x84], eax
jmp 0x41a016
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 0x41a7a8
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423880
mov edi, dword [0x5188cc]
test edi, edi
je 0x41a8cc
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 0x41a886
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 0x41a8bb
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
jns 0x41a8cc
mov esi, dword [esi]
test esi, esi
je 0x423d5c
jmp 0x423879
add dword [esi + 0xc], 6
jmp 0x41a01a
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 0x41a8f6
xor edx, edx
jmp 0x41a903
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 0x41a923
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x41a91d
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x41a984
mov ecx, dword [ecx]
test ecx, ecx
jne 0x41a910
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 0x41a998
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 0x423ee4
mov esi, dword [esi]
test esi, esi
je 0x427ca2
mov edi, 0xffffffe6
jmp 0x423879
shl eax, 2
push eax
call dword [0x515fe8]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x41a95e
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x41a9c1
jmp 0x41a021
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427617
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427611
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x41aa20
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427635
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42762f
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x41aa73
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41a021
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 0x41aabf
cmp eax, 0x8b
jne 0x41aae3
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 0x41ab00
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 0x4249cd
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 0x41ab7d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4279c7
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4279bd
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x41abd8
cmp al, 0x81
je 0x41abd8
mov dword [esi + 0x38], ebx
jmp 0x41abe9
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 0x41abf6
cmp al, 0x80
jbe 0x41abfa
cmp al, 0x82
jne 0x41ac26
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 0x427cd6
mov edi, 1
jmp 0x423879
cmp al, 0x85
je 0x41ac3a
cmp al, 0x8a
je 0x41ac3a
cmp al, 0x86
je 0x41ac3a
cmp al, 0x8b
jne 0x41ad01
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 0x41ac76
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x41ac76
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x41ac0c
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 0x41aca5
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41ad01
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x41acc5
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41acc5
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 0x41ad01
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x41ad37
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 0x427caf
mov edi, 0xfffffc1a
jmp 0x423879
cmp cl, 0x78
je 0x41adb0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x41adb0
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x41ad7e
test ecx, ecx
jne 0x427656
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427650
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test ecx, ecx
jne 0x427677
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427671
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x424017
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427695
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42768f
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
cmp dword [ebp + 0x44], ebx
je case.0x41a054.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x41a054.1
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x41aed8
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
cmp dword [ebp + 0x44], ebx
je 0x41ae4a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41ae4a
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x41b894
cmp ecx, dword [ebp + 0x78]
je 0x41aeb0
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x41ae88
cmp ecx, edx
jbe 0x41aeb0
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00429f00
add esp, 0x14
test eax, eax
jne 0x41b894
jmp 0x41aeb0
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x41aeb0
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41aeb0
cmp edi, 1
je 0x41b894
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41b894
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423879
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x41ae15
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x41a021
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41af9a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41af15
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x41b894
jmp 0x41af39
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41af39
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41af39
cmp edx, 1
je 0x41b894
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41b894
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x420fa6.14
cmp dword [ebp + 0x18], ebx
jne case.0x420fa6.14
cmp dword [edi], 2
jne case.0x420fa6.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x420fa6.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x420fa6.14
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423879
cmp dword [ebp + 0x48], ebx
jne 0x41ae1b
cmp dword [ebp + 0x88], ebx
je 0x41b894
cmp ecx, dword [ebp + 0x84]
jbe 0x41b894
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b894
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423879
cmp dword [ebp + 0x48], ebx
jne 0x41ae1b
cmp dword [ebp + 0x58], ebx
je case.0x41a054.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41ae1b
cmp dword [ebp + 0x88], ebx
je 0x41aed8
cmp eax, dword [ebp + 0x84]
jbe 0x41aed8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41aed8
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423879
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41b0a5
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41b06d
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x41b095
jmp 0x41af39
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41af39
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41af39
cmp edx, 1
je 0x41b095
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x41af39
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x41af39
cmp dword [ebp + 0x88], ebx
je 0x41b894
cmp ecx, dword [ebp + 0x84]
jbe 0x41b894
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b894
jmp 0x41af86
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41b3a7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x41b0f5
mov dword [esi + 0x5c], ebx
jmp 0x41b22e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x41b10a
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x41b100
cmp edx, dword [ebp + 0x84]
jae 0x41b118
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41b1cc
test bl, 0x20
jne 0x41b140
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x41b1cc
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41b15a
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x41b1c2
and eax, 0x3f
test bl, 8
jne 0x41b175
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x41b1c2
test bl, 4
jne 0x41b199
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 0x41b1c2
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 0x41b267
cmp ebx, 0x5f
jne 0x41b1e4
mov dword [esi + 0x5c], 1
jmp 0x41b22e
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41b206
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41b278
cmp eax, 3
je 0x41b278
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x41b27f
cmp dword [ebp + 0x88], 0
je 0x41b25b
cmp edx, dword [ebp + 0x84]
jbe 0x41b25b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
mov dword [esi + 0x54], 0
jmp 0x41b4e5
cmp ebx, 0x100
jae 0x41b229
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41b229
mov eax, 1
jmp 0x41b22b
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41b329
test bl, 0x20
jne 0x41b29f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x41b321
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41b2b9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x41b321
and eax, 0x3f
test bl, 8
jne 0x41b2d4
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x41b321
test bl, 4
jne 0x41b2f8
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 0x41b321
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 0x41b38c
cmp ebx, 0x5f
jne 0x41b340
mov dword [esi + 0x54], 1
jmp 0x41b4e5
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41b362
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41b39d
cmp eax, 3
je 0x41b39d
xor eax, eax
jmp 0x41b4e2
cmp ebx, 0x100
jae 0x41b385
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41b385
mov eax, 1
jmp 0x41b4e2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41b3b7
mov dword [esi + 0x5c], ebx
jmp 0x41b452
cmp eax, dword [ebp + 0x84]
ja 0x41b3c6
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x41b43e
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x41b3e0
mov dword [esi + 0x5c], 1
jmp 0x41b452
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ecx, 0x8000007f
jns 0x41b402
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41b430
cmp eax, 3
je 0x41b430
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x41b44f
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x41b44f
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 0x41b493
cmp dword [ebp + 0x88], ebx
je 0x41b48e
cmp eax, dword [ebp + 0x84]
jbe 0x41b48e
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b48e
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423880
mov dword [esi + 0x54], ebx
jmp 0x41b4e5
cmp dword [ebp + 0x54], ebx
je 0x41b4d2
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x41b4a9
mov dword [esi + 0x54], 1
jmp 0x41b4e5
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ecx, 0x8000007f
jns 0x41b4cb
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x41b364
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 0x41b500
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x41b508
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x41a021
jmp 0x41ae1b
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x41b54d
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x41b578
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x41ae1b
jmp 0x41b578
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x41b578
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41b578
cmp edx, 1
je 0x41ae1b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41ae1b
cmp dword [ebp + 0x88], ebx
je case.0x41a054.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x41a054.13
cmp dword [ebp + 0x18], ebx
jne case.0x41a054.13
cmp dword [ebp + 0x1c], 2
jne case.0x41a054.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x41a054.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41b5d6
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
cmp eax, dword [ebp + 0x84]
jbe case.0x420fa6.14
jmp 0x41af72
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41aed8
cmp eax, dword [ebp + 0x78]
jae 0x41aed8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41aed8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x41b5f2
inc dword [esi + 0xc]
jmp 0x41a021
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41b5b9
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41a021
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x41b64d
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
cmp edi, dword [ebp + 0x84]
jbe case.0x420fa6.14
jmp 0x41af72
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41b749
cmp ebx, 0xc0
jb 0x41b749
test bl, 0x20
jne 0x41b68a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41b746
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b6b4
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41b749
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b6da
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 0x41b73d
test bl, 4
jne 0x41b709
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 0x41b73d
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 0x41b894
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41b894
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423880
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41b87b
cmp ebx, 0xc0
jb 0x41b87b
test bl, 0x20
jne 0x41b7bc
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41b878
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b7e6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41b87b
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b80c
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 0x41b86f
test bl, 4
jne 0x41b83b
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 0x41b86f
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 0x41a7dd
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41a7dd
inc dword [esi + 0xc]
jmp 0x41a01a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41b9a4
cmp ebx, 0xc0
jb 0x41b9a4
test bl, 0x20
jne 0x41b8e5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41b9a1
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41b90f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41b9a4
mov edx, dword [esi + 8]
test bl, 8
jne 0x41b935
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 0x41b998
test bl, 4
jne 0x41b964
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 0x41b998
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 0x41b894
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x41b75c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bac4
cmp ebx, 0xc0
jb 0x41bac4
test bl, 0x20
jne 0x41ba05
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bac1
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41ba2f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bac4
mov edx, dword [esi + 8]
test bl, 8
jne 0x41ba55
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 0x41bab8
test bl, 4
jne 0x41ba84
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 0x41bab8
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 0x41a7dd
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x41a7dd
inc dword [esi + 0xc]
jmp 0x41a01a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bbed
cmp ebx, 0xc0
jb 0x41bbed
test bl, 0x20
jne 0x41bb2e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bbea
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bb58
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bbed
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bb7e
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 0x41bbe1
test bl, 4
jne 0x41bbad
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 0x41bbe1
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 0x41b894
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x41b75c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bd0d
cmp ebx, 0xc0
jb 0x41bd0d
test bl, 0x20
jne 0x41bc4e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bd0a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bc78
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bd0d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bc9e
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 0x41bd01
test bl, 4
jne 0x41bccd
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 0x41bd01
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 0x41a7dd
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41a7dd
inc dword [esi + 0xc]
jmp 0x41a01a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41be36
cmp ebx, 0xc0
jb 0x41be36
test bl, 0x20
jne 0x41bd77
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41be33
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bda1
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41be36
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bdc7
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 0x41be2a
test bl, 4
jne 0x41bdf6
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 0x41be2a
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 0x41beaf
je 0x41be51
cmp ebx, 0xa
je 0x41b894
jbe 0x41b762
cmp ebx, 0xc
jmp 0x41bec9
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41be9a
cmp dword [ebp + 0x88], 0
je 0x41b894
cmp eax, dword [ebp + 0x84]
jbe 0x41b894
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b894
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423880
cmp byte [eax], 0xa
jne 0x41b894
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41a01a
cmp ebx, 0x85
je 0x41becf
cmp ebx, 0x2027
jbe 0x41b762
cmp ebx, 0x2029
ja 0x41b762
cmp dword [ebp + 0x68], 0
jmp 0x41b75c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41bfe0
cmp ebx, 0xc0
jb 0x41bfe0
test bl, 0x20
jne 0x41bf21
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41bfdd
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41bf4b
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41bfe0
mov edx, dword [esi + 8]
test bl, 8
jne 0x41bf71
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 0x41bfd4
test bl, 4
jne 0x41bfa0
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 0x41bfd4
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 0x41c018
je 0x41a7dd
cmp ebx, 0xa0
ja 0x41c00d
je 0x41a7dd
cmp ebx, 9
je 0x41a7dd
cmp ebx, 0x20
jmp 0x41b88e
cmp ebx, 0x1680
jmp 0x41b88e
cmp ebx, 0x205f
ja 0x41c049
je 0x41a7dd
cmp ebx, 0x2000
jb 0x41b894
cmp ebx, 0x200a
jbe 0x41a7dd
cmp ebx, 0x202f
jmp 0x41b88e
cmp ebx, 0x3000
je 0x41a7dd
inc dword [esi + 0xc]
jmp 0x41a01a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c165
cmp ebx, 0xc0
jb 0x41c165
test bl, 0x20
jne 0x41c0a6
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c162
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c0d0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c165
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c0f6
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 0x41c159
test bl, 4
jne 0x41c125
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 0x41c159
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 0x41c19d
je 0x41b894
cmp ebx, 0xa0
ja 0x41c192
je 0x41b894
cmp ebx, 9
je 0x41b894
cmp ebx, 0x20
jmp 0x41b75c
cmp ebx, 0x1680
jmp 0x41b75c
cmp ebx, 0x205f
ja 0x41c1ce
je 0x41b894
cmp ebx, 0x2000
jb 0x41b762
cmp ebx, 0x200a
jbe 0x41b894
cmp ebx, 0x202f
jmp 0x41b75c
cmp ebx, 0x3000
jmp 0x41b75c
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c2e1
cmp ebx, 0xc0
jb 0x41c2e1
test bl, 0x20
jne 0x41c222
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c2de
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c24c
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c2e1
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c272
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 0x41c2d5
test bl, 4
jne 0x41c2a1
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 0x41c2d5
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 0x41c309
je 0x41b762
cmp ebx, 0xa
jb 0x41b894
cmp ebx, 0xd
jbe 0x41b762
inc dword [esi + 0xc]
jmp 0x41a01a
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41b894
jmp 0x41b762
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c425
cmp ebx, 0xc0
jb 0x41c425
test bl, 0x20
jne 0x41c366
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c422
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c390
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c425
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c3b6
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 0x41c419
test bl, 4
jne 0x41c3e5
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 0x41c419
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 0x41c44a
je 0x41b894
cmp ebx, 0xa
jb 0x41a7dd
cmp ebx, 0xd
jbe 0x41b894
jmp 0x41a7dd
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41a7dd
inc dword [esi + 0xc]
jmp 0x41a01a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41c55d
cmp ebx, 0xc0
jb 0x41c55d
test bl, 0x20
jne 0x41c4a9
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c55a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c4d1
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x41c55d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c4f7
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 0x41c55a
test bl, 4
jne 0x41c526
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 0x41c55a
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 + 0x4dd640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41c580
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 + 0x4df840]
cmp eax, 0xa
ja case.default.0x41c59a
jmp dword [eax*4 + 0x427f5c]
cmp dword [esi + 0x9c], 0xf
jne 0x41a016
jmp 0x41ae1b
mov al, byte [edx*8 + 0x4dbfc1]
cmp al, 9
je 0x41c5ca
cmp al, 5
je 0x41c5ca
cmp al, 8
je 0x41c5ca
xor ecx, ecx
jmp 0x41c5cf
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x41a016
jmp 0x41ae1b
movzx ecx, byte [edx*8 + 0x4dbfc1]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x4dbdd0]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x41a016
jmp 0x41ae1b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4dbfc1]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x41a016
jmp 0x41ae1b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4dbfc0]
jmp 0x41c62b
movzx eax, byte [edx*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41c5ca
cmp eax, 3
je 0x41c5ca
xor ecx, ecx
jmp 0x41c5cf
cmp ebx, 0x180e
ja 0x41c6c3
je case.0x41c59a.0
cmp ebx, 0x85
ja 0x41c6af
je case.0x41c59a.0
cmp ebx, 9
jb case.0x41c6e3.8203
cmp ebx, 0xd
jbe case.0x41c59a.0
cmp ebx, 0x20
jmp 0x41c6fc
cmp ebx, 0xa0
je case.0x41c59a.0
cmp ebx, 0x1680
jmp 0x41c6fc
cmp ebx, 0x202f
ja 0x41c6ea
je case.0x41c59a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x41c6e3.8203
movzx eax, byte [ebx + 0x427f90]
jmp dword [eax*4 + 0x427f88]
cmp ebx, 0x205f
je case.0x41c59a.0
cmp ebx, 0x3000
je case.0x41c59a.0
movzx eax, byte [edx*8 + 0x4dbfc1]
xor ecx, ecx
cmp dword [eax*4 + 0x4dbdd0], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x41c637
movzx eax, byte [edx*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41c5ca
cmp eax, 3
je 0x41c5ca
cmp ebx, 0x5f
je 0x41c5ca
xor ecx, ecx
jmp 0x41c5cf
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x4dbe80]
lea eax, [eax*4 + 0x4dbe80]
cmp ebx, ecx
jb 0x41c77d
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x41c78f
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x41c770
cmp dword [esi + 0x9c], 0x10
jne 0x41a016
jmp 0x41ae1b
cmp dword [esi + 0x9c], 0x10
je 0x41a016
jmp 0x41ae1b
cmp ebx, 0x24
je 0x41c5ca
cmp ebx, 0x40
je 0x41c5ca
cmp ebx, 0x60
je 0x41c5ca
cmp ebx, 0xa0
jb 0x41c7d0
cmp ebx, 0xd7ff
jbe 0x41c5ca
cmp ebx, 0xe000
jae 0x41c5ca
xor ecx, ecx
jmp 0x41c5cf
mov esi, dword [esi]
test esi, esi
je case.default.0x423894
mov edi, 0xfffffff2
jmp 0x423879
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x41c902
cmp ebx, 0xc0
jb 0x41c902
test bl, 0x20
jne 0x41c840
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c8ff
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c86f
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 0x41c902
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c895
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 0x41c8f8
test bl, 4
jne 0x41c8c4
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 0x41c8f8
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41c924
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41cab6
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x41ca4e
cmp ebx, 0xc0
jb 0x41ca4e
test bl, 0x20
jne 0x41c985
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x41ca46
test bl, 0x10
jne 0x41c9aa
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 0x41ca46
test bl, 8
jne 0x41c9d8
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 0x41ca46
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x41ca12
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 0x41ca46
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41ca70
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx ecx, byte [eax*8 + 0x4dbfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dbe48], eax
je 0x41cab6
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 0x41c950
cmp dword [ebp + 0x88], 0
je 0x41b894
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41b894
cmp eax, dword [ebp + 0x84]
jbe 0x41b894
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b894
jmp 0x41af86
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 0x41cbe4
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 0x41cb74
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x41cb7d
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x41cb50
jmp 0x41cbe4
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x41cbe4
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 0x41cbd4
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x41cbd4
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x41cbde
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.0x41cbff
movzx eax, byte [eax + 0x427fc4]
jmp dword [eax*4 + 0x427fbc]
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 + 0x4db310]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4db31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41cc8d
mov dword [esi + 0x8c], getsockopt
jmp 0x41cc8d
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 0x41cc89
mov dword [esi + 0x8c], getsockopt
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x41a021
jns 0x41ccb1
cmp dword [esi + 0x90], 0
je 0x41a021
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41ccef
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.004284c0
add esp, 0x14
test eax, eax
js 0x41cd21
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x41ccc0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41a021
cmp dword [esp + 0x80], 0
je 0x41cd4a
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x424132
cmp eax, 0xfffffffe
jne 0x41cd2c
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x420fa6.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x420fa6.14
jmp 0x41b5c5
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x41cd60
cmp edi, dword [esi + 0x8c]
jge 0x424181
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.004284c0
add esp, 0x14
test eax, eax
js 0x41cd95
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x41cd60
cmp eax, 0xfffffffe
jne 0x424181
cmp dword [ebp + 0x88], 0
je 0x424181
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x424181
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x424181
jmp 0x41af86
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.004284c0
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x41ce59
cmp eax, 0xfffffffe
jne 0x41ce05
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x42475d.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x42475d.14
cmp eax, dword [ebp + 0x84]
jbe case.0x42475d.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x42475d.14
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x423884
add dword [esi + 8], eax
jmp 0x41a01a
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.0x41ce87
movzx eax, byte [eax + 0x427fd4]
jmp dword [eax*4 + 0x427fcc]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41ceaa
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x41ceb5
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4db310]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4db31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41cf4c
mov dword [esi + 0x8c], getsockopt
jmp 0x41cf4c
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 0x41cf32
mov dword [esi + 0x8c], getsockopt
add dword [esi + 0xc], 5
jmp 0x41cf4c
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41d0ac
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41d101
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41d05c
test bl, 0x20
jne 0x41cfaa
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41d059
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41cfd1
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41d057
test bl, 8
jne 0x41cff4
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 0x41d057
test bl, 4
jne 0x41d023
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 0x41d057
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 0x41d06d
cmp dword [esi + 0x9c], 0x6e
jmp 0x41d082
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.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41cf70
jmp 0x41d0f3
cmp dword [ebp + 0x88], 0
je case.0x420fa6.14
mov eax, dword [esi + 8]
jmp 0x41b5c5
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41d0fa
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d097
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.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41d0c0
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41a01a
test ebx, ebx
je 0x41d12a
test edx, edx
jne 0x427397
mov dword [esi + 0x84], eax
jmp 0x42421b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x41d2e2
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x41d2cf
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x41d2a7
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x41d256
test bl, 0x20
jne 0x41d19b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x41d256
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41d1c3
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x41d24c
and eax, 0x3f
test bl, 8
jne 0x41d1e9
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 0x41d24c
test bl, 4
jne 0x41d218
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 0x41d24c
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 0x41d267
cmp dword [esi + 0x9c], 0x6e
jmp 0x41d27c
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 0x41d2cf
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 0x41d151
jmp 0x41d2cf
cmp dword [ebp + 0x88], 0
je 0x41d2cf
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41d2cf
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x4251dc
jmp 0x41a01a
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x41d35a
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x41d332
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 0x41d35a
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 0x41d2f1
jmp 0x41d35a
cmp dword [ebp + 0x88], 0
je 0x41d35a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41d35a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x42425b
jmp 0x41a01a
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.0x41d3a5
movzx eax, byte [eax + 0x427fe8]
jmp dword [eax*4 + 0x427fe0]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41d3c8
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x41d3d3
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4db310]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4db31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41d46a
mov dword [esi + 0x8c], getsockopt
jmp 0x41d46a
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 0x41d450
mov dword [esi + 0x8c], getsockopt
add dword [esi + 0xc], 5
jmp 0x41d46a
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41d5a5
jmp 0x41d480
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41d57a
cmp edx, 0xc0
jb 0x41d57a
test dl, 0x20
jne 0x41d4c8
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41d577
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41d4ef
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41d575
test dl, 8
jne 0x41d512
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 0x41d575
test dl, 4
jne 0x41d541
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 0x41d575
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.00429740
add esp, 0xc
test eax, eax
je case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41d480
jmp 0x41d5ac
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41a021
cmp dword [esp + 0x84], 0
jne 0x4273a8
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 0x41d73d
jmp 0x41d5f0
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x41d713
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x41d6db
cmp edx, 0xc0
jb 0x41d6db
test dl, 0x20
jne 0x41d63c
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x41d6db
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x41d65b
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x41d6d1
and eax, 0x3f
test dl, 8
jne 0x41d67b
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x41d6d1
test dl, 4
jne 0x41d6a4
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 0x41d6d1
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.00429740
add esp, 0xc
test eax, eax
je 0x41d73d
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x41d5f0
jmp 0x41d73d
cmp dword [ebp + 0x88], 0
je 0x41d736
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41d736
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41af86
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x41a021
jmp 0x424ff1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41d929
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 0x41d8b0
test al, 0x20
jne 0x41d7b0
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 0x41d8b0
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41d7ea
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 0x41d8b0
test al, 8
jne 0x41d826
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 0x41d8b0
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41d86b
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 0x41d8b0
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 0x41d8e9
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
cmp edx, edi
jb case.0x420fa6.14
cmp edx, dword [ebp + 0x84]
jbe case.0x420fa6.14
jmp 0x41af72
test ecx, ecx
jle 0x41d91e
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.0x420fa6.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x41d8f0
dec dword [esi + 0x88]
jmp 0x41a01a
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x41d976
cmp dword [ebp + 0x88], ebx
je 0x41a7dd
cmp edi, dword [ebp + 0x84]
jbe 0x41a7dd
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41a7dd
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423880
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 0x41dc8b
jmp 0x41ae1b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41b630
cmp dword [esp + 0x8c], ebx
je 0x41dc6c
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 0x41dafb
test al, 0x20
jne 0x41d9fb
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 0x41dafb
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41da35
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 0x41dafb
test al, 8
jne 0x41da71
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 0x41dafb
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41dab6
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 0x41dafb
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 0x41db29
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x41ae1b
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x41a01a
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41dc0b
test bl, 0x20
jne 0x41db59
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41dc08
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41db80
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41dc06
test bl, 8
jne 0x41dba3
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 0x41dc06
test bl, 4
jne 0x41dbd2
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 0x41dc06
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 0x41a01a
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4dd640]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41dc45
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
mov eax, dword [eax*8 + 0x4dbfc4]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x41a021
jmp 0x41ae1b
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 0x41ae1b
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x41a01a
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 0x41ddbd
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 0x41dcf4
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x41dcff
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x41ddbd
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], getsockopt
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41ddc4
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], getsockopt
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x41ddc4
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x41ddc4
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 + 0x4db310]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4db31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41ddbd
mov dword [esi + 0x8c], getsockopt
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x41e238
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 0x41df0b
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x41de21
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 0x41df0b
test bl, 0x10
jne 0x41de56
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 0x41df0b
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 0x41de94
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 0x41df0b
test bl, 4
jne 0x41decd
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 0x41df0b
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 0x41e247
cmp dword [esi + 0x9c], 0x2e
jb 0x41df7c
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4dd640]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41df53
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
mov ecx, dword [eax*8 + 0x4dbfc4]
add ecx, edi
cmp ecx, edi
je 0x41df7c
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.004296e0
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x41df83
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x41e0b6
jmp 0x41dfa0
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 0x41e024
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x41dfd8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41dfe1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41dfc7
cmp edi, 0xfffffffc
je 0x41e098
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41e01a
cmp edi, 0xfffffffd
je 0x41e098
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41e01a
cmp edi, 0xfffffffe
je 0x41e098
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41e01a
cmp edi, 0xffffffff
je 0x41e098
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x41e098
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41cd2c
sub ecx, ebx
cmp edi, ecx
ja 0x41cd2c
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x41e056
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41e05b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41e045
cmp edi, 0xfffffffc
je 0x41e098
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41cd2c
cmp edi, 0xfffffffd
je 0x41e098
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41cd2c
cmp edi, 0xfffffffe
je 0x41e098
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41cd2c
cmp edi, 0xffffffff
je 0x41e098
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41cd2c
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x41dfa0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41a021
cmp dword [esp + 0x84], 0
jne 0x4273b9
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 0x41e225
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 0x41e17c
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x41e138
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41e141
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41e127
cmp edi, 0xfffffffc
je 0x41e1d8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41e172
cmp edi, 0xfffffffd
je 0x41e1d8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41e172
cmp edi, 0xfffffffe
je 0x41e1d8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41e172
cmp edi, 0xffffffff
je 0x41e1d8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x41e1d8
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41e1f8
sub ecx, ebx
cmp edi, ecx
ja 0x41e1f8
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x41e1a6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41e1ab
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41e195
cmp edi, 0xfffffffc
je 0x41e1d8
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41e1f8
cmp edi, 0xfffffffd
je 0x41e1d8
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41e1f8
cmp edi, 0xfffffffe
je 0x41e1d8
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41e1f8
cmp edi, 0xffffffff
je 0x41e1d8
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41e1f8
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x41e100
jmp 0x41e225
cmp dword [ebp + 0x88], 0
je 0x41e225
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41e225
cmp eax, dword [ebp + 0x84]
jbe 0x41e225
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x42539c
jmp 0x41a01a
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x41e33f
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 0x41e2a4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d097
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41e297
cmp dword [esi + 0x94], ecx
jne case.0x420fa6.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x41e274
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41a01a
cmp dword [esp + 0x84], 0
je 0x41e2cb
mov dword [esi + 0x84], eax
jmp 0x4242fb
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41e332
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e30a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41e2fb
cmp dword [esi + 0x94], ecx
jne 0x41e332
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41e2e0
jmp 0x41e332
cmp dword [ebp + 0x88], 0
je 0x41e332
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e332
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
test edi, edi
je 0x42433b
jmp 0x41a01a
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41e37a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41e350
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41a021
cmp dword [esp + 0x84], 0
je 0x41e3a8
mov dword [esi + 0x84], eax
jmp 0x4243c8
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41e40c
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41e3e4
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x41e40c
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41e3c0
jmp 0x41e40c
cmp dword [ebp + 0x88], 0
je 0x41e40c
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e40c
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x424408
jmp 0x41a021
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x41e444
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x420fa6.14
jmp 0x41af72
test edi, edi
je 0x41e6bc
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 0x41e545
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x41e482
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41e542
test bl, 0x10
jne 0x41e4a3
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 0x41e542
test bl, 8
jne 0x41e4ce
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 0x41e545
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x41e507
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 0x41e542
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 0x41e638
test dl, 0x20
jne 0x41e57f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41e62e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41e5a6
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41e62c
test dl, 8
jne 0x41e5c9
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 0x41e62c
test dl, 4
jne 0x41e5f8
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 0x41e62c
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 0x41e655
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x41a021
jmp 0x41ae1b
cmp ebx, 0x7f
jbe 0x41e692
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4dd640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41e67d
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
mov ecx, dword [eax*8 + 0x4dbfc4]
add ecx, ebx
jmp 0x41e699
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x41ae1b
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x41a021
jmp 0x41ae1b
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.0x420fa6.14
cmp dword [esi + 0x9c], 0x20
jne 0x41dc8b
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x420fa6.14
add dword [esi + 0xc], 2
jmp 0x41a01a
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 0x41e856
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 0x41e75b
cmp al, 0x4f
je 0x41e75b
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x41e856
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x41e856
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], getsockopt
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41e856
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], getsockopt
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41e856
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41e856
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 0x41e856
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 + 0x4db310]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4db31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41e856
mov dword [esi + 0x8c], getsockopt
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 0x41e9b1
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x41e9b1
test al, 0x20
jne 0x41e8a8
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 0x41e9b1
test al, 0x10
jne 0x41e8db
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 0x41e9b1
test al, 8
jne 0x41e91d
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 0x41e9b1
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41e968
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 0x41e9aa
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 0x41edd5
test edx, edx
je 0x41ea0c
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x41ea0c
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4dd640]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41e9f0
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
mov eax, dword [eax*8 + 0x4dbfc4]
add eax, edi
jmp 0x41ea19
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x41eb60
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41ebab
jmp 0x41ea40
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x41eb39
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x41ea7a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x41eb36
test cl, 0x10
jne 0x41ea9b
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 0x41eb36
test cl, 8
jne 0x41eac5
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 0x41eb36
test cl, 4
jne 0x41eafb
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 0x41eb36
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.0x420fa6.14
cmp dword [esi + 0x94], ecx
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41ea40
jmp 0x41eba4
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x41eba4
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d097
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x420fa6.14
cmp dword [esi + 0x94], ecx
je case.0x420fa6.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x41eb70
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41a01a
test ebx, ebx
je 0x41ebd4
test edx, edx
jne 0x4273ca
mov dword [esi + 0x84], eax
jmp 0x42449f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x41ed5d
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x41ed4a
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x41ed22
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x41ecfe
test dl, 0x20
jne 0x41ec32
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x41ecfe
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x41ec5c
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 0x41ecfc
test dl, 8
jne 0x41ec88
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 0x41ecfc
test dl, 4
jne 0x41ecc0
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 0x41ecfc
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 0x41ed4a
cmp dword [esi + 0x94], edx
je 0x41ed4a
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x41ebf4
jmp 0x41ed4a
cmp dword [ebp + 0x88], 0
je 0x41ed4a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41ed4a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x42557c
jmp 0x41a01a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41edc2
jmp 0x41ed70
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41ed9a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41edc2
cmp dword [esi + 0x94], ecx
je 0x41edc2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41ed70
jmp 0x41edc2
cmp dword [ebp + 0x88], 0
je 0x41edc2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41edc2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x4244df
jmp 0x41a01a
test edx, edx
je 0x41eef7
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41ef35
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x41eedc
test dl, 0x20
jne 0x41ee2a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41eed9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41ee51
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41eed7
test dl, 8
jne 0x41ee74
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 0x41eed7
test dl, 4
jne 0x41eea3
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 0x41eed7
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.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41edf0
jmp 0x41ef2e
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41ef35
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41ef04
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41a01a
cmp dword [esp + 0x84], 0
je 0x41ef64
test edx, edx
jne 0x4273df
mov dword [esi + 0x84], eax
jmp 0x42456c
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x41f0e8
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x41f0d5
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x41f0ad
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x41f091
test dl, 0x20
jne 0x41efc2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x41f091
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x41efec
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 0x41f08f
test dl, 8
jne 0x41f01b
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 0x41f08f
test dl, 4
jne 0x41f053
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 0x41f08f
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 0x41f0d5
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x41ef84
jmp 0x41f0d5
cmp dword [ebp + 0x88], 0
je 0x41f0d5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f0d5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x425740
jmp 0x41a01a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41f142
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f11a
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x41f142
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41f0f6
jmp 0x41f142
cmp dword [ebp + 0x88], 0
je 0x41f142
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f142
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x4245ac
jmp 0x41a01a
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 0x41f294
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 0x41f294
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], getsockopt
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f294
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], getsockopt
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f294
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f294
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 0x41f294
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x4db2bb]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x4db2c7]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41f294
mov dword [esi + 0x8c], getsockopt
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 0x41f2b6
cmp ecx, 0xf
je 0x41f2b6
mov dword [esi + 0x60], 0xffffffff
jmp 0x41f2d9
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 0x42127b
mov eax, dword [esi + 0x60]
test eax, eax
js 0x420088
cmp eax, 0xa
ja case.default.0x41c59a
jmp dword [eax*4 + 0x427ff4]
cmp dword [esi + 0x68], ebx
jne 0x41ae1b
mov edx, 1
cmp ecx, edx
jl 0x42127b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41f35f
cmp ecx, 0xc0
jb 0x41f35f
test cl, 0x20
jne 0x41f33b
inc eax
jmp 0x41f35c
test cl, 0x10
jne 0x41f345
add eax, 2
jmp 0x41f35c
test cl, 8
jne 0x41f34f
add eax, 3
jmp 0x41f35c
test cl, 4
jne 0x41f359
add eax, 4
jmp 0x41f35c
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x41f318
jmp 0x42127b
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
mov eax, dword [esi + 8]
jmp 0x41b5c5
mov edi, 1
cmp ecx, edi
jl 0x42127b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f48a
cmp ebx, 0xc0
jb 0x41f48a
test bl, 0x20
jne 0x41f3d8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f487
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f3ff
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41f485
test bl, 8
jne 0x41f422
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 0x41f485
test bl, 4
jne 0x41f451
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 0x41f485
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f4ac
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp eax, 9
je 0x41f4d1
cmp eax, 5
je 0x41f4d1
cmp eax, 8
je 0x41f4d1
xor eax, eax
jmp 0x41f4d6
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f390
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x42127b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f5f8
cmp ebx, 0xc0
jb 0x41f5f8
test bl, 0x20
jne 0x41f548
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f5f5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f56f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41f5f5
test bl, 8
jne 0x41f592
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 0x41f5f5
test bl, 4
jne 0x41f5c1
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 0x41f5f5
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f61a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f500
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x42127b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f75b
cmp ebx, 0xc0
jb 0x41f75b
test bl, 0x20
jne 0x41f6ab
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f758
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f6d2
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41f758
test bl, 8
jne 0x41f6f5
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 0x41f758
test bl, 4
jne 0x41f724
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 0x41f758
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f77d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f663
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x42127b
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41f8b8
cmp ebx, 0xc0
jb 0x41f8b8
test bl, 0x20
jne 0x41f808
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f8b5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f82f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41f8b5
test bl, 8
jne 0x41f852
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 0x41f8b5
test bl, 4
jne 0x41f881
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 0x41f8b5
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41f8da
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f7c0
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x42127b
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41fa1a
cmp ebx, 0xc0
jb 0x41fa1a
test bl, 0x20
jne 0x41f968
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41fa17
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f98f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41fa15
test bl, 8
jne 0x41f9b2
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 0x41fa15
test bl, 4
jne 0x41f9e1
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 0x41fa15
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41fa3c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41fa63
cmp eax, 3
je 0x41fa63
xor eax, eax
jmp 0x41fa68
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f920
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x42127b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41fb8a
cmp ebx, 0xc0
jb 0x41fb8a
test bl, 0x20
jne 0x41fad8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41fb87
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41faff
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41fb85
test bl, 8
jne 0x41fb22
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 0x41fb85
test bl, 4
jne 0x41fb51
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 0x41fb85
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 0x41fbcd
je case.0x41fbe9.8192
cmp ebx, 0x85
ja 0x41fbb9
je case.0x41fbe9.8192
cmp ebx, 9
jb case.0x41fbe9.8203
cmp ebx, 0xd
jbe case.0x41fbe9.8192
cmp ebx, 0x20
jmp 0x41fbfe
cmp ebx, 0xa0
je case.0x41fbe9.8192
cmp ebx, 0x1680
jmp 0x41fbfe
cmp ebx, 0x202f
ja 0x41fbf0
je case.0x41fbe9.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x41fbe9.8203
movzx eax, byte [eax + 0x428028]
jmp dword [eax*4 + 0x428020]
cmp ebx, 0x205f
je case.0x41fbe9.8192
cmp ebx, 0x3000
je case.0x41fbe9.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41fc22
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp dword [eax*4 + 0x4dbdd0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x420fa6.14
jmp 0x41fc56
cmp dword [esi + 0x68], 0
jne case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41fa90
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x42127b
jmp 0x41fc80
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x41fd78
cmp ebx, 0xc0
jb 0x41fd78
test bl, 0x20
jne 0x41fcc8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41fd75
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41fcef
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x41fd75
test bl, 8
jne 0x41fd12
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 0x41fd75
test bl, 4
jne 0x41fd41
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 0x41fd75
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 + 0x4dd640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41fd9b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x41fdc7
cmp eax, 3
je 0x41fdc7
cmp ebx, 0x5f
je 0x41fdc7
xor eax, eax
jmp 0x41fdcc
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420fa6.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41fc80
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x42127b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41feec
cmp edx, 0xc0
jb 0x41feec
test dl, 0x20
jne 0x41fe3c
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41fee9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41fe63
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x41fee9
test dl, 8
jne 0x41fe86
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 0x41fee9
test dl, 4
jne 0x41feb5
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 0x41fee9
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 + 0x4dbe80]
lea eax, [eax*4 + 0x4dbe80]
cmp edx, ecx
jb 0x41ff0e
lea eax, [eax + 4]
cmp edx, ecx
je 0x41ff2a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x41ff01
cmp dword [esi + 0x68], 0
je case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41fdf4
jmp 0x42127b
cmp dword [esi + 0x68], 0
jne case.0x420fa6.14
jmp 0x41ff18
mov ebx, 1
cmp ecx, ebx
jl 0x42127b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x42003d
cmp edx, 0xc0
jb 0x42003d
test dl, 0x20
jne 0x41ff8b
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42003a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41ffb2
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420038
test dl, 8
jne 0x41ffd5
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 0x420038
test dl, 4
jne 0x420004
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 0x420038
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 0x420068
cmp edx, 0x40
je 0x420068
cmp edx, 0x60
je 0x420068
cmp edx, 0xa0
jb 0x42005c
cmp edx, 0xd7ff
jbe 0x420068
cmp edx, 0xe000
jae 0x420068
xor eax, eax
jmp 0x42006d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41ff43
jmp 0x42127b
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x4203b3
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x42127b
jmp 0x4200b0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41d097
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x4201b0
cmp ebx, 0xc0
jb 0x4201b0
test bl, 0x20
jne 0x4200f9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4201ad
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x420120
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4201a6
test bl, 8
jne 0x420143
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 0x4201a6
test bl, 4
jne 0x420172
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 0x4201a6
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4201d2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc2]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42036d
jmp 0x420200
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4202fe
cmp ebx, 0xc0
jb 0x4202fe
test bl, 0x20
jne 0x420235
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4202f6
test bl, 0x10
jne 0x42025a
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 0x4202f6
test bl, 8
jne 0x420288
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 0x4202f6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4202c2
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 0x4202f6
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x420320
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx ecx, byte [eax*8 + 0x4dbfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dbe48], eax
je 0x420366
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 0x420200
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x42039a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42039a
cmp eax, dword [ebp + 0x84]
jbe 0x42039a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x4200b0
jmp 0x42127b
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x420e7f
cmp eax, 0xf
ja case.0x4233c7.9
jmp dword [eax*4 + 0x428054]
mov ebx, 1
cmp ecx, ebx
jl 0x421282
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41d097
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x420417
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne case.0x420fa6.14
jmp 0x42043b
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42043b
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42043b
cmp edx, 1
je case.0x420fa6.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x420fa6.14
cmp dword [ebp + 0x88], 0
je 0x420476
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x420476
cmp dword [ebp + 0x18], 0
jne 0x420476
cmp dword [edi], 2
jne 0x420476
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x420476
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x420492
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420492
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x420481
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4203e2
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x41f36d
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4204e8
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4204e8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4204d0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4204b4
jmp 0x42127b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x41ae1b
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x421282
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42060c
test dl, 0x20
jne 0x42055a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420609
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420581
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420607
test dl, 8
jne 0x4205a4
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 0x420607
test dl, 4
jne 0x4205d3
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 0x420607
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 0x420630
je 0x42061d
cmp edx, 0xa
je 0x420651
lea eax, [edx - 0xb]
jmp 0x42063e
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x420651
cmp byte [eax], 0xa
jne 0x420651
inc eax
mov dword [esi + 8], eax
jmp 0x420651
cmp edx, 0x85
je 0x420647
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x420fa6.14
cmp dword [ebp + 0x68], 0
jne case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420520
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x421282
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42075c
test dl, 0x20
jne 0x4206aa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420759
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4206d1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420757
test dl, 8
jne 0x4206f4
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 0x420757
test dl, 4
jne 0x420723
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 0x420757
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 0x42078e
je case.0x420fa6.14
cmp edx, 0xa0
ja 0x420786
je case.0x420fa6.14
cmp edx, 9
je case.0x420fa6.14
cmp edx, 0x20
jmp 0x4207be
cmp edx, 0x1680
jmp 0x4207be
cmp edx, 0x205f
ja 0x4207b8
je case.0x420fa6.14
cmp edx, 0x2000
jb 0x4207c4
cmp edx, 0x200a
jbe case.0x420fa6.14
cmp edx, 0x202f
jmp 0x4207be
cmp edx, 0x3000
je case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420670
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x421282
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4208cf
test dl, 0x20
jne 0x42081d
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4208cc
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420844
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4208ca
test dl, 8
jne 0x420867
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 0x4208ca
test dl, 4
jne 0x420896
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 0x4208ca
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 0x4208f5
je 0x420927
cmp edx, 0xa0
ja 0x4208ed
je 0x420927
cmp edx, 9
je 0x420927
cmp edx, 0x20
jmp 0x420921
cmp edx, 0x1680
jmp 0x420921
cmp edx, 0x205f
ja 0x42091b
je 0x420927
cmp edx, 0x2000
jb case.0x420fa6.14
cmp edx, 0x200a
jbe 0x420927
cmp edx, 0x202f
jmp 0x420921
cmp edx, 0x3000
jne case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4207e3
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x421282
jmp 0x420950
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x420a3c
test dl, 0x20
jne 0x42098a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420a39
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4209b1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420a37
test dl, 8
jne 0x4209d4
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 0x420a37
test dl, 4
jne 0x420a03
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 0x420a37
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 0x420a54
je case.0x420fa6.14
cmp edx, 0xa
jb 0x420a68
cmp edx, 0xd
jmp 0x420a62
cmp edx, 0x2028
jb 0x420a68
cmp edx, 0x2029
jbe case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420950
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x421282
jmp 0x420a90
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x420b7c
test dl, 0x20
jne 0x420aca
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420b79
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420af1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420b77
test dl, 8
jne 0x420b14
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 0x420b77
test dl, 4
jne 0x420b43
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 0x420b77
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 0x420b8e
je 0x420b9d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x420b97
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420a90
jmp 0x42127b
mov ebx, 1
cmp ecx, ebx
jl 0x421282
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41d097
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x420cac
test dl, 0x20
jne 0x420bfa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420ca9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420c21
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420ca7
test dl, 8
jne 0x420c44
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 0x420ca7
test dl, 4
jne 0x420c73
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 0x420ca7
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 0x420cc1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x420fa6.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420bc0
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f36d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x420fa6.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x420fa6.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420ce0
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x41f36d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x420d53
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x420fa6.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x420d78
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420d78
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x420d60
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420d30
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f36d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x420fa6.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x420fa6.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420d93
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x41f36d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x420e03
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x420fa6.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x420e28
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x420e28
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x420e10
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420de0
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f36d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x420fa6.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x420fa6.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420e43
jmp 0x42127b
cmp eax, 0xf
ja case.0x4233c7.9
jmp dword [eax*4 + 0x428094]
mov ebx, 1
cmp ecx, ebx
jl 0x421282
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41d097
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x420ed0
push 0
push edi
push eax
push edx
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne case.0x420fa6.14
jmp 0x420ef4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x420ef4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x420ef4
cmp edx, 1
je case.0x420fa6.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x420fa6.14
cmp dword [ebp + 0x88], 0
je 0x420f2f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x420f2f
cmp dword [ebp + 0x18], 0
jne 0x420f2f
cmp dword [edi], 2
jne 0x420f2f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x420f2f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420ea0
jmp 0x42127b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x420506
cmp dword [ebp + 0x88], ebx
je case.0x420fa6.14
cmp edx, dword [ebp + 0x84]
jbe case.0x420fa6.14
jmp 0x41af72
mov edx, 1
cmp ecx, edx
jl 0x42127b
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f36d
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x420fa6.14
movzx eax, byte [eax + 0x4280e4]
jmp dword [eax*4 + 0x4280d4]
cmp ecx, dword [ebp + 0x78]
jae case.0x420fa6.10
cmp byte [ecx], 0xa
jne case.0x420fa6.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x420fa6.10
cmp dword [ebp + 0x68], ebx
jne case.0x420fa6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x420f80
jmp 0x42127b
mov edx, 1
cmp ecx, edx
jl 0x42127b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x420fa6.14
cmp ecx, 0x20
je case.0x420fa6.14
cmp ecx, 0xa0
je case.0x420fa6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x420fe3
jmp 0x42127b
mov edx, 1
cmp ecx, edx
jl 0x42127b
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x421059
cmp ecx, 0x20
je 0x421059
cmp ecx, 0xa0
jne case.0x420fa6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x421030
jmp 0x42127b
mov edx, 1
cmp ecx, edx
jl 0x42127b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x4210a1
cmp ecx, 0xd
jle case.0x420fa6.14
cmp ecx, 0x85
je case.0x420fa6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x421074
jmp 0x42127b
mov edx, 1
cmp ecx, edx
jl 0x42127b
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x420fa6.14
cmp ecx, 0xd
jle 0x4210ed
cmp ecx, 0x85
jne case.0x420fa6.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4210c0
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
jmp 0x421110
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x420fa6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421110
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x420fa6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421150
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x420fa6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421190
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x420fa6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4211d0
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
jmp 0x421210
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x420fa6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421210
jmp 0x42127b
mov edi, 1
cmp ecx, edi
jl 0x421282
jmp 0x421250
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41f36d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x420fa6.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421250
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x41a01a
cmp dword [esp + 0x84], 0
je 0x4212e2
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4212c5
cmp eax, 0xa
ja case.0x4233c7.9
jmp dword [eax*4 + 0x428160]
mov esi, dword [esi]
test esi, esi
je case.default.0x423894
mov edi, 0xfffffff2
jmp 0x423880
cmp dword [esi + 0x7c], 0x16
je 0x4274b3
test edx, edx
jne 0x42749e
mov dword [esi + 0x84], ecx
jmp 0x424715
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x42231b
cmp eax, 0xa
ja case.0x4233c7.9
jmp dword [eax*4 + 0x42818c]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x422308
mov ebx, dword [esp + 0x8c]
jmp 0x421320
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x42138b
movzx ecx, byte [edx]
test ebx, ebx
je 0x42136e
cmp ecx, 0xc0
jb 0x42136e
test cl, 0x20
jne 0x421348
mov eax, 2
jmp 0x42136e
test cl, 0x10
jne 0x421354
mov eax, 3
jmp 0x42136e
test cl, 8
jne 0x421360
mov eax, 4
jmp 0x42136e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x422308
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x421320
jmp 0x422308
cmp dword [ebp + 0x88], 0
je 0x422308
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422308
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x422308
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x423880
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42154e
movzx ebx, byte [edi]
test edx, edx
je 0x4214cc
cmp ebx, 0xc0
jb 0x4214cc
test bl, 0x20
jne 0x42142e
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x4214c4
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42144d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x4214c4
and eax, 0x3f
test bl, 8
jne 0x42146d
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x4214c4
test bl, 4
jne 0x421496
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 0x4214c4
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4214ee
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp eax, 9
je 0x421513
cmp eax, 5
je 0x421513
cmp eax, 8
je 0x421513
xor eax, eax
jmp 0x421518
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x422308
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 0x4213f0
jmp 0x422308
cmp dword [ebp + 0x88], 0
je 0x422308
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422308
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x422308
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423880
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
jmp 0x4215b0
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x421732
movzx ebx, byte [edi]
test edx, edx
je 0x4216b3
cmp ebx, 0xc0
jb 0x4216b3
test bl, 0x20
jne 0x4215fa
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4216ab
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421622
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4216ab
and eax, 0x3f
test bl, 8
jne 0x421648
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 0x4216ab
test bl, 4
jne 0x421677
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 0x4216ab
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4216d5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422308
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 0x4215b0
jmp 0x422308
cmp dword [ebp + 0x88], 0
je 0x422308
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422308
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x421573
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x421732
movzx ebx, byte [edi]
test edx, edx
je 0x42187f
cmp ebx, 0xc0
jb 0x42187f
test bl, 0x20
jne 0x4217c6
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x421877
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4217ee
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x421877
and eax, 0x3f
test bl, 8
jne 0x421814
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 0x421877
test bl, 4
jne 0x421843
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 0x421877
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4218a1
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422308
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 0x421780
jmp 0x422308
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x421732
movzx ebx, byte [edi]
test edx, edx
je 0x421a13
cmp ebx, 0xc0
jb 0x421a13
test bl, 0x20
jne 0x42195a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x421a0b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421982
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x421a0b
and eax, 0x3f
test bl, 8
jne 0x4219a8
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 0x421a0b
test bl, 4
jne 0x4219d7
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 0x421a0b
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x421a35
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422308
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 0x421910
jmp 0x422308
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42154e
movzx ebx, byte [edi]
test edx, edx
je 0x421b83
cmp ebx, 0xc0
jb 0x421b83
test bl, 0x20
jne 0x421ae2
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x421b7b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421b04
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x421b7b
and eax, 0x3f
test bl, 8
jne 0x421b24
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x421b7b
test bl, 4
jne 0x421b4d
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 0x421b7b
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x421ba5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x421bcc
cmp eax, 3
je 0x421bcc
xor eax, eax
jmp 0x421bd1
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x422308
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 0x421aa4
jmp 0x422308
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x421732
movzx ebx, byte [edi]
test edx, edx
je 0x421d2d
cmp ebx, 0xc0
jb 0x421d2d
test bl, 0x20
jne 0x421c72
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x421d2d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421c9a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x421d23
and eax, 0x3f
test bl, 8
jne 0x421cc0
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 0x421d23
test bl, 4
jne 0x421cef
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 0x421d23
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 0x421d70
je case.0x421d90.8192
cmp ebx, 0x85
ja 0x421d5c
je case.0x421d90.8192
cmp ebx, 9
jb case.0x421d90.8203
cmp ebx, 0xd
jbe case.0x421d90.8192
cmp ebx, 0x20
jmp 0x421da5
cmp ebx, 0xa0
je case.0x421d90.8192
cmp ebx, 0x1680
jmp 0x421da5
cmp ebx, 0x202f
ja 0x421d97
je case.0x421d90.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x421d90.8203
movzx eax, byte [eax + 0x4281c0]
jmp dword [eax*4 + 0x4281b8]
cmp ebx, 0x205f
je case.0x421d90.8192
cmp ebx, 0x3000
je case.0x421d90.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x421dc9
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp dword [eax*4 + 0x4dbdd0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x422308
mov edx, dword [esp + 0x8c]
jmp 0x421e04
cmp dword [esi + 0x68], 0
jne 0x422308
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 0x421c20
jmp 0x422308
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x421732
movzx ebx, byte [edi]
test edx, edx
je 0x421f53
cmp ebx, 0xc0
jb 0x421f53
test bl, 0x20
jne 0x421e9a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x421f4b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x421ec2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x421f4b
and eax, 0x3f
test bl, 8
jne 0x421ee8
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 0x421f4b
test bl, 4
jne 0x421f17
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 0x421f4b
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 + 0x4dd640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x421f76
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x421fa2
cmp eax, 3
je 0x421fa2
cmp ebx, 0x5f
je 0x421fa2
xor eax, eax
jmp 0x421fa7
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x422308
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 0x421e50
jmp 0x422308
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x422308
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42213f
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x4220e1
cmp edx, 0xc0
jb 0x4220e1
test dl, 0x20
jne 0x422044
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x4220d9
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422063
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x4220d9
and eax, 0x3f
test dl, 8
jne 0x422083
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4220d9
test dl, 4
jne 0x4220ac
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 0x4220d9
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 + 0x4dbe80]
lea eax, [eax*4 + 0x4dbe80]
cmp edx, ecx
jb 0x422103
lea eax, [eax + 4]
cmp edx, ecx
je 0x422133
mov ecx, dword [eax]
cmp edx, ecx
jae 0x4220f6
cmp dword [esi + 0x68], 0
je 0x422308
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 0x422000
jmp 0x422308
cmp dword [esi + 0x68], 0
jne 0x422308
jmp 0x42210d
cmp dword [ebp + 0x88], 0
je 0x422308
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422308
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x422308
jmp 0x41af86
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x422308
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x4222e0
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x422297
cmp edx, 0xc0
jb 0x422297
test dl, 0x20
jne 0x4221cd
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x422297
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4221f7
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 0x422297
test dl, 8
jne 0x422223
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 0x422297
test dl, 4
jne 0x42225b
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 0x422297
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 0x4222c2
cmp edx, 0x40
je 0x4222c2
cmp edx, 0x60
je 0x4222c2
cmp edx, 0xa0
jb 0x4222b6
cmp edx, 0xd7ff
jbe 0x4222c2
cmp edx, 0xe000
jae 0x4222c2
xor ecx, ecx
jmp 0x4222c7
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x422308
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422181
jmp 0x422308
cmp dword [ebp + 0x88], 0
je 0x422308
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422308
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
je 0x4267bc
jmp 0x41a01a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x4226b7
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x422668
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x422640
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x422440
cmp ebx, 0xc0
jb 0x422440
test bl, 0x20
jne 0x422389
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x42243d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4223b0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x422436
test bl, 8
jne 0x4223d3
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 0x422436
test bl, 4
jne 0x422402
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 0x422436
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x422462
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc2]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4225fd
jmp 0x422490
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42258e
cmp ebx, 0xc0
jb 0x42258e
test bl, 0x20
jne 0x4224c5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x422586
test bl, 0x10
jne 0x4224ea
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 0x422586
test bl, 8
jne 0x422518
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 0x422586
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x422552
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 0x422586
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4225b0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx ecx, byte [eax*8 + 0x4dbfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dbe48], eax
je 0x4225f6
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 0x422490
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x42262a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42262a
cmp eax, dword [ebp + 0x84]
jbe 0x42262a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x422340
jmp 0x422668
cmp dword [ebp + 0x88], 0
je 0x422668
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422668
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
cmp dword [esp + 0x80], 0
jne 0x41a01a
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427be5
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427bdb
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
add eax, 0xfffffffa
test edx, edx
je 0x4233be
cmp eax, 0xf
ja case.0x4233c7.9
jmp dword [eax*4 + 0x4281ec]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x4227a6
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x422719
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x4233ab
jmp 0x42273d
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x42273d
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x42273d
cmp edx, 1
je 0x4233ab
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4233ab
cmp dword [ebp + 0x88], 0
je 0x422778
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x422778
cmp dword [ebp + 0x18], 0
jne 0x422778
cmp dword [edi], 2
jne 0x422778
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x422778
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x422794
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x422794
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x422783
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4226e4
jmp 0x4233ab
cmp dword [ebp + 0x88], 0
je 0x4233ab
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4233ab
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4233ab
jmp 0x41af86
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x422838
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x4233ab
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x4227a6
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x42282a
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42282a
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x422812
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x422800
jmp 0x4233ab
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x4233ab
cmp eax, dword [ebp + 0x84]
jbe 0x4233ab
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4233ab
jmp 0x421579
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 0x4228bf
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x4233ab
cmp edx, dword [ebp + 0x84]
jbe 0x4233ab
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4233ab
jmp 0x41af86
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x4227a6
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4229ea
test dl, 0x20
jne 0x42291e
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x4229ea
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x422948
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 0x4229e8
test dl, 8
jne 0x422974
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 0x4229e8
test dl, 4
jne 0x4229ac
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 0x4229e8
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 0x422a06
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x4233ab
cmp byte [eax], 0xa
jne 0x422a40
inc eax
jmp 0x422a3d
cmp edx, 0xa
je 0x422a3b
cmp dword [ebp + 0x68], 0
jne 0x4233ab
cmp edx, 0xb
je 0x422a3b
cmp edx, 0xc
je 0x422a3b
cmp edx, 0x85
je 0x422a3b
cmp edx, 0x2028
je 0x422a3b
cmp edx, 0x2029
jne 0x4233ab
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4228e0
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422b38
test dl, 0x20
jne 0x422a9a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422b30
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422ab9
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422b30
and eax, 0x3f
test dl, 8
jne 0x422ad9
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422b30
test dl, 4
jne 0x422b02
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 0x422b30
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 0x422b5e
je 0x422b8c
cmp edx, 0xa0
ja 0x422b56
je 0x422b8c
cmp edx, 9
je 0x422b8c
cmp edx, 0x20
jmp 0x422b86
cmp edx, 0x1680
jmp 0x422b86
cmp edx, 0x205f
ja 0x422b80
je 0x422b8c
cmp edx, 0x2000
jb 0x422b88
cmp edx, 0x200a
jbe 0x422b8c
cmp edx, 0x202f
jmp 0x422b86
cmp edx, 0x3000
je 0x422b8c
xor edx, edx
jmp 0x422b91
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422a64
jmp 0x4233ab
cmp dword [ebp + 0x88], 0
je 0x4233ab
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4233ab
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4233ab
jmp 0x41af86
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422cd0
test dl, 0x20
jne 0x422c32
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422cc8
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422c51
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422cc8
and eax, 0x3f
test dl, 8
jne 0x422c71
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422cc8
test dl, 4
jne 0x422c9a
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 0x422cc8
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 0x422d0f
je 0x422d1a
cmp edx, 0xa
jb 0x422ce4
cmp edx, 0xd
jbe 0x422d1a
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422c00
jmp 0x4233ab
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x422ce4
mov edx, 1
jmp 0x422ce6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422e07
test dl, 0x20
jne 0x422d69
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422dff
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422d88
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422dff
and eax, 0x3f
test dl, 8
jne 0x422da8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422dff
test dl, 4
jne 0x422dd1
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 0x422dff
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 0x422e1c
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422d33
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
jmp 0x422e50
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422f24
test dl, 0x20
jne 0x422e86
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x422f1c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422ea5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x422f1c
and eax, 0x3f
test dl, 8
jne 0x422ec5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x422f1c
test dl, 4
jne 0x422eee
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 0x422f1c
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 0x4233ab
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422e50
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
jmp 0x422f70
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423044
test dl, 0x20
jne 0x422fa6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42303c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x422fc5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42303c
and eax, 0x3f
test dl, 8
jne 0x422fe5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42303c
test dl, 4
jne 0x42300e
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 0x42303c
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 0x423059
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422f70
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423157
test dl, 0x20
jne 0x4230b9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42314f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4230d8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42314f
and eax, 0x3f
test dl, 8
jne 0x4230f8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42314f
test dl, 4
jne 0x423121
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 0x42314f
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 0x4233ab
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423083
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423274
test dl, 0x20
jne 0x4231d6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42326c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4231f5
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42326c
and eax, 0x3f
test dl, 8
jne 0x423215
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42326c
test dl, 4
jne 0x42323e
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 0x42326c
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 0x423289
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4231a0
jmp 0x4233ab
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4233ab
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x422bba
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423387
test dl, 0x20
jne 0x4232e9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42337f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423308
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42337f
and eax, 0x3f
test dl, 8
jne 0x423328
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42337f
test dl, 4
jne 0x423351
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 0x42337f
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 0x4233ab
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x4233ab
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4232b3
cmp dword [esp + 0x80], 0
je 0x425c78
jmp 0x41a01a
cmp eax, 0xf
ja case.0x4233c7.9
jmp dword [eax*4 + 0x42822c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x423857
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x423484
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x423410
push 0
push edi
push eax
push edx
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x423857
jmp 0x423434
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x423434
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x423434
cmp edx, 1
je 0x423857
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x423857
cmp dword [ebp + 0x88], 0
je 0x42346f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x42346f
cmp dword [ebp + 0x18], 0
jne 0x42346f
cmp dword [edi], 2
jne 0x42346f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x42346f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x4233e0
jmp 0x423857
cmp dword [ebp + 0x88], 0
je 0x423857
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x423857
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x423857
jmp 0x41af86
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 0x423508
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x423857
cmp edx, dword [ebp + 0x84]
jbe 0x423857
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x423857
jmp 0x41af86
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x423857
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x423857
jmp 0x423530
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423484
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x42355b
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x423857
cmp byte [eax], 0xa
jne 0x423585
inc eax
jmp 0x423582
cmp eax, 0xa
je 0x42357f
cmp dword [ebp + 0x68], 0
jne 0x423857
cmp eax, 0xb
je 0x42357f
cmp eax, 0xc
je 0x42357f
cmp eax, 0x85
jne 0x423857
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x423530
jmp 0x423857
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x423857
jmp 0x4235b0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423484
mov al, byte [ecx]
cmp al, 9
je 0x423857
cmp al, 0x20
je 0x423857
cmp al, 0xa0
je 0x423857
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4235b0
jmp 0x423857
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x423857
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423484
mov al, byte [ecx]
cmp al, 9
je 0x42361e
cmp al, 0x20
je 0x42361e
cmp al, 0xa0
jne 0x423857
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x423600
jmp 0x423857
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x423857
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423484
mov al, byte [ecx]
cmp al, 0xa
jb 0x423666
cmp al, 0xd
jbe 0x423857
cmp al, 0x85
je 0x423857
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x423644
jmp 0x423857
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x423857
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423484
mov al, byte [ecx]
cmp al, 0xa
jb 0x423857
cmp al, 0xd
jbe 0x4236b2
cmp al, 0x85
jne 0x423857
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x423690
jmp 0x423857
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x423857
jmp 0x4236e0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423484
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x423857
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4236e0
jmp 0x423857
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x423857
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423484
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x423857
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x423722
jmp 0x423857
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x423857
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423484
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x423857
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x423764
jmp 0x423857
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x423857
jmp 0x4237b0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423484
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x423857
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4237b0
jmp 0x423857
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x423857
jmp 0x4237f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423484
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x423857
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4237f0
jmp 0x423857
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x423857
jmp 0x423830
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x423484
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x423857
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x423830
cmp dword [esp + 0x80], 0
je 0x4248ba
jmp 0x41a01a
mov esi, dword [esi]
test esi, esi
je 0x427d31
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.0x423894
jmp dword [eax*4 + 0x42826c]
cmp edi, 0xfffffc1b
je 0x423966
cmp edi, 0xfffffc20
jne 0x4238e3
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.0x423894.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4238df
cmp byte [ecx], 0x77
jne case.0x423894.49
xor edi, edi
jmp 0x4238eb
test edi, edi
jne case.0x423894.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 0x423966
cmp dword [esi + 0x9c], 0x88
jb 0x423931
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4276ba
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4276b0
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x423d5c
mov edx, dword [esp + 0x8c]
jmp 0x423884
cmp edi, 0xfffffc20
jne 0x423a23
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 0x423a71
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x4239ee
cmp byte [ecx], 0x77
jne 0x423a71
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 0x423a87
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423884
test edi, edi
je 0x4239ee
cmp edi, 0xfffffc1b
jne 0x423a71
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x423a63
cmp al, 0x77
jne 0x423a54
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 0x423a40
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 0x423d5c
mov edx, dword [esp + 0x8c]
jmp 0x423884
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x423ad9
cmp eax, 0x81
je 0x423ad9
cmp dword [ebp + 0x6c], 0
jne 0x423ae3
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 0x423ae3
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4dbcb8]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x419fa0
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 0x4276dc
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4276d2
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
cmp edi, 1
jne 0x423ba3
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x423b40
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x423b53
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 0x423b89
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 0x423b70
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x4dbcb8]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x41a44e.145
test edi, edi
je 0x423bb3
cmp edi, 0xfffffc20
jne case.0x423894.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x423bc9
movzx eax, byte [edx + 0x4dbcb8]
jmp 0x423bcc
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x423be9
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x41a021
cmp dword [esi + 0x9c], 0x8c
jne 0x419fa0
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4276fe
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4276f4
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
cmp edi, 1
je 0x423ce2
cmp edi, 0xfffffc19
je 0x423ce2
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x423c8a
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.0x423894.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x423c92
cmp byte [ecx], 0x77
jmp 0x423c8c
test edi, edi
jne case.0x423894.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 0x423ce8
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427717
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42770d
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x423d01
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423884
cmp dword [esi + 0x58], 0
je 0x42733e
mov esi, dword [esi]
test esi, esi
je 0x427cd6
mov edi, 1
jmp 0x423884
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x423dcd
je 0x423d66
cmp edi, 0xfffffc19
je 0x424603
cmp edi, 0xfffffc1b
jle case.0x423894.49
cmp edi, 0xfffffc1f
jle 0x423d8e
mov esi, dword [esi]
test esi, esi
jne 0x423884
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 0x423d8e
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x423de0
cmp byte [ecx], 0x77
je 0x423de0
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 0x423d91
cmp dword [esi + 0x58], 0
je 0x424017
mov esi, dword [esi]
test esi, esi
je 0x427cd6
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x423884
mov eax, edi
sub eax, 0
je 0x423de0
dec eax
je 0x424603
jmp case.0x423894.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 0x423da8
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42772d
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427723
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
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 0x42736c
cmp edi, 0xfffffc19
je 0x42736c
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x423e99
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x41ae1b
push ecx
call dword [0x515fec]
add esp, 4
jmp 0x41ae1b
test edi, edi
je 0x423ec3
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x423eb4
push ecx
call dword [0x515fec]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x423d5c
jmp 0x423879
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 0x423f29
cmp dword [esi + 0x58], 0
je 0x423ef4
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x427773
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x427769
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x423e79
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x423f83
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4277c1
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277b7
mov esi, dword [esi]
test esi, esi
je 0x427c8b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423884
cmp al, 0x88
jb 0x4274c4
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4277e3
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277d9
mov esi, dword [esi]
test esi, esi
je 0x427c8b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423884
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x427ce3
mov edi, 0xfffffc1b
jmp 0x423884
test edi, edi
jne case.0x423894.49
mov edx, dword [esi + 0x2c]
jmp 0x424000
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 0x424000
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41a01a
test edi, edi
je 0x41b894
jmp case.0x423894.49
test edi, edi
je 0x423fcf
jmp case.0x423894.49
cmp edi, 0xfffffc1b
jne 0x42404b
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x42404d
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x424e3b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427805
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4277fb
mov esi, dword [esi]
test esi, esi
je 0x427c8b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423884
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4240c0
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.004284c0
add esp, 0x14
test eax, eax
jns 0x424127
cmp eax, 0xfffffffe
jne 0x4240e9
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x425c01
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x425c01
cmp eax, dword [ebp + 0x84]
jbe 0x425c01
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ce3e
jmp 0x425c01
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42782a
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427820
mov esi, dword [esi]
test esi, esi
je 0x427c8b
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x423884
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x420fa6.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427843
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427839
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4241e7
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425ce6
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 0x425c01
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42785c
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427852
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x41ae1b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427875
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42786b
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4242c1
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425ce6
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4242f1
cmp dword [esi + 0x94], ecx
je 0x4242f1
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423884
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42788e
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427884
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
dec dword [esi + 8]
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278a7
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42789d
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4243a1
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425ce6
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x425c01
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278c0
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4278b6
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
dec dword [esi + 8]
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278d9
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4278cf
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42446e
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425ce6
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x424603
cmp dword [esi + 0x94], ecx
je 0x424603
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4278f2
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4278e8
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42790b
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427901
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424545
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425ce6
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x425c01
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427921
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427917
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427937
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42792d
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424614
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423884
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x42465b
cmp dword [ebp + 0x88], 0
je 0x424643
cmp ecx, dword [ebp + 0x84]
jbe 0x424643
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ce3e
mov esi, dword [esi]
test esi, esi
je 0x427c98
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423884
cmp dword [esi + 0x7c], 0xc
jne 0x424682
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4246a4
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x4246c1
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.0x42469d.15
jmp dword [eax*4 + 0x428378]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x424682
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x424682
cmp edi, 1
je 0x4246c1
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x424682
mov esi, dword [esi]
test esi, esi
je 0x427c98
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423884
cmp dword [ebp + 0x88], 0
je case.0x42469d.13
cmp edx, dword [ebp + 0x78]
jb case.0x42469d.13
cmp dword [ebp + 0x18], 0
jne case.0x42469d.13
cmp dword [ebp + 0x1c], 2
jne case.0x42469d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x42469d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ce3e
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42794d
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427943
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x42475d.14
movzx eax, byte [ecx + 0x4283c8]
jmp dword [eax*4 + 0x4283b8]
cmp edx, dword [ebp + 0x78]
jae case.0x42469d.13
cmp byte [edx], 0xa
jne case.0x42469d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x42469d.13
cmp dword [ebp + 0x68], 0
je case.0x42469d.13
jmp case.0x42475d.14
cmp ecx, 9
je case.0x42475d.14
cmp ecx, 0x20
je case.0x42475d.14
cmp ecx, 0xa0
jmp 0x42485a
cmp ecx, 9
je case.0x42469d.13
cmp ecx, 0x20
je case.0x42469d.13
cmp ecx, 0xa0
je case.0x42469d.13
jmp case.0x42475d.14
cmp ecx, 0xa
jb case.0x42469d.13
cmp ecx, 0xd
jbe case.0x42475d.14
cmp ecx, 0x85
jmp 0x42485a
cmp ecx, 0xa
jb case.0x42475d.14
cmp ecx, 0xd
jbe case.0x42469d.13
cmp ecx, 0x85
je case.0x42469d.13
jmp case.0x42475d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x42469d.13
jmp case.0x42475d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x42485a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x42469d.13
jmp case.0x42475d.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x42485a
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x42469d.13
mov esi, dword [esi]
test esi, esi
je 0x427c98
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423884
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x42469d.13
mov esi, dword [esi]
test esi, esi
je 0x427c98
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423884
mov esi, dword [esi]
test esi, esi
je case.default.0x423894
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x423884
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x4248ba
cmp eax, dword [esi + 0x30]
jbe 0x4248ba
cmp byte [eax], 0xa
jne 0x4248ba
cmp byte [eax - 1], 0xd
jne 0x4248ba
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427963
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427959
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
cmp edi, 0xfffffc1a
jne 0x424951
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 0x424949
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 0x424930
jmp 0x4249a8
mov dword [esi + 8], eax
jmp 0x4249cd
cmp edi, 0xfffffc20
jne 0x424985
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.0x423894.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42498d
cmp byte [ecx], 0x77
jmp 0x424987
test edi, edi
jne case.0x423894.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 0x4249c1
cmp dword [esi + 0x5c], 0
jne 0x424017
cmp dword [esi + 0x54], 0
jne 0x424017
jmp 0x425c01
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x4249e3
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x4279a5
push 0x134
call dword [0x515ff0]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42799b
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
mov esi, dword [esi]
test edi, edi
jne 0x423d54
test esi, esi
je 0x427cfd
mov edi, 0xfffffc1c
jmp 0x423884
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427d17
mov edi, 0xfffffc1e
jmp 0x423884
cmp edi, 1
je 0x424a63
cmp edi, 0xfffffc19
jne 0x424a7d
cmp dword [ebp + 0xac], 0
jne 0x424a7d
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x423a71
cmp edi, 0xfffffc1f
jne 0x423a71
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x424ab2
test dl, dl
je 0x424aae
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x424ab2
add eax, 2
add ecx, 2
test dl, dl
jne 0x424a92
xor eax, eax
jmp 0x424ab7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x423a71
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427d17
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x423884
cmp edi, 1
je 0x424aed
cmp edi, 0xfffffc19
jne case.0x423894.51
cmp dword [ebp + 0xac], 0
jne case.0x423894.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x423d54
test esi, esi
je 0x427cf0
mov edi, 0xfffffc1d
jmp 0x423884
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427d24
mov edi, 0xfffffc1f
jmp 0x423884
cmp edi, 1
je 0x424b50
cmp edi, 0xfffffc19
jne case.0x423894.54
cmp dword [ebp + 0xac], 0
jne case.0x423894.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x427d0a
mov edi, 0xfffffc20
jmp 0x423884
cmp edi, 0xfffffc1a
jne 0x424bf1
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 0x424be9
mov edx, dword [esi + 0xc]
jmp 0x424bd0
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 0x424bd0
jmp 0x424c58
mov dword [esi + 8], eax
jmp 0x41ab52
cmp edi, 0xfffffc20
jne 0x424c25
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.0x423894.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x424c2d
cmp byte [ecx], 0x77
jmp 0x424c27
test edi, edi
jne case.0x423894.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 0x41ab52
cmp dword [esi + 0x5c], 0
jne 0x424c98
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 0x41a016
cmp dword [esi + 0x5c], 0
jne 0x41a016
jmp 0x425c01
cmp edi, 1
jne 0x424d54
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x424cd1
cmp al, 0x77
jne 0x425c01
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 0x424cd1
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 0x41a016
cmp ecx, dword [esi + 0x38]
je 0x41a016
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x424ded
test ecx, ecx
jne 0x427a0e
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a04
mov esi, dword [esi]
test esi, esi
je 0x427c8b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423884
cmp edi, 0xfffffc20
jne 0x424d88
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.0x423894.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x424d90
cmp byte [ecx], 0x77
jmp 0x424d8a
test edi, edi
jne case.0x423894.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 0x424cc0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4279e9
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4279df
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test ecx, ecx
jne 0x427a33
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a29
mov esi, dword [esi]
test esi, esi
je 0x427c8b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x423884
test edi, edi
je 0x4274c4
jmp case.0x423894.49
test edi, edi
jne case.0x423894.49
add dword [esi + 0xc], 3
jmp 0x419fa0
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x424e69
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x424f6a
cmp ebx, 0xc0
jb 0x424f6a
test bl, 0x20
jne 0x424eab
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x424f67
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x424ed5
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x424f6a
mov edx, dword [esi + 8]
test bl, 8
jne 0x424efb
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 0x424f5e
test bl, 4
jne 0x424f2a
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 0x424f5e
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.00429740
add esp, 0xc
test eax, eax
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a55
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a4b
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x425c01
cmp dword [esp + 0x8c], edi
je 0x424ff1
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x424ff1
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x424fe5
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a6e
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a64
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42504b
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x425140
test bl, 0x20
jne 0x425085
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42513d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4250af
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x425140
mov edx, dword [esi + 8]
test bl, 8
jne 0x4250d8
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 0x42513b
test bl, 4
jne 0x425107
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 0x42513b
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 0x425156
cmp dword [esi + 0x9c], 0x6e
jne 0x425173
jmp 0x41ae1b
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 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427a87
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a7d
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x41ae1b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x4251dc
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x4251d0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427aa0
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427a96
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425236
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
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 0x4252a5
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x425265
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42526a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x425254
cmp edi, 0xfffffffc
je 0x425297
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4252a2
cmp edi, 0xfffffffd
je 0x425297
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4252a2
cmp edi, 0xfffffffe
je 0x425297
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4252a2
cmp edi, 0xffffffff
je 0x425297
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4252a2
mov eax, dword [esi + 0x88]
jmp 0x425310
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x425350
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x425350
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x4252d7
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4252dc
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4252c6
cmp edi, 0xfffffffc
je 0x42530d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x425350
cmp edi, 0xfffffffd
je 0x42530d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x425350
cmp edi, 0xfffffffe
je 0x42530d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x425350
cmp edi, 0xffffffff
je 0x42530d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x425350
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 0x427ab9
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427aaf
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
cmp dword [ebp + 0x88], 0
je case.0x420fa6.14
cmp ebx, dword [ebp + 0x78]
jb case.0x420fa6.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x420fa6.14
jmp 0x41af72
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42539c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x425390
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427ad2
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427ac8
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425402
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x425502
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x42543c
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4254ff
test dl, 0x10
jne 0x42545e
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 0x425502
mov ecx, dword [esi + 8]
test dl, 8
jne 0x42548e
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 0x4254ff
test dl, 4
jne 0x4254c4
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 0x4254ff
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 0x4246c1
cmp dword [esi + 0x94], edx
je 0x4246c1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x425549
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x424155
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x42796d
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42557c
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x425570
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427aeb
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427ae1
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4255e2
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x4256d7
test bl, 0x20
jne 0x42561c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4256d4
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425646
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4256d7
mov edx, dword [esi + 8]
test bl, 8
jne 0x42566f
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 0x4256d2
test bl, 4
jne 0x42569e
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 0x4256d2
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 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b04
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427afa
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x425740
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x425734
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b1d
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b13
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4257a6
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x4257e2
cmp dword [ebp + 0x88], 0
je 0x425c01
cmp ecx, dword [ebp + 0x84]
jbe 0x425c01
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ce3e
jmp 0x425c01
cmp dword [esi + 0x7c], 0xc
jne 0x425834
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x42580f
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.00429db0
add esp, 0x14
test eax, eax
jne 0x425c01
jmp 0x425834
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x425834
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x425834
cmp edi, 1
je 0x425c01
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x425c01
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42591c
test dl, 0x20
jne 0x425867
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x425919
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x42588e
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x425917
test dl, 8
jne 0x4258b4
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 0x425917
test dl, 4
jne 0x4258e3
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 0x425917
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.0x42592b.15
jmp dword [eax*4 + 0x428444]
cmp dword [ebp + 0x88], 0
je case.0x42592b.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x42592b.13
cmp dword [ebp + 0x18], 0
jne case.0x42592b.13
cmp dword [ebp + 0x1c], 2
jne case.0x42592b.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x42592b.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x42592b.13
jmp 0x41ce3e
cmp edx, 0xd
ja 0x4259ae
je 0x42599b
cmp edx, 0xa
je case.0x42592b.13
jbe 0x425c01
cmp edx, 0xc
jmp 0x4259c8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x42592b.13
cmp byte [eax], 0xa
jne case.0x42592b.13
inc eax
mov dword [esi + 8], eax
jmp case.0x42592b.13
cmp edx, 0x85
je 0x4259ce
cmp edx, 0x2027
jbe 0x425c01
cmp edx, 0x2029
ja 0x425c01
cmp dword [ebp + 0x68], 0
je case.0x42592b.13
jmp 0x425c01
cmp edx, 0x180e
ja 0x425a4d
je 0x425c01
cmp edx, 0xa0
ja 0x425a45
je 0x425c01
cmp edx, 9
je 0x425c01
cmp edx, 0x20
je 0x425c01
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x425a36
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x424155
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x42796d
cmp edx, 0x1680
jmp 0x425a01
cmp edx, 0x205f
ja 0x425a77
je 0x425c01
cmp edx, 0x2000
jb case.0x42592b.13
cmp edx, 0x200a
jbe 0x425c01
cmp edx, 0x202f
jmp 0x425a01
cmp edx, 0x3000
jmp 0x425bfb
cmp edx, 0x180e
ja 0x425ab4
je case.0x42592b.13
cmp edx, 0xa0
ja 0x425aac
je case.0x42592b.13
cmp edx, 9
je case.0x42592b.13
cmp edx, 0x20
jmp 0x425ae8
cmp edx, 0x1680
jmp 0x425ae8
cmp edx, 0x205f
ja 0x425ae2
je case.0x42592b.13
cmp edx, 0x2000
jb 0x425c01
cmp edx, 0x200a
jbe case.0x42592b.13
cmp edx, 0x202f
jmp 0x425ae8
cmp edx, 0x3000
je case.0x42592b.13
jmp 0x425c01
cmp edx, 0x85
ja 0x425b18
je 0x425c01
cmp edx, 0xa
jb case.0x42592b.13
cmp edx, 0xd
jbe 0x425c01
jmp case.0x42592b.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x42592b.13
jmp 0x425c01
cmp edx, 0x85
ja 0x425b48
je case.0x42592b.13
cmp edx, 0xa
jb 0x425c01
cmp edx, 0xd
jmp 0x425b51
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x42592b.13
jmp 0x425c01
cmp edx, 0x100
jae case.0x42592b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x42592b.13
jmp 0x425c01
cmp edx, 0x100
jae 0x425c01
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x425bfb
cmp edx, 0x100
jae case.0x42592b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x42592b.13
jmp 0x425c01
cmp edx, 0x100
jae 0x425c01
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x425bfb
cmp edx, 0x100
jae case.0x42592b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x42592b.13
mov esi, dword [esi]
test esi, esi
je 0x427c98
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423884
cmp edx, 0x100
jae 0x425c01
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x42592b.13
mov esi, dword [esi]
test esi, esi
je 0x427c98
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x423884
mov esi, dword [esi]
test esi, esi
je case.default.0x423894
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x423884
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x425c5c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x425c50
cmp dword [esi + 0x7c], 0x11
jne 0x425c78
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x425c78
cmp byte [eax], 0xa
jne 0x425c78
dec eax
cmp byte [eax], 0xd
jne 0x425c78
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b36
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b2c
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425cde
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x425cfe
cmp dword [ebp + 0x88], 0
je 0x424603
cmp eax, dword [ebp + 0x84]
jmp 0x426459
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x425d3d
cmp ecx, 0xc0
jb 0x425d3d
test cl, 0x20
jne 0x425d19
inc eax
jmp 0x425d3a
test cl, 0x10
jne 0x425d23
add eax, 2
jmp 0x425d3a
test cl, 8
jne 0x425d2d
add eax, 3
jmp 0x425d3a
test cl, 4
jne 0x425d37
add eax, 4
jmp 0x425d3a
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x425d54
mov esi, dword [esi]
test esi, esi
je 0x427c98
xor edi, edi
jmp 0x423884
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x425d83
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x424155
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x42796d
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425db7
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x425eb1
cmp ebx, 0xc0
jb 0x425eb1
test bl, 0x20
jne 0x425df9
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x425eae
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425e23
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x425eb1
mov edx, dword [esi + 8]
test bl, 8
jne 0x425e49
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 0x425eac
test bl, 4
jne 0x425e78
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 0x425eac
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x425ed3
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp eax, 9
je 0x425ef8
cmp eax, 5
je 0x425ef8
cmp eax, 8
je 0x425ef8
xor eax, eax
jmp 0x425efd
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b4f
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b45
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425f66
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42605c
cmp ebx, 0xc0
jb 0x42605c
test bl, 0x20
jne 0x425fa8
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426059
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425fd0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42605c
mov edx, dword [esi + 8]
test bl, 8
jne 0x425ff6
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 0x426059
test bl, 4
jne 0x426025
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 0x426059
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42607e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b68
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b5e
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426108
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4261fe
cmp ebx, 0xc0
jb 0x4261fe
test bl, 0x20
jne 0x42614a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4261fb
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426172
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4261fe
mov edx, dword [esi + 8]
test bl, 8
jne 0x426198
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 0x4261fb
test bl, 4
jne 0x4261c7
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 0x4261fb
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426220
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b81
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b77
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4262a3
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426399
cmp ebx, 0xc0
jb 0x426399
test bl, 0x20
jne 0x4262e5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426396
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42630d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x426399
mov edx, dword [esi + 8]
test bl, 8
jne 0x426333
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 0x426396
test bl, 4
jne 0x426362
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 0x426396
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4263bb
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427b9a
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427b90
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42643e
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x426487
cmp dword [ebp + 0x88], 0
je 0x424603
cmp edi, dword [ebp + 0x84]
jbe 0x424603
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x424603
mov esi, dword [esi]
test esi, esi
je 0x427cbc
mov edi, 0xfffffff4
jmp 0x423884
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426575
cmp ebx, 0xc0
jb 0x426575
test bl, 0x20
jne 0x4264bd
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426572
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4264e7
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426575
mov edx, dword [esi + 8]
test bl, 8
jne 0x42650d
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 0x426570
test bl, 4
jne 0x42653c
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 0x426570
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426597
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x426728
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x4266c7
cmp ebx, 0xc0
jb 0x4266c7
test bl, 0x20
jne 0x4265fb
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4266bf
test bl, 0x10
jne 0x426620
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 0x4266bf
test bl, 8
jne 0x426651
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 0x4266bf
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x42668b
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 0x4266bf
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4266e9
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx ecx, byte [eax*8 + 0x4dbfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dbe48], eax
je 0x426728
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x4265c0
cmp dword [ebp + 0x88], 0
je 0x426755
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x426755
cmp eax, dword [ebp + 0x84]
jbe 0x426755
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41af86
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427bb3
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427ba9
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x4267bc
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4267bc
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4267b0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x419fa0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427bcc
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427bc2
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x426817
movzx ebx, byte [ecx]
jmp 0x426905
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42682c
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x426820
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x426905
test bl, 0x20
jne 0x42684f
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x4268fd
test bl, 0x10
jne 0x42686f
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 0x4268fd
test bl, 8
jne 0x426898
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 0x4268fd
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4268cd
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 0x4268fd
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426927
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc2]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x419fa0
dec edi
cmp dword [esp + 0x8c], 0
jne 0x42695f
movzx ebx, byte [edi]
jmp 0x426a1e
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x426971
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x426967
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x426a1e
test bl, 0x20
jne 0x426991
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x426a16
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4269ae
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x426a16
and eax, 0x3f
test bl, 8
jne 0x4269c9
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x426a16
test bl, 4
jne 0x4269ed
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 0x426a16
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426a40
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx edx, byte [eax*8 + 0x4dbfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dbe48], eax
je 0x422676
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x426940
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426aa1
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426b9b
cmp ebx, 0xc0
jb 0x426b9b
test bl, 0x20
jne 0x426ae3
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426b98
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426b0d
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426b9b
mov edx, dword [esi + 8]
test bl, 8
jne 0x426b33
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 0x426b96
test bl, 4
jne 0x426b62
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 0x426b96
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 + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426bbd
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x426be4
cmp eax, 3
je 0x426be4
xor eax, eax
jmp 0x426be9
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427bfe
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427bf4
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426c52
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426d53
cmp ebx, 0xc0
jb 0x426d53
test bl, 0x20
jne 0x426c94
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426d50
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426cbe
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426d53
mov edx, dword [esi + 8]
test bl, 8
jne 0x426ce4
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 0x426d47
test bl, 4
jne 0x426d13
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 0x426d47
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 0x426d7e
cmp ebx, 0x40
je 0x426d7e
cmp ebx, 0x60
je 0x426d7e
cmp ebx, 0xa0
jb 0x426d72
cmp ebx, 0xd7ff
jbe 0x426d7e
cmp ebx, 0xe000
jae 0x426d7e
xor eax, eax
jmp 0x426d83
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41b762
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427c17
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427c0d
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426dec
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426eed
cmp ebx, 0xc0
jb 0x426eed
test bl, 0x20
jne 0x426e2e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426eea
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426e58
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426eed
mov edx, dword [esi + 8]
test bl, 8
jne 0x426e7e
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 0x426ee1
test bl, 4
jne 0x426ead
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 0x426ee1
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 0x426f30
je case.0x426f50.8192
cmp ebx, 0x85
ja 0x426f1c
je case.0x426f50.8192
cmp ebx, 9
jb case.0x426f50.8203
cmp ebx, 0xd
jbe case.0x426f50.8192
cmp ebx, 0x20
jmp 0x426f65
cmp ebx, 0xa0
je case.0x426f50.8192
cmp ebx, 0x1680
jmp 0x426f65
cmp ebx, 0x202f
ja 0x426f57
je case.0x426f50.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x426f50.8203
movzx eax, byte [eax + 0x42848c]
jmp dword [eax*4 + 0x428484]
cmp ebx, 0x205f
je case.0x426f50.8192
cmp ebx, 0x3000
je case.0x426f50.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4dd640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426f89
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
cmp dword [eax*4 + 0x4dbdd0], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x426fbc
jmp 0x41ae1b
cmp dword [esi + 0x68], 0
jne 0x41b762
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427c30
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427c26
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42701c
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427112
cmp ebx, 0xc0
jb 0x427112
test bl, 0x20
jne 0x42705e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42710f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427086
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x427112
mov edx, dword [esi + 8]
test bl, 8
jne 0x4270ac
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 0x42710f
test bl, 4
jne 0x4270db
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 0x42710f
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 + 0x4dd640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x427135
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4df840]
movzx eax, byte [eax*8 + 0x4dbfc1]
mov eax, dword [eax*4 + 0x4dbdd0]
cmp eax, 1
je 0x427161
cmp eax, 3
je 0x427161
cmp ebx, 0x5f
je 0x427161
xor eax, eax
jmp 0x427166
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ae1b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427c49
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427c3f
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
test edi, edi
jne case.0x423894.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4271cf
mov esi, dword [esi]
test esi, esi
je 0x427c98
jmp 0x423884
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x426446
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4272cc
cmp ebx, 0xc0
jb 0x4272cc
test bl, 0x20
jne 0x427211
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4272c9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427239
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4272cc
mov edx, dword [esi + 8]
test bl, 8
jne 0x42725f
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 0x4272c2
test bl, 4
jne 0x42728e
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 0x4272c2
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 + 0x4dbe80]
lea eax, [eax*4 + 0x4dbe80]
cmp ebx, ecx
jb 0x4272ee
lea eax, [eax + 4]
cmp ebx, ecx
je 0x427333
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x4272e1
cmp dword [esi + 0x68], 0
je 0x41b762
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x427c62
push 0x134
call dword [0x515ff0]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x427c58
mov esi, dword [esi]
test esi, esi
je 0x427c8b
lea edi, [eax - 6]
jmp 0x423879
cmp dword [esi + 0x68], 0
je 0x4272f8
jmp 0x41b762
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 0x427341
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x41a01a
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x427383
push ecx
call dword [0x515fec]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x41a01a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x425179
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x424f85
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42531b
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x425520
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4256e9
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x425d5a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x425f0c
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4260ae
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426249
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4263e4
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426bf8
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426fc2
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427175
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4272fe
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426d92
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x425a0d
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42675b
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x419fa0
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 + 0x4dbcb8]
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 0x419f90
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 0x427786
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 0x427786
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x4274df
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 0x427786
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x4274df
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 0x427786
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x4274df
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 0x419f90
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 0x427976
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 0x427976
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 0x427976
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 0x427976
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 0x427976
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 0x427786
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 0x427786
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x427737
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 0x419f90
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 + 0x4dbcb8]
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 0x419f90
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 0x427976
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 0x427976
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 0x427976
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x42796d
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 0x419f90
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 0x427786
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 0x427786
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 0x427976
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 0x427976
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 0x427976
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x42796d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x42796d
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