Function at 0x41d3b0
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 0x41d43e
mov esi, dword [esi]
test esi, esi
je 0x42b0e1
mov edi, 0xfffffff8
jmp 0x426ce9
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x41d45a
mov esi, dword [esi]
test esi, esi
je 0x42b0ee
mov edi, 0xffffffeb
jmp 0x426ce9
cmp dword [ebp + 0x98], 2
jne 0x41d491
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 0x41d491
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.0x41d4c4.98
movzx eax, byte [edx + 0x42b2fc]
jmp dword [eax*4 + 0x42b1b0]
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 0x42a945
push 0x134
call dword [0x421b660]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42a93f
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov edx, dword [esi + 4]
test edx, edx
jne 0x42a995
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42a98f
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov edx, dword [esi + 4]
test edx, edx
jne 0x42a9b3
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42a9ad
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x42a9d1
push 0x134
call dword [0x421b660]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42a9cb
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov edx, dword [esi + 4]
test edx, edx
jne 0x42a9e6
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42a9e0
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x41d61e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x485f60]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x41d491
mov edi, dword [esi + 4]
test edi, edi
jne 0x42aa04
push 0x134
call dword [0x421b660]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42a9fe
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov edx, dword [esi + 4]
test edx, edx
jne 0x42aa19
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42aa13
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x42aa37
push 0x134
call dword [0x421b660]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42aa31
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x428228
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.0x41d4c4.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 0x426d8b
mov dword [esi + 0x54], ebx
jmp 0x41df2f
mov dword [esi + 0x54], ebx
jmp 0x41df53
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 0x41d898
mov edi, dword [0x421f194]
test edi, edi
je 0x41d884
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 0x41d83e
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 0x41d873
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
jns 0x41d884
mov esi, dword [esi]
test esi, esi
je 0x4271cc
jmp 0x426ce9
movzx eax, byte [0x485fd6]
add dword [esi + 0xc], eax
movzx eax, byte [0x485fd6]
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.0x41d8be.146
movzx eax, byte [eax + 0x42b3b8]
jmp dword [eax*4 + 0x42b3a0]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x41d8be.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x41d8f7
cmp edx, dword [edi + 4]
je 0x41d8f7
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x427023
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x427023
cmp dword [ebp + 0xa4], ebx
je case.0x41d8be.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.0x41d8be.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 0x427023
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x41d940
jmp 0x427023
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 0x41d9a4
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x41d9a4
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x41d8be.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x41d8be.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 0x427023
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 0x41d9f9
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x41da08
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x41d9d7
jmp 0x427023
mov dword [esi + 0x58], 1
jmp 0x427023
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aa4c
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aa46
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x41daa4
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41d486
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 0x41d486
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41daf3
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 0x41d486
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x41db46
cmp edx, 0x9f
je 0x41db46
cmp dword [ebp + 0xa4], ebx
jne 0x41db46
cmp dword [ebp + 0x5c], ebx
jne 0x41db35
cmp dword [ebp + 0x60], ebx
je 0x41db46
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x41db46
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
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 0x4271cc
jmp 0x426ce9
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41db9f
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x42711d
mov dword [esi + 0x58], ebx
jmp 0x42711d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41dbcb
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x42726b
mov dword [esi + 0x58], ebx
jmp 0x42726b
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x41dc32
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x41dc18
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x424416.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41dc14
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x41dc08
test edx, edx
jg 0x41dbf0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x41d486
mov dword [ebp + 0x84], eax
jmp 0x41d486
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 0x41dc18
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf0
mov edi, dword [0x421f194]
test edi, edi
je 0x41dd3c
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 0x41dcf6
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 0x41dd2b
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
jns 0x41dd3c
mov esi, dword [esi]
test esi, esi
je 0x4271cc
jmp 0x426ce9
add dword [esi + 0xc], 6
jmp 0x41d48a
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 0x41dd66
xor edx, edx
jmp 0x41dd73
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 0x41dd93
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x41dd8d
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x41ddf4
mov ecx, dword [ecx]
test ecx, ecx
jne 0x41dd80
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 0x41de08
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 fcn.004120eb
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x427354
mov esi, dword [esi]
test esi, esi
je 0x42b112
mov edi, 0xffffffe6
jmp 0x426ce9
shl eax, 2
push eax
call dword [0x421b658]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x41ddce
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x41de31
jmp 0x41d491
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aa87
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aa81
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x41de90
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aaa5
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aa9f
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x41dee3
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41d491
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 0x41df2f
cmp eax, 0x8b
jne 0x41df53
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 0x41df70
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 0x427e3d
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 0x41dfed
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42ae37
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42ae2d
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x41e048
cmp al, 0x81
je 0x41e048
mov dword [esi + 0x38], ebx
jmp 0x41e059
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 0x41e066
cmp al, 0x80
jbe 0x41e06a
cmp al, 0x82
jne 0x41e096
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 0x42b146
mov edi, 1
jmp 0x426ce9
cmp al, 0x85
je 0x41e0aa
cmp al, 0x8a
je 0x41e0aa
cmp al, 0x86
je 0x41e0aa
cmp al, 0x8b
jne 0x41e171
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 0x41e0e6
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x41e0e6
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x41e07c
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 0x41e115
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41e171
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x41e135
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41e135
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 0x41e171
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x41e1a7
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 0x42b11f
mov edi, 0xfffffc1a
jmp 0x426ce9
cmp cl, 0x78
je 0x41e220
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x41e220
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x41e1ee
test ecx, ecx
jne 0x42aac6
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aac0
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test ecx, ecx
jne 0x42aae7
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aae1
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x427487
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ab05
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aaff
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
cmp dword [ebp + 0x44], ebx
je case.0x41d4c4.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x41d4c4.1
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x41e348
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
cmp dword [ebp + 0x44], ebx
je 0x41e2ba
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41e2ba
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x41ed04
cmp ecx, dword [ebp + 0x78]
je 0x41e320
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x41e2f8
cmp ecx, edx
jbe 0x41e320
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042d370
add esp, 0x14
test eax, eax
jne 0x41ed04
jmp 0x41e320
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x41e320
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41e320
cmp edi, 1
je 0x41ed04
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41ed04
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426ce9
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x41e285
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x41d491
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41e40a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41e385
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x41ed04
jmp 0x41e3a9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41e3a9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41e3a9
cmp edx, 1
je 0x41ed04
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41ed04
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x424416.14
cmp dword [ebp + 0x18], ebx
jne case.0x424416.14
cmp dword [edi], 2
jne case.0x424416.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x424416.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x424416.14
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426ce9
cmp dword [ebp + 0x48], ebx
jne 0x41e28b
cmp dword [ebp + 0x88], ebx
je 0x41ed04
cmp ecx, dword [ebp + 0x84]
jbe 0x41ed04
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41ed04
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426ce9
cmp dword [ebp + 0x48], ebx
jne 0x41e28b
cmp dword [ebp + 0x58], ebx
je case.0x41d4c4.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41e28b
cmp dword [ebp + 0x88], ebx
je 0x41e348
cmp eax, dword [ebp + 0x84]
jbe 0x41e348
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41e348
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426ce9
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41e515
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41e4dd
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x41e505
jmp 0x41e3a9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41e3a9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41e3a9
cmp edx, 1
je 0x41e505
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x41e3a9
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x41e3a9
cmp dword [ebp + 0x88], ebx
je 0x41ed04
cmp ecx, dword [ebp + 0x84]
jbe 0x41ed04
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41ed04
jmp 0x41e3f6
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41e817
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x41e565
mov dword [esi + 0x5c], ebx
jmp 0x41e69e
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x41e57a
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x41e570
cmp edx, dword [ebp + 0x84]
jae 0x41e588
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41e63c
test bl, 0x20
jne 0x41e5b0
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x41e63c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41e5ca
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x41e632
and eax, 0x3f
test bl, 8
jne 0x41e5e5
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x41e632
test bl, 4
jne 0x41e609
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 0x41e632
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 0x41e6d7
cmp ebx, 0x5f
jne 0x41e654
mov dword [esi + 0x5c], 1
jmp 0x41e69e
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x41e676
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x41e6e8
cmp eax, 3
je 0x41e6e8
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x41e6ef
cmp dword [ebp + 0x88], 0
je 0x41e6cb
cmp edx, dword [ebp + 0x84]
jbe 0x41e6cb
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
mov dword [esi + 0x54], 0
jmp 0x41e955
cmp ebx, 0x100
jae 0x41e699
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41e699
mov eax, 1
jmp 0x41e69b
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41e799
test bl, 0x20
jne 0x41e70f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x41e791
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41e729
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x41e791
and eax, 0x3f
test bl, 8
jne 0x41e744
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x41e791
test bl, 4
jne 0x41e768
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 0x41e791
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 0x41e7fc
cmp ebx, 0x5f
jne 0x41e7b0
mov dword [esi + 0x54], 1
jmp 0x41e955
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x41e7d2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x41e80d
cmp eax, 3
je 0x41e80d
xor eax, eax
jmp 0x41e952
cmp ebx, 0x100
jae 0x41e7f5
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41e7f5
mov eax, 1
jmp 0x41e952
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41e827
mov dword [esi + 0x5c], ebx
jmp 0x41e8c2
cmp eax, dword [ebp + 0x84]
ja 0x41e836
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x41e8ae
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x41e850
mov dword [esi + 0x5c], 1
jmp 0x41e8c2
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ecx, 0x8000007f
jns 0x41e872
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x41e8a0
cmp eax, 3
je 0x41e8a0
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x41e8bf
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x41e8bf
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 0x41e903
cmp dword [ebp + 0x88], ebx
je 0x41e8fe
cmp eax, dword [ebp + 0x84]
jbe 0x41e8fe
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41e8fe
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426cf0
mov dword [esi + 0x54], ebx
jmp 0x41e955
cmp dword [ebp + 0x54], ebx
je 0x41e942
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x41e919
mov dword [esi + 0x54], 1
jmp 0x41e955
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ecx, 0x8000007f
jns 0x41e93b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x41e7d4
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 0x41e970
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x41e978
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x41d491
jmp 0x41e28b
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x41e9bd
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x41e9e8
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x41e28b
jmp 0x41e9e8
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x41e9e8
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41e9e8
cmp edx, 1
je 0x41e28b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41e28b
cmp dword [ebp + 0x88], ebx
je case.0x41d4c4.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x41d4c4.13
cmp dword [ebp + 0x18], ebx
jne case.0x41d4c4.13
cmp dword [ebp + 0x1c], 2
jne case.0x41d4c4.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x41d4c4.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41ea46
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
cmp eax, dword [ebp + 0x84]
jbe case.0x424416.14
jmp 0x41e3e2
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41e348
cmp eax, dword [ebp + 0x78]
jae 0x41e348
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41e348
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x41ea62
inc dword [esi + 0xc]
jmp 0x41d491
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41ea29
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41d491
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x41eabd
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
cmp edi, dword [ebp + 0x84]
jbe case.0x424416.14
jmp 0x41e3e2
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41ebb9
cmp ebx, 0xc0
jb 0x41ebb9
test bl, 0x20
jne 0x41eafa
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ebb6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41eb24
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41ebb9
mov edx, dword [esi + 8]
test bl, 8
jne 0x41eb4a
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 0x41ebad
test bl, 4
jne 0x41eb79
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 0x41ebad
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 0x41ed04
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41ed04
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41eceb
cmp ebx, 0xc0
jb 0x41eceb
test bl, 0x20
jne 0x41ec2c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ece8
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41ec56
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41eceb
mov edx, dword [esi + 8]
test bl, 8
jne 0x41ec7c
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 0x41ecdf
test bl, 4
jne 0x41ecab
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 0x41ecdf
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 0x41dc4d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41dc4d
inc dword [esi + 0xc]
jmp 0x41d48a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41ee14
cmp ebx, 0xc0
jb 0x41ee14
test bl, 0x20
jne 0x41ed55
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ee11
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41ed7f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41ee14
mov edx, dword [esi + 8]
test bl, 8
jne 0x41eda5
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 0x41ee08
test bl, 4
jne 0x41edd4
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 0x41ee08
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 0x41ed04
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x41ebcc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41ef34
cmp ebx, 0xc0
jb 0x41ef34
test bl, 0x20
jne 0x41ee75
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ef31
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41ee9f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41ef34
mov edx, dword [esi + 8]
test bl, 8
jne 0x41eec5
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 0x41ef28
test bl, 4
jne 0x41eef4
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 0x41ef28
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 0x41dc4d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x41dc4d
inc dword [esi + 0xc]
jmp 0x41d48a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f05d
cmp ebx, 0xc0
jb 0x41f05d
test bl, 0x20
jne 0x41ef9e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f05a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41efc8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f05d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41efee
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 0x41f051
test bl, 4
jne 0x41f01d
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 0x41f051
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 0x41ed04
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x41ebcc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f17d
cmp ebx, 0xc0
jb 0x41f17d
test bl, 0x20
jne 0x41f0be
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f17a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f0e8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f17d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f10e
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 0x41f171
test bl, 4
jne 0x41f13d
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 0x41f171
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 0x41dc4d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41dc4d
inc dword [esi + 0xc]
jmp 0x41d48a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f2a6
cmp ebx, 0xc0
jb 0x41f2a6
test bl, 0x20
jne 0x41f1e7
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f2a3
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f211
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f2a6
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f237
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 0x41f29a
test bl, 4
jne 0x41f266
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 0x41f29a
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 0x41f31f
je 0x41f2c1
cmp ebx, 0xa
je 0x41ed04
jbe 0x41ebd2
cmp ebx, 0xc
jmp 0x41f339
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41f30a
cmp dword [ebp + 0x88], 0
je 0x41ed04
cmp eax, dword [ebp + 0x84]
jbe 0x41ed04
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41ed04
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426cf0
cmp byte [eax], 0xa
jne 0x41ed04
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41d48a
cmp ebx, 0x85
je 0x41f33f
cmp ebx, 0x2027
jbe 0x41ebd2
cmp ebx, 0x2029
ja 0x41ebd2
cmp dword [ebp + 0x68], 0
jmp 0x41ebcc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f450
cmp ebx, 0xc0
jb 0x41f450
test bl, 0x20
jne 0x41f391
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f44d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f3bb
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f450
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f3e1
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 0x41f444
test bl, 4
jne 0x41f410
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 0x41f444
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 0x41f488
je 0x41dc4d
cmp ebx, 0xa0
ja 0x41f47d
je 0x41dc4d
cmp ebx, 9
je 0x41dc4d
cmp ebx, 0x20
jmp 0x41ecfe
cmp ebx, 0x1680
jmp 0x41ecfe
cmp ebx, 0x205f
ja 0x41f4b9
je 0x41dc4d
cmp ebx, 0x2000
jb 0x41ed04
cmp ebx, 0x200a
jbe 0x41dc4d
cmp ebx, 0x202f
jmp 0x41ecfe
cmp ebx, 0x3000
je 0x41dc4d
inc dword [esi + 0xc]
jmp 0x41d48a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f5d5
cmp ebx, 0xc0
jb 0x41f5d5
test bl, 0x20
jne 0x41f516
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f5d2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f540
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f5d5
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f566
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 0x41f5c9
test bl, 4
jne 0x41f595
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 0x41f5c9
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 0x41f60d
je 0x41ed04
cmp ebx, 0xa0
ja 0x41f602
je 0x41ed04
cmp ebx, 9
je 0x41ed04
cmp ebx, 0x20
jmp 0x41ebcc
cmp ebx, 0x1680
jmp 0x41ebcc
cmp ebx, 0x205f
ja 0x41f63e
je 0x41ed04
cmp ebx, 0x2000
jb 0x41ebd2
cmp ebx, 0x200a
jbe 0x41ed04
cmp ebx, 0x202f
jmp 0x41ebcc
cmp ebx, 0x3000
jmp 0x41ebcc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f751
cmp ebx, 0xc0
jb 0x41f751
test bl, 0x20
jne 0x41f692
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f74e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f6bc
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f751
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f6e2
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 0x41f745
test bl, 4
jne 0x41f711
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 0x41f745
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 0x41f779
je 0x41ebd2
cmp ebx, 0xa
jb 0x41ed04
cmp ebx, 0xd
jbe 0x41ebd2
inc dword [esi + 0xc]
jmp 0x41d48a
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41ed04
jmp 0x41ebd2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41f895
cmp ebx, 0xc0
jb 0x41f895
test bl, 0x20
jne 0x41f7d6
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f892
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f800
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41f895
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f826
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 0x41f889
test bl, 4
jne 0x41f855
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 0x41f889
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 0x41f8ba
je 0x41ed04
cmp ebx, 0xa
jb 0x41dc4d
cmp ebx, 0xd
jbe 0x41ed04
jmp 0x41dc4d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41dc4d
inc dword [esi + 0xc]
jmp 0x41d48a
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41f9cd
cmp ebx, 0xc0
jb 0x41f9cd
test bl, 0x20
jne 0x41f919
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41f9ca
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41f941
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x41f9cd
mov edx, dword [esi + 8]
test bl, 8
jne 0x41f967
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 0x41f9ca
test bl, 4
jne 0x41f996
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 0x41f9ca
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 + 0x4878e8]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41f9f0
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 + 0x489ae8]
cmp eax, 0xa
ja case.default.0x41fa0a
jmp dword [eax*4 + 0x42b3cc]
cmp dword [esi + 0x9c], 0xf
jne 0x41d486
jmp 0x41e28b
mov al, byte [edx*8 + 0x486269]
cmp al, 9
je 0x41fa3a
cmp al, 5
je 0x41fa3a
cmp al, 8
je 0x41fa3a
xor ecx, ecx
jmp 0x41fa3f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x41d486
jmp 0x41e28b
movzx ecx, byte [edx*8 + 0x486269]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x486078]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x41d486
jmp 0x41e28b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x486269]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x41d486
jmp 0x41e28b
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x486268]
jmp 0x41fa9b
movzx eax, byte [edx*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x41fa3a
cmp eax, 3
je 0x41fa3a
xor ecx, ecx
jmp 0x41fa3f
cmp ebx, 0x180e
ja 0x41fb33
je case.0x41fa0a.0
cmp ebx, 0x85
ja 0x41fb1f
je case.0x41fa0a.0
cmp ebx, 9
jb case.0x41fb53.8203
cmp ebx, 0xd
jbe case.0x41fa0a.0
cmp ebx, 0x20
jmp 0x41fb6c
cmp ebx, 0xa0
je case.0x41fa0a.0
cmp ebx, 0x1680
jmp 0x41fb6c
cmp ebx, 0x202f
ja 0x41fb5a
je case.0x41fa0a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x41fb53.8203
movzx eax, byte [ebx + 0x42b400]
jmp dword [eax*4 + 0x42b3f8]
cmp ebx, 0x205f
je case.0x41fa0a.0
cmp ebx, 0x3000
je case.0x41fa0a.0
movzx eax, byte [edx*8 + 0x486269]
xor ecx, ecx
cmp dword [eax*4 + 0x486078], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x41faa7
movzx eax, byte [edx*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x41fa3a
cmp eax, 3
je 0x41fa3a
cmp ebx, 0x5f
je 0x41fa3a
xor ecx, ecx
jmp 0x41fa3f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x486128]
lea eax, [eax*4 + 0x486128]
cmp ebx, ecx
jb 0x41fbed
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x41fbff
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x41fbe0
cmp dword [esi + 0x9c], 0x10
jne 0x41d486
jmp 0x41e28b
cmp dword [esi + 0x9c], 0x10
je 0x41d486
jmp 0x41e28b
cmp ebx, 0x24
je 0x41fa3a
cmp ebx, 0x40
je 0x41fa3a
cmp ebx, 0x60
je 0x41fa3a
cmp ebx, 0xa0
jb 0x41fc40
cmp ebx, 0xd7ff
jbe 0x41fa3a
cmp ebx, 0xe000
jae 0x41fa3a
xor ecx, ecx
jmp 0x41fa3f
mov esi, dword [esi]
test esi, esi
je case.default.0x426d04
mov edi, 0xfffffff2
jmp 0x426ce9
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x41fd72
cmp ebx, 0xc0
jb 0x41fd72
test bl, 0x20
jne 0x41fcb0
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41fd6f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41fcdf
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 0x41fd72
mov edx, dword [esi + 8]
test bl, 8
jne 0x41fd05
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 0x41fd68
test bl, 4
jne 0x41fd34
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 0x41fd68
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x41fd94
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x48626a]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41ff26
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x41febe
cmp ebx, 0xc0
jb 0x41febe
test bl, 0x20
jne 0x41fdf5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x41feb6
test bl, 0x10
jne 0x41fe1a
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 0x41feb6
test bl, 8
jne 0x41fe48
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 0x41feb6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x41fe82
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 0x41feb6
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x41fee0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx ecx, byte [eax*8 + 0x48626a]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4860f0], eax
je 0x41ff26
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 0x41fdc0
cmp dword [ebp + 0x88], 0
je 0x41ed04
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41ed04
cmp eax, dword [ebp + 0x84]
jbe 0x41ed04
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41ed04
jmp 0x41e3f6
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 0x420054
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 0x41ffe4
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x41ffed
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x41ffc0
jmp 0x420054
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x420054
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 0x420044
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x420044
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x42004e
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.0x42006f
movzx eax, byte [eax + 0x42b434]
jmp dword [eax*4 + 0x42b42c]
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 + 0x4855b8]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4855c4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4200fd
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x4200fd
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 0x4200f9
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x41d491
jns 0x420121
cmp dword [esi + 0x90], 0
je 0x41d491
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x42015f
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.0042b930
add esp, 0x14
test eax, eax
js 0x420191
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x420130
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41d491
cmp dword [esp + 0x80], 0
je 0x4201ba
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4275a2
cmp eax, 0xfffffffe
jne 0x42019c
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x424416.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x424416.14
jmp 0x41ea35
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x4201d0
cmp edi, dword [esi + 0x8c]
jge 0x4275f1
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.0042b930
add esp, 0x14
test eax, eax
js 0x420205
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x4201d0
cmp eax, 0xfffffffe
jne 0x4275f1
cmp dword [ebp + 0x88], 0
je 0x4275f1
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x4275f1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4275f1
jmp 0x41e3f6
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.0042b930
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x4202c9
cmp eax, 0xfffffffe
jne 0x420275
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x427bcd.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x427bcd.14
cmp eax, dword [ebp + 0x84]
jbe case.0x427bcd.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x427bcd.14
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x426cf4
add dword [esi + 8], eax
jmp 0x41d48a
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.0x4202f7
movzx eax, byte [eax + 0x42b444]
jmp dword [eax*4 + 0x42b43c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x42031a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x420325
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4855b8]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4855c4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4203bc
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x4203bc
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 0x4203a2
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x4203bc
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x42051c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x420571
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x4204cc
test bl, 0x20
jne 0x42041a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4204c9
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x420441
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4204c7
test bl, 8
jne 0x420464
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 0x4204c7
test bl, 4
jne 0x420493
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 0x4204c7
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 0x4204dd
cmp dword [esi + 0x9c], 0x6e
jmp 0x4204f2
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.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4203e0
jmp 0x420563
cmp dword [ebp + 0x88], 0
je case.0x424416.14
mov eax, dword [esi + 8]
jmp 0x41ea35
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x42056a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x420507
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.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420530
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41d48a
test ebx, ebx
je 0x42059a
test edx, edx
jne 0x42a807
mov dword [esi + 0x84], eax
jmp 0x42768b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x420752
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x42073f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x420717
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x4206c6
test bl, 0x20
jne 0x42060b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x4206c6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x420633
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x4206bc
and eax, 0x3f
test bl, 8
jne 0x420659
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 0x4206bc
test bl, 4
jne 0x420688
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 0x4206bc
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 0x4206d7
cmp dword [esi + 0x9c], 0x6e
jmp 0x4206ec
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 0x42073f
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 0x4205c1
jmp 0x42073f
cmp dword [ebp + 0x88], 0
je 0x42073f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42073f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x42864c
jmp 0x41d48a
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4207ca
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x4207a2
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 0x4207ca
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 0x420761
jmp 0x4207ca
cmp dword [ebp + 0x88], 0
je 0x4207ca
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4207ca
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x4276cb
jmp 0x41d48a
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.0x420815
movzx eax, byte [eax + 0x42b458]
jmp dword [eax*4 + 0x42b450]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x420838
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x420843
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4855b8]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4855c4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x4208da
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x4208da
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 0x4208c0
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x4208da
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x420a15
jmp 0x4208f0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x4209ea
cmp edx, 0xc0
jb 0x4209ea
test dl, 0x20
jne 0x420938
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4209e7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x42095f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4209e5
test dl, 8
jne 0x420982
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 0x4209e5
test dl, 4
jne 0x4209b1
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 0x4209e5
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.0042cbb0
add esp, 0xc
test eax, eax
je case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4208f0
jmp 0x420a1c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41d491
cmp dword [esp + 0x84], 0
jne 0x42a818
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 0x420bad
jmp 0x420a60
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x420b83
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x420b4b
cmp edx, 0xc0
jb 0x420b4b
test dl, 0x20
jne 0x420aac
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x420b4b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x420acb
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x420b41
and eax, 0x3f
test dl, 8
jne 0x420aeb
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x420b41
test dl, 4
jne 0x420b14
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 0x420b41
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.0042cbb0
add esp, 0xc
test eax, eax
je 0x420bad
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x420a60
jmp 0x420bad
cmp dword [ebp + 0x88], 0
je 0x420ba6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x420ba6
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41e3f6
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x41d491
jmp 0x428461
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x420d99
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 0x420d20
test al, 0x20
jne 0x420c20
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 0x420d20
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x420c5a
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 0x420d20
test al, 8
jne 0x420c96
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 0x420d20
test al, 4
mov eax, dword [esi + 0x80]
jne 0x420cdb
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 0x420d20
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 0x420d59
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
cmp edx, edi
jb case.0x424416.14
cmp edx, dword [ebp + 0x84]
jbe case.0x424416.14
jmp 0x41e3e2
test ecx, ecx
jle 0x420d8e
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.0x424416.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x420d60
dec dword [esi + 0x88]
jmp 0x41d48a
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x420de6
cmp dword [ebp + 0x88], ebx
je 0x41dc4d
cmp edi, dword [ebp + 0x84]
jbe 0x41dc4d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41dc4d
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426cf0
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 0x4210fb
jmp 0x41e28b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41eaa0
cmp dword [esp + 0x8c], ebx
je 0x4210dc
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 0x420f6b
test al, 0x20
jne 0x420e6b
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 0x420f6b
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x420ea5
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 0x420f6b
test al, 8
jne 0x420ee1
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 0x420f6b
test al, 4
mov eax, dword [esi + 0x80]
jne 0x420f26
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 0x420f6b
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 0x420f99
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x41e28b
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x41d48a
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x42107b
test bl, 0x20
jne 0x420fc9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x421078
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x420ff0
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x421076
test bl, 8
jne 0x421013
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 0x421076
test bl, 4
jne 0x421042
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 0x421076
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 0x41d48a
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4878e8]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x4210b5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
mov eax, dword [eax*8 + 0x48626c]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x41d491
jmp 0x41e28b
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 0x41e28b
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x41d48a
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 0x42122d
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 0x421164
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x42116f
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x42122d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421234
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x421234
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x421234
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 + 0x4855b8]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4855c4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x42122d
mov dword [esi + 0x8c], 0x7fffffff
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x4216a8
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 0x42137b
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x421291
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 0x42137b
test bl, 0x10
jne 0x4212c6
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 0x42137b
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 0x421304
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 0x42137b
test bl, 4
jne 0x42133d
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 0x42137b
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 0x4216b7
cmp dword [esi + 0x9c], 0x2e
jb 0x4213ec
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4878e8]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x4213c3
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
mov ecx, dword [eax*8 + 0x48626c]
add ecx, edi
cmp ecx, edi
je 0x4213ec
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.0042cb50
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x4213f3
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x421526
jmp 0x421410
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 0x421494
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x421448
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x421451
add ecx, 4
add edx, 4
sub edi, 4
jae 0x421437
cmp edi, 0xfffffffc
je 0x421508
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x42148a
cmp edi, 0xfffffffd
je 0x421508
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x42148a
cmp edi, 0xfffffffe
je 0x421508
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x42148a
cmp edi, 0xffffffff
je 0x421508
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x421508
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x42019c
sub ecx, ebx
cmp edi, ecx
ja 0x42019c
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x4214c6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4214cb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4214b5
cmp edi, 0xfffffffc
je 0x421508
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x42019c
cmp edi, 0xfffffffd
je 0x421508
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x42019c
cmp edi, 0xfffffffe
je 0x421508
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x42019c
cmp edi, 0xffffffff
je 0x421508
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x42019c
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x421410
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41d491
cmp dword [esp + 0x84], 0
jne 0x42a829
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 0x421695
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 0x4215ec
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x4215a8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4215b1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x421597
cmp edi, 0xfffffffc
je 0x421648
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4215e2
cmp edi, 0xfffffffd
je 0x421648
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4215e2
cmp edi, 0xfffffffe
je 0x421648
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4215e2
cmp edi, 0xffffffff
je 0x421648
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x421648
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x421668
sub ecx, ebx
cmp edi, ecx
ja 0x421668
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x421616
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42161b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x421605
cmp edi, 0xfffffffc
je 0x421648
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x421668
cmp edi, 0xfffffffd
je 0x421648
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x421668
cmp edi, 0xfffffffe
je 0x421648
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x421668
cmp edi, 0xffffffff
je 0x421648
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x421668
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x421570
jmp 0x421695
cmp dword [ebp + 0x88], 0
je 0x421695
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x421695
cmp eax, dword [ebp + 0x84]
jbe 0x421695
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x42880c
jmp 0x41d48a
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x4217af
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 0x421714
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x420507
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x421707
cmp dword [esi + 0x94], ecx
jne case.0x424416.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x4216e4
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41d48a
cmp dword [esp + 0x84], 0
je 0x42173b
mov dword [esi + 0x84], eax
jmp 0x42776b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4217a2
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42177a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x42176b
cmp dword [esi + 0x94], ecx
jne 0x4217a2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x421750
jmp 0x4217a2
cmp dword [ebp + 0x88], 0
je 0x4217a2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4217a2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
test edi, edi
je 0x4277ab
jmp 0x41d48a
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x4217ea
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4217c0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41d491
cmp dword [esp + 0x84], 0
je 0x421818
mov dword [esi + 0x84], eax
jmp 0x427838
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x42187c
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x421854
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x42187c
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x421830
jmp 0x42187c
cmp dword [ebp + 0x88], 0
je 0x42187c
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42187c
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x427878
jmp 0x41d491
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x4218b4
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x424416.14
jmp 0x41e3e2
test edi, edi
je 0x421b2c
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 0x4219b5
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x4218f2
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4219b2
test bl, 0x10
jne 0x421913
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 0x4219b2
test bl, 8
jne 0x42193e
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 0x4219b5
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x421977
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 0x4219b2
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 0x421aa8
test dl, 0x20
jne 0x4219ef
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421a9e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421a16
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x421a9c
test dl, 8
jne 0x421a39
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 0x421a9c
test dl, 4
jne 0x421a68
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 0x421a9c
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 0x421ac5
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x41d491
jmp 0x41e28b
cmp ebx, 0x7f
jbe 0x421b02
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4878e8]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x421aed
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
mov ecx, dword [eax*8 + 0x48626c]
add ecx, ebx
jmp 0x421b09
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x41e28b
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x41d491
jmp 0x41e28b
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.0x424416.14
cmp dword [esi + 0x9c], 0x20
jne 0x4210fb
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x424416.14
add dword [esi + 0xc], 2
jmp 0x41d48a
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 0x421cc6
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 0x421bcb
cmp al, 0x4f
je 0x421bcb
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x421cc6
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x421cc6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421cc6
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421cc6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x421cc6
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 0x421cc6
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 + 0x4855b8]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4855c4]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x421cc6
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
mov edx, dword [esp + 0x8c]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
mov edi, dword [esi + 0xc]
test edx, edx
je 0x421e21
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x421e21
test al, 0x20
jne 0x421d18
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 0x421e21
test al, 0x10
jne 0x421d4b
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 0x421e21
test al, 8
jne 0x421d8d
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 0x421e21
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x421dd8
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 0x421e1a
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 0x422245
test edx, edx
je 0x421e7c
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x421e7c
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4878e8]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x421e60
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
mov eax, dword [eax*8 + 0x48626c]
add eax, edi
jmp 0x421e89
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x421fd0
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x42201b
jmp 0x421eb0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x421fa9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x421eea
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x421fa6
test cl, 0x10
jne 0x421f0b
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 0x421fa6
test cl, 8
jne 0x421f35
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 0x421fa6
test cl, 4
jne 0x421f6b
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 0x421fa6
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.0x424416.14
cmp dword [esi + 0x94], ecx
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421eb0
jmp 0x422014
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x422014
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x420507
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x424416.14
cmp dword [esi + 0x94], ecx
je case.0x424416.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x421fe0
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41d48a
test ebx, ebx
je 0x422044
test edx, edx
jne 0x42a83a
mov dword [esi + 0x84], eax
jmp 0x42790f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x4221cd
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4221ba
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x422192
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42216e
test dl, 0x20
jne 0x4220a2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x42216e
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4220cc
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 0x42216c
test dl, 8
jne 0x4220f8
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 0x42216c
test dl, 4
jne 0x422130
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 0x42216c
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 0x4221ba
cmp dword [esi + 0x94], edx
je 0x4221ba
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x422064
jmp 0x4221ba
cmp dword [ebp + 0x88], 0
je 0x4221ba
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4221ba
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x4289ec
jmp 0x41d48a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x422232
jmp 0x4221e0
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42220a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x422232
cmp dword [esi + 0x94], ecx
je 0x422232
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4221e0
jmp 0x422232
cmp dword [ebp + 0x88], 0
je 0x422232
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422232
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x42794f
jmp 0x41d48a
test edx, edx
je 0x422367
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x4223a5
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42234c
test dl, 0x20
jne 0x42229a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x422349
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4222c1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x422347
test dl, 8
jne 0x4222e4
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 0x422347
test dl, 4
jne 0x422313
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 0x422347
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.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x422260
jmp 0x42239e
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x4223a5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422374
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41d48a
cmp dword [esp + 0x84], 0
je 0x4223d4
test edx, edx
jne 0x42a84f
mov dword [esi + 0x84], eax
jmp 0x4279dc
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x422558
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x422545
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x42251d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x422501
test dl, 0x20
jne 0x422432
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x422501
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x42245c
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 0x4224ff
test dl, 8
jne 0x42248b
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 0x4224ff
test dl, 4
jne 0x4224c3
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 0x4224ff
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 0x422545
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4223f4
jmp 0x422545
cmp dword [ebp + 0x88], 0
je 0x422545
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x422545
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x428bb0
jmp 0x41d48a
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4225b2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42258a
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x4225b2
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x422566
jmp 0x4225b2
cmp dword [ebp + 0x88], 0
je 0x4225b2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4225b2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x427a1c
jmp 0x41d48a
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 0x422704
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 0x422704
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x422704
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x422704
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x422704
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 0x422704
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x485563]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x48556f]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x422704
mov dword [esi + 0x8c], 0x7fffffff
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x7c], eax
inc dword [esi + 0xc]
mov ecx, dword [esi + 0x7c]
cmp ecx, 0x10
je 0x422726
cmp ecx, 0xf
je 0x422726
mov dword [esi + 0x60], 0xffffffff
jmp 0x422749
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 0x4246eb
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4234f8
cmp eax, 0xa
ja case.default.0x41fa0a
jmp dword [eax*4 + 0x42b464]
cmp dword [esi + 0x68], ebx
jne 0x41e28b
mov edx, 1
cmp ecx, edx
jl 0x4246eb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x4227cf
cmp ecx, 0xc0
jb 0x4227cf
test cl, 0x20
jne 0x4227ab
inc eax
jmp 0x4227cc
test cl, 0x10
jne 0x4227b5
add eax, 2
jmp 0x4227cc
test cl, 8
jne 0x4227bf
add eax, 3
jmp 0x4227cc
test cl, 4
jne 0x4227c9
add eax, 4
jmp 0x4227cc
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x422788
jmp 0x4246eb
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
mov eax, dword [esi + 8]
jmp 0x41ea35
mov edi, 1
cmp ecx, edi
jl 0x4246eb
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4228fa
cmp ebx, 0xc0
jb 0x4228fa
test bl, 0x20
jne 0x422848
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4228f7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42286f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4228f5
test bl, 8
jne 0x422892
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 0x4228f5
test bl, 4
jne 0x4228c1
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 0x4228f5
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x42291c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp eax, 9
je 0x422941
cmp eax, 5
je 0x422941
cmp eax, 8
je 0x422941
xor eax, eax
jmp 0x422946
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422800
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246eb
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x422a68
cmp ebx, 0xc0
jb 0x422a68
test bl, 0x20
jne 0x4229b8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x422a65
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4229df
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x422a65
test bl, 8
jne 0x422a02
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 0x422a65
test bl, 4
jne 0x422a31
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 0x422a65
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x422a8a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422970
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246eb
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x422bcb
cmp ebx, 0xc0
jb 0x422bcb
test bl, 0x20
jne 0x422b1b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x422bc8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x422b42
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x422bc8
test bl, 8
jne 0x422b65
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 0x422bc8
test bl, 4
jne 0x422b94
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 0x422bc8
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x422bed
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422ad3
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246eb
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x422d28
cmp ebx, 0xc0
jb 0x422d28
test bl, 0x20
jne 0x422c78
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x422d25
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x422c9f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x422d25
test bl, 8
jne 0x422cc2
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 0x422d25
test bl, 4
jne 0x422cf1
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 0x422d25
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x422d4a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486268]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422c30
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246eb
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x422e8a
cmp ebx, 0xc0
jb 0x422e8a
test bl, 0x20
jne 0x422dd8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x422e87
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x422dff
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x422e85
test bl, 8
jne 0x422e22
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 0x422e85
test bl, 4
jne 0x422e51
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 0x422e85
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x422eac
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x422ed3
cmp eax, 3
je 0x422ed3
xor eax, eax
jmp 0x422ed8
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422d90
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246eb
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x422ffa
cmp ebx, 0xc0
jb 0x422ffa
test bl, 0x20
jne 0x422f48
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x422ff7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x422f6f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x422ff5
test bl, 8
jne 0x422f92
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 0x422ff5
test bl, 4
jne 0x422fc1
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 0x422ff5
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 0x42303d
je case.0x423059.8192
cmp ebx, 0x85
ja 0x423029
je case.0x423059.8192
cmp ebx, 9
jb case.0x423059.8203
cmp ebx, 0xd
jbe case.0x423059.8192
cmp ebx, 0x20
jmp 0x42306e
cmp ebx, 0xa0
je case.0x423059.8192
cmp ebx, 0x1680
jmp 0x42306e
cmp ebx, 0x202f
ja 0x423060
je case.0x423059.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x423059.8203
movzx eax, byte [eax + 0x42b498]
jmp dword [eax*4 + 0x42b490]
cmp ebx, 0x205f
je case.0x423059.8192
cmp ebx, 0x3000
je case.0x423059.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x423092
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp dword [eax*4 + 0x486078], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x424416.14
jmp 0x4230c6
cmp dword [esi + 0x68], 0
jne case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x422f00
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246eb
jmp 0x4230f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4231e8
cmp ebx, 0xc0
jb 0x4231e8
test bl, 0x20
jne 0x423138
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4231e5
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42315f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4231e5
test bl, 8
jne 0x423182
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 0x4231e5
test bl, 4
jne 0x4231b1
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 0x4231e5
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 + 0x4878e8]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x42320b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x423237
cmp eax, 3
je 0x423237
cmp ebx, 0x5f
je 0x423237
xor eax, eax
jmp 0x42323c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x424416.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4230f0
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246eb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x42335c
cmp edx, 0xc0
jb 0x42335c
test dl, 0x20
jne 0x4232ac
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423359
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4232d3
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x423359
test dl, 8
jne 0x4232f6
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 0x423359
test dl, 4
jne 0x423325
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 0x423359
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 + 0x486128]
lea eax, [eax*4 + 0x486128]
cmp edx, ecx
jb 0x42337e
lea eax, [eax + 4]
cmp edx, ecx
je 0x42339a
mov ecx, dword [eax]
cmp edx, ecx
jae 0x423371
cmp dword [esi + 0x68], 0
je case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423264
jmp 0x4246eb
cmp dword [esi + 0x68], 0
jne case.0x424416.14
jmp 0x423388
mov ebx, 1
cmp ecx, ebx
jl 0x4246eb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x4234ad
cmp edx, 0xc0
jb 0x4234ad
test dl, 0x20
jne 0x4233fb
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4234aa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x423422
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4234a8
test dl, 8
jne 0x423445
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 0x4234a8
test dl, 4
jne 0x423474
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 0x4234a8
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 0x4234d8
cmp edx, 0x40
je 0x4234d8
cmp edx, 0x60
je 0x4234d8
cmp edx, 0xa0
jb 0x4234cc
cmp edx, 0xd7ff
jbe 0x4234d8
cmp edx, 0xe000
jae 0x4234d8
xor eax, eax
jmp 0x4234dd
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4233b3
jmp 0x4246eb
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x423823
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x4246eb
jmp 0x423520
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x420507
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x423620
cmp ebx, 0xc0
jb 0x423620
test bl, 0x20
jne 0x423569
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x42361d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x423590
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x423616
test bl, 8
jne 0x4235b3
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 0x423616
test bl, 4
jne 0x4235e2
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 0x423616
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x423642
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x48626a]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4237dd
jmp 0x423670
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42376e
cmp ebx, 0xc0
jb 0x42376e
test bl, 0x20
jne 0x4236a5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x423766
test bl, 0x10
jne 0x4236ca
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 0x423766
test bl, 8
jne 0x4236f8
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 0x423766
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x423732
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 0x423766
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x423790
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx ecx, byte [eax*8 + 0x48626a]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4860f0], eax
je 0x4237d6
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 0x423670
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x42380a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42380a
cmp eax, dword [ebp + 0x84]
jbe 0x42380a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x423520
jmp 0x4246eb
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x4242ef
cmp eax, 0xf
ja case.0x426837.9
jmp dword [eax*4 + 0x42b4c4]
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x420507
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x423887
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne case.0x424416.14
jmp 0x4238ab
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4238ab
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4238ab
cmp edx, 1
je case.0x424416.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x424416.14
cmp dword [ebp + 0x88], 0
je 0x4238e6
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4238e6
cmp dword [ebp + 0x18], 0
jne 0x4238e6
cmp dword [edi], 2
jne 0x4238e6
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4238e6
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423902
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x423902
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x4238f1
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423852
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x4227dd
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x423958
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x423958
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x423940
inc edi
cmp edi, dword [esi + 0x90]
jle 0x423924
jmp 0x4246eb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x41e28b
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x423a7c
test dl, 0x20
jne 0x4239ca
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423a79
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4239f1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x423a77
test dl, 8
jne 0x423a14
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 0x423a77
test dl, 4
jne 0x423a43
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 0x423a77
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 0x423aa0
je 0x423a8d
cmp edx, 0xa
je 0x423ac1
lea eax, [edx - 0xb]
jmp 0x423aae
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x423ac1
cmp byte [eax], 0xa
jne 0x423ac1
inc eax
mov dword [esi + 8], eax
jmp 0x423ac1
cmp edx, 0x85
je 0x423ab7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x424416.14
cmp dword [ebp + 0x68], 0
jne case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423990
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x423bcc
test dl, 0x20
jne 0x423b1a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423bc9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x423b41
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x423bc7
test dl, 8
jne 0x423b64
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 0x423bc7
test dl, 4
jne 0x423b93
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 0x423bc7
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 0x423bfe
je case.0x424416.14
cmp edx, 0xa0
ja 0x423bf6
je case.0x424416.14
cmp edx, 9
je case.0x424416.14
cmp edx, 0x20
jmp 0x423c2e
cmp edx, 0x1680
jmp 0x423c2e
cmp edx, 0x205f
ja 0x423c28
je case.0x424416.14
cmp edx, 0x2000
jb 0x423c34
cmp edx, 0x200a
jbe case.0x424416.14
cmp edx, 0x202f
jmp 0x423c2e
cmp edx, 0x3000
je case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423ae0
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x423d3f
test dl, 0x20
jne 0x423c8d
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423d3c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x423cb4
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x423d3a
test dl, 8
jne 0x423cd7
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 0x423d3a
test dl, 4
jne 0x423d06
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 0x423d3a
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 0x423d65
je 0x423d97
cmp edx, 0xa0
ja 0x423d5d
je 0x423d97
cmp edx, 9
je 0x423d97
cmp edx, 0x20
jmp 0x423d91
cmp edx, 0x1680
jmp 0x423d91
cmp edx, 0x205f
ja 0x423d8b
je 0x423d97
cmp edx, 0x2000
jb case.0x424416.14
cmp edx, 0x200a
jbe 0x423d97
cmp edx, 0x202f
jmp 0x423d91
cmp edx, 0x3000
jne case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423c53
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
jmp 0x423dc0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x423eac
test dl, 0x20
jne 0x423dfa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423ea9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x423e21
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x423ea7
test dl, 8
jne 0x423e44
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 0x423ea7
test dl, 4
jne 0x423e73
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 0x423ea7
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 0x423ec4
je case.0x424416.14
cmp edx, 0xa
jb 0x423ed8
cmp edx, 0xd
jmp 0x423ed2
cmp edx, 0x2028
jb 0x423ed8
cmp edx, 0x2029
jbe case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423dc0
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
jmp 0x423f00
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x423fec
test dl, 0x20
jne 0x423f3a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x423fe9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x423f61
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x423fe7
test dl, 8
jne 0x423f84
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 0x423fe7
test dl, 4
jne 0x423fb3
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 0x423fe7
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 0x423ffe
je 0x42400d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x424007
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x423f00
jmp 0x4246eb
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x420507
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42411c
test dl, 0x20
jne 0x42406a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x424119
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x424091
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x424117
test dl, 8
jne 0x4240b4
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 0x424117
test dl, 4
jne 0x4240e3
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 0x424117
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 0x424131
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x424416.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x424030
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4227dd
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x424416.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x424416.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x424150
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x4227dd
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x4241c3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x424416.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4241e8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4241e8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4241d0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4241a0
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4227dd
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x424416.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x424416.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x424203
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x4227dd
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x424273
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x424416.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x424298
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x424298
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x424280
inc edi
cmp edi, dword [esi + 0x90]
jle 0x424250
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4227dd
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x424416.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x424416.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4242b3
jmp 0x4246eb
cmp eax, 0xf
ja case.0x426837.9
jmp dword [eax*4 + 0x42b504]
mov ebx, 1
cmp ecx, ebx
jl 0x4246f2
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x420507
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x424340
push 0
push edi
push eax
push edx
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne case.0x424416.14
jmp 0x424364
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x424364
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x424364
cmp edx, 1
je case.0x424416.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x424416.14
cmp dword [ebp + 0x88], 0
je 0x42439f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x42439f
cmp dword [ebp + 0x18], 0
jne 0x42439f
cmp dword [edi], 2
jne 0x42439f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x42439f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x424310
jmp 0x4246eb
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x423976
cmp dword [ebp + 0x88], ebx
je case.0x424416.14
cmp edx, dword [ebp + 0x84]
jbe case.0x424416.14
jmp 0x41e3e2
mov edx, 1
cmp ecx, edx
jl 0x4246eb
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4227dd
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x424416.14
movzx eax, byte [eax + 0x42b554]
jmp dword [eax*4 + 0x42b544]
cmp ecx, dword [ebp + 0x78]
jae case.0x424416.10
cmp byte [ecx], 0xa
jne case.0x424416.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x424416.10
cmp dword [ebp + 0x68], ebx
jne case.0x424416.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4243f0
jmp 0x4246eb
mov edx, 1
cmp ecx, edx
jl 0x4246eb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x424416.14
cmp ecx, 0x20
je case.0x424416.14
cmp ecx, 0xa0
je case.0x424416.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x424453
jmp 0x4246eb
mov edx, 1
cmp ecx, edx
jl 0x4246eb
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x4244c9
cmp ecx, 0x20
je 0x4244c9
cmp ecx, 0xa0
jne case.0x424416.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4244a0
jmp 0x4246eb
mov edx, 1
cmp ecx, edx
jl 0x4246eb
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x424511
cmp ecx, 0xd
jle case.0x424416.14
cmp ecx, 0x85
je case.0x424416.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4244e4
jmp 0x4246eb
mov edx, 1
cmp ecx, edx
jl 0x4246eb
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x424416.14
cmp ecx, 0xd
jle 0x42455d
cmp ecx, 0x85
jne case.0x424416.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x424530
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
jmp 0x424580
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x424416.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x424580
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x424416.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4245c0
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x424416.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x424600
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x424416.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x424640
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
jmp 0x424680
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x424416.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x424680
jmp 0x4246eb
mov edi, 1
cmp ecx, edi
jl 0x4246f2
jmp 0x4246c0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4227dd
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x424416.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4246c0
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x41d48a
cmp dword [esp + 0x84], 0
je 0x424752
mov eax, dword [esi + 0x60]
test eax, eax
js 0x424735
cmp eax, 0xa
ja case.0x426837.9
jmp dword [eax*4 + 0x42b5d0]
mov esi, dword [esi]
test esi, esi
je case.default.0x426d04
mov edi, 0xfffffff2
jmp 0x426cf0
cmp dword [esi + 0x7c], 0x16
je 0x42a923
test edx, edx
jne 0x42a90e
mov dword [esi + 0x84], ecx
jmp 0x427b85
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x42578b
cmp eax, 0xa
ja case.0x426837.9
jmp dword [eax*4 + 0x42b5fc]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x425778
mov ebx, dword [esp + 0x8c]
jmp 0x424790
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x4247fb
movzx ecx, byte [edx]
test ebx, ebx
je 0x4247de
cmp ecx, 0xc0
jb 0x4247de
test cl, 0x20
jne 0x4247b8
mov eax, 2
jmp 0x4247de
test cl, 0x10
jne 0x4247c4
mov eax, 3
jmp 0x4247de
test cl, 8
jne 0x4247d0
mov eax, 4
jmp 0x4247de
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x425778
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x424790
jmp 0x425778
cmp dword [ebp + 0x88], 0
je 0x425778
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425778
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x425778
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x426cf0
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4249be
movzx ebx, byte [edi]
test edx, edx
je 0x42493c
cmp ebx, 0xc0
jb 0x42493c
test bl, 0x20
jne 0x42489e
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x424934
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4248bd
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x424934
and eax, 0x3f
test bl, 8
jne 0x4248dd
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x424934
test bl, 4
jne 0x424906
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 0x424934
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x42495e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp eax, 9
je 0x424983
cmp eax, 5
je 0x424983
cmp eax, 8
je 0x424983
xor eax, eax
jmp 0x424988
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x425778
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 0x424860
jmp 0x425778
cmp dword [ebp + 0x88], 0
je 0x425778
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425778
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x425778
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426cf0
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
jmp 0x424a20
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x424ba2
movzx ebx, byte [edi]
test edx, edx
je 0x424b23
cmp ebx, 0xc0
jb 0x424b23
test bl, 0x20
jne 0x424a6a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x424b1b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x424a92
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x424b1b
and eax, 0x3f
test bl, 8
jne 0x424ab8
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 0x424b1b
test bl, 4
jne 0x424ae7
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 0x424b1b
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x424b45
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x425778
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 0x424a20
jmp 0x425778
cmp dword [ebp + 0x88], 0
je 0x425778
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425778
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x4249e3
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x424ba2
movzx ebx, byte [edi]
test edx, edx
je 0x424cef
cmp ebx, 0xc0
jb 0x424cef
test bl, 0x20
jne 0x424c36
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x424ce7
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x424c5e
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x424ce7
and eax, 0x3f
test bl, 8
jne 0x424c84
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 0x424ce7
test bl, 4
jne 0x424cb3
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 0x424ce7
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x424d11
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x425778
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 0x424bf0
jmp 0x425778
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x424ba2
movzx ebx, byte [edi]
test edx, edx
je 0x424e83
cmp ebx, 0xc0
jb 0x424e83
test bl, 0x20
jne 0x424dca
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x424e7b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x424df2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x424e7b
and eax, 0x3f
test bl, 8
jne 0x424e18
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 0x424e7b
test bl, 4
jne 0x424e47
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 0x424e7b
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x424ea5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486268]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x425778
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 0x424d80
jmp 0x425778
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4249be
movzx ebx, byte [edi]
test edx, edx
je 0x424ff3
cmp ebx, 0xc0
jb 0x424ff3
test bl, 0x20
jne 0x424f52
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x424feb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x424f74
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x424feb
and eax, 0x3f
test bl, 8
jne 0x424f94
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x424feb
test bl, 4
jne 0x424fbd
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 0x424feb
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x425015
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x42503c
cmp eax, 3
je 0x42503c
xor eax, eax
jmp 0x425041
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x425778
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 0x424f14
jmp 0x425778
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x424ba2
movzx ebx, byte [edi]
test edx, edx
je 0x42519d
cmp ebx, 0xc0
jb 0x42519d
test bl, 0x20
jne 0x4250e2
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x42519d
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42510a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x425193
and eax, 0x3f
test bl, 8
jne 0x425130
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 0x425193
test bl, 4
jne 0x42515f
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 0x425193
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 0x4251e0
je case.0x425200.8192
cmp ebx, 0x85
ja 0x4251cc
je case.0x425200.8192
cmp ebx, 9
jb case.0x425200.8203
cmp ebx, 0xd
jbe case.0x425200.8192
cmp ebx, 0x20
jmp 0x425215
cmp ebx, 0xa0
je case.0x425200.8192
cmp ebx, 0x1680
jmp 0x425215
cmp ebx, 0x202f
ja 0x425207
je case.0x425200.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x425200.8203
movzx eax, byte [eax + 0x42b630]
jmp dword [eax*4 + 0x42b628]
cmp ebx, 0x205f
je case.0x425200.8192
cmp ebx, 0x3000
je case.0x425200.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x425239
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp dword [eax*4 + 0x486078], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x425778
mov edx, dword [esp + 0x8c]
jmp 0x425274
cmp dword [esi + 0x68], 0
jne 0x425778
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 0x425090
jmp 0x425778
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x424ba2
movzx ebx, byte [edi]
test edx, edx
je 0x4253c3
cmp ebx, 0xc0
jb 0x4253c3
test bl, 0x20
jne 0x42530a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4253bb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x425332
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4253bb
and eax, 0x3f
test bl, 8
jne 0x425358
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 0x4253bb
test bl, 4
jne 0x425387
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 0x4253bb
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 + 0x4878e8]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x4253e6
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x425412
cmp eax, 3
je 0x425412
cmp ebx, 0x5f
je 0x425412
xor eax, eax
jmp 0x425417
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x425778
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 0x4252c0
jmp 0x425778
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x425778
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4255af
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x425551
cmp edx, 0xc0
jb 0x425551
test dl, 0x20
jne 0x4254b4
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x425549
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4254d3
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x425549
and eax, 0x3f
test dl, 8
jne 0x4254f3
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x425549
test dl, 4
jne 0x42551c
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 0x425549
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 + 0x486128]
lea eax, [eax*4 + 0x486128]
cmp edx, ecx
jb 0x425573
lea eax, [eax + 4]
cmp edx, ecx
je 0x4255a3
mov ecx, dword [eax]
cmp edx, ecx
jae 0x425566
cmp dword [esi + 0x68], 0
je 0x425778
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 0x425470
jmp 0x425778
cmp dword [esi + 0x68], 0
jne 0x425778
jmp 0x42557d
cmp dword [ebp + 0x88], 0
je 0x425778
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425778
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x425778
jmp 0x41e3f6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x425778
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x425750
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x425707
cmp edx, 0xc0
jb 0x425707
test dl, 0x20
jne 0x42563d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x425707
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x425667
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 0x425707
test dl, 8
jne 0x425693
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 0x425707
test dl, 4
jne 0x4256cb
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 0x425707
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 0x425732
cmp edx, 0x40
je 0x425732
cmp edx, 0x60
je 0x425732
cmp edx, 0xa0
jb 0x425726
cmp edx, 0xd7ff
jbe 0x425732
cmp edx, 0xe000
jae 0x425732
xor ecx, ecx
jmp 0x425737
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x425778
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4255f1
jmp 0x425778
cmp dword [ebp + 0x88], 0
je 0x425778
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425778
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
je 0x429c2c
jmp 0x41d48a
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x425b27
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x425ad8
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x425ab0
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x4258b0
cmp ebx, 0xc0
jb 0x4258b0
test bl, 0x20
jne 0x4257f9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4258ad
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425820
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4258a6
test bl, 8
jne 0x425843
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 0x4258a6
test bl, 4
jne 0x425872
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 0x4258a6
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x4258d2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x48626a]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x425a6d
jmp 0x425900
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x4259fe
cmp ebx, 0xc0
jb 0x4259fe
test bl, 0x20
jne 0x425935
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x4259f6
test bl, 0x10
jne 0x42595a
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 0x4259f6
test bl, 8
jne 0x425988
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 0x4259f6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4259c2
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 0x4259f6
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x425a20
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx ecx, byte [eax*8 + 0x48626a]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4860f0], eax
je 0x425a66
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 0x425900
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x425a9a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x425a9a
cmp eax, dword [ebp + 0x84]
jbe 0x425a9a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x4257b0
jmp 0x425ad8
cmp dword [ebp + 0x88], 0
je 0x425ad8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x425ad8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
cmp dword [esp + 0x80], 0
jne 0x41d48a
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b055
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b04b
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
add eax, 0xfffffffa
test edx, edx
je 0x42682e
cmp eax, 0xf
ja case.0x426837.9
jmp dword [eax*4 + 0x42b65c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x425c16
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x425b89
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x42681b
jmp 0x425bad
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x425bad
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x425bad
cmp edx, 1
je 0x42681b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42681b
cmp dword [ebp + 0x88], 0
je 0x425be8
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x425be8
cmp dword [ebp + 0x18], 0
jne 0x425be8
cmp dword [edi], 2
jne 0x425be8
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x425be8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x425c04
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x425c04
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x425bf3
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x425b54
jmp 0x42681b
cmp dword [ebp + 0x88], 0
je 0x42681b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42681b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42681b
jmp 0x41e3f6
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x425ca8
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x42681b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x425c16
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x425c9a
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x425c9a
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x425c82
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x425c70
jmp 0x42681b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x42681b
cmp eax, dword [ebp + 0x84]
jbe 0x42681b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42681b
jmp 0x4249e9
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 0x425d2f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x42681b
cmp edx, dword [ebp + 0x84]
jbe 0x42681b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42681b
jmp 0x41e3f6
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x425c16
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x425e5a
test dl, 0x20
jne 0x425d8e
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x425e5a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x425db8
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 0x425e58
test dl, 8
jne 0x425de4
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 0x425e58
test dl, 4
jne 0x425e1c
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 0x425e58
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 0x425e76
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x42681b
cmp byte [eax], 0xa
jne 0x425eb0
inc eax
jmp 0x425ead
cmp edx, 0xa
je 0x425eab
cmp dword [ebp + 0x68], 0
jne 0x42681b
cmp edx, 0xb
je 0x425eab
cmp edx, 0xc
je 0x425eab
cmp edx, 0x85
je 0x425eab
cmp edx, 0x2028
je 0x425eab
cmp edx, 0x2029
jne 0x42681b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x425d50
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x425fa8
test dl, 0x20
jne 0x425f0a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x425fa0
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x425f29
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x425fa0
and eax, 0x3f
test dl, 8
jne 0x425f49
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x425fa0
test dl, 4
jne 0x425f72
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 0x425fa0
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 0x425fce
je 0x425ffc
cmp edx, 0xa0
ja 0x425fc6
je 0x425ffc
cmp edx, 9
je 0x425ffc
cmp edx, 0x20
jmp 0x425ff6
cmp edx, 0x1680
jmp 0x425ff6
cmp edx, 0x205f
ja 0x425ff0
je 0x425ffc
cmp edx, 0x2000
jb 0x425ff8
cmp edx, 0x200a
jbe 0x425ffc
cmp edx, 0x202f
jmp 0x425ff6
cmp edx, 0x3000
je 0x425ffc
xor edx, edx
jmp 0x426001
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x425ed4
jmp 0x42681b
cmp dword [ebp + 0x88], 0
je 0x42681b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42681b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x42681b
jmp 0x41e3f6
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x426140
test dl, 0x20
jne 0x4260a2
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x426138
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4260c1
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x426138
and eax, 0x3f
test dl, 8
jne 0x4260e1
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x426138
test dl, 4
jne 0x42610a
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 0x426138
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 0x42617f
je 0x42618a
cmp edx, 0xa
jb 0x426154
cmp edx, 0xd
jbe 0x42618a
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x426070
jmp 0x42681b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x426154
mov edx, 1
jmp 0x426156
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x426277
test dl, 0x20
jne 0x4261d9
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42626f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4261f8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42626f
and eax, 0x3f
test dl, 8
jne 0x426218
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42626f
test dl, 4
jne 0x426241
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 0x42626f
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 0x42628c
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4261a3
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
jmp 0x4262c0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x426394
test dl, 0x20
jne 0x4262f6
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42638c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x426315
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42638c
and eax, 0x3f
test dl, 8
jne 0x426335
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42638c
test dl, 4
jne 0x42635e
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 0x42638c
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 0x42681b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4262c0
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
jmp 0x4263e0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4264b4
test dl, 0x20
jne 0x426416
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4264ac
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x426435
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4264ac
and eax, 0x3f
test dl, 8
jne 0x426455
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4264ac
test dl, 4
jne 0x42647e
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 0x4264ac
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 0x4264c9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4263e0
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4265c7
test dl, 0x20
jne 0x426529
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4265bf
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x426548
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4265bf
and eax, 0x3f
test dl, 8
jne 0x426568
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4265bf
test dl, 4
jne 0x426591
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 0x4265bf
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 0x42681b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x4264f3
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4266e4
test dl, 0x20
jne 0x426646
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4266dc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x426665
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4266dc
and eax, 0x3f
test dl, 8
jne 0x426685
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4266dc
test dl, 4
jne 0x4266ae
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 0x4266dc
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 0x4266f9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x426610
jmp 0x42681b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42681b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x42602a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4267f7
test dl, 0x20
jne 0x426759
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4267ef
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x426778
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4267ef
and eax, 0x3f
test dl, 8
jne 0x426798
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4267ef
test dl, 4
jne 0x4267c1
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 0x4267ef
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 0x42681b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x42681b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x426723
cmp dword [esp + 0x80], 0
je 0x4290e8
jmp 0x41d48a
cmp eax, 0xf
ja case.0x426837.9
jmp dword [eax*4 + 0x42b69c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x426cc7
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x4268f4
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x426880
push 0
push edi
push eax
push edx
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x426cc7
jmp 0x4268a4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4268a4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4268a4
cmp edx, 1
je 0x426cc7
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x426cc7
cmp dword [ebp + 0x88], 0
je 0x4268df
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x4268df
cmp dword [ebp + 0x18], 0
jne 0x4268df
cmp dword [edi], 2
jne 0x4268df
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x4268df
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x426850
jmp 0x426cc7
cmp dword [ebp + 0x88], 0
je 0x426cc7
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x426cc7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x426cc7
jmp 0x41e3f6
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 0x426978
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x426cc7
cmp edx, dword [ebp + 0x84]
jbe 0x426cc7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x426cc7
jmp 0x41e3f6
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x426cc7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x426cc7
jmp 0x4269a0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4268f4
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x4269cb
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x426cc7
cmp byte [eax], 0xa
jne 0x4269f5
inc eax
jmp 0x4269f2
cmp eax, 0xa
je 0x4269ef
cmp dword [ebp + 0x68], 0
jne 0x426cc7
cmp eax, 0xb
je 0x4269ef
cmp eax, 0xc
je 0x4269ef
cmp eax, 0x85
jne 0x426cc7
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x4269a0
jmp 0x426cc7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x426cc7
jmp 0x426a20
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4268f4
mov al, byte [ecx]
cmp al, 9
je 0x426cc7
cmp al, 0x20
je 0x426cc7
cmp al, 0xa0
je 0x426cc7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x426a20
jmp 0x426cc7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x426cc7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4268f4
mov al, byte [ecx]
cmp al, 9
je 0x426a8e
cmp al, 0x20
je 0x426a8e
cmp al, 0xa0
jne 0x426cc7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x426a70
jmp 0x426cc7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x426cc7
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4268f4
mov al, byte [ecx]
cmp al, 0xa
jb 0x426ad6
cmp al, 0xd
jbe 0x426cc7
cmp al, 0x85
je 0x426cc7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x426ab4
jmp 0x426cc7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x426cc7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4268f4
mov al, byte [ecx]
cmp al, 0xa
jb 0x426cc7
cmp al, 0xd
jbe 0x426b22
cmp al, 0x85
jne 0x426cc7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x426b00
jmp 0x426cc7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x426cc7
jmp 0x426b50
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4268f4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x426cc7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x426b50
jmp 0x426cc7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x426cc7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4268f4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x426cc7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x426b92
jmp 0x426cc7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x426cc7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4268f4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x426cc7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x426bd4
jmp 0x426cc7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x426cc7
jmp 0x426c20
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4268f4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x426cc7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x426c20
jmp 0x426cc7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x426cc7
jmp 0x426c60
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4268f4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x426cc7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x426c60
jmp 0x426cc7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x426cc7
jmp 0x426ca0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4268f4
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x426cc7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x426ca0
cmp dword [esp + 0x80], 0
je 0x427d2a
jmp 0x41d48a
mov esi, dword [esi]
test esi, esi
je 0x42b1a1
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.0x426d04
jmp dword [eax*4 + 0x42b6dc]
cmp edi, 0xfffffc1b
je 0x426dd6
cmp edi, 0xfffffc20
jne 0x426d53
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.0x426d04.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x426d4f
cmp byte [ecx], 0x77
jne case.0x426d04.49
xor edi, edi
jmp 0x426d5b
test edi, edi
jne case.0x426d04.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 0x426dd6
cmp dword [esi + 0x9c], 0x88
jb 0x426da1
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42ab2a
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42ab20
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
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 0x4271cc
mov edx, dword [esp + 0x8c]
jmp 0x426cf4
cmp edi, 0xfffffc20
jne 0x426e93
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 0x426ee1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x426e5e
cmp byte [ecx], 0x77
jne 0x426ee1
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 0x426ef7
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf4
test edi, edi
je 0x426e5e
cmp edi, 0xfffffc1b
jne 0x426ee1
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x426ed3
cmp al, 0x77
jne 0x426ec4
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 0x426eb0
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 0x4271cc
mov edx, dword [esp + 0x8c]
jmp 0x426cf4
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x426f49
cmp eax, 0x81
je 0x426f49
cmp dword [ebp + 0x6c], 0
jne 0x426f53
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 0x426f53
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x485f60]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x41d410
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 0x42ab4c
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42ab42
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
cmp edi, 1
jne 0x427013
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x426fb0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x426fc3
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 0x426ff9
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 0x426fe0
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x485f60]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x41d8be.145
test edi, edi
je 0x427023
cmp edi, 0xfffffc20
jne case.0x426d04.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x427039
movzx eax, byte [edx + 0x485f60]
jmp 0x42703c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x427059
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x41d491
cmp dword [esi + 0x9c], 0x8c
jne 0x41d410
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ab6e
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ab64
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
cmp edi, 1
je 0x427152
cmp edi, 0xfffffc19
je 0x427152
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x4270fa
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.0x426d04.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x427102
cmp byte [ecx], 0x77
jmp 0x4270fc
test edi, edi
jne case.0x426d04.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 0x427158
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ab87
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ab7d
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x427171
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf4
cmp dword [esi + 0x58], 0
je 0x42a7ae
mov esi, dword [esi]
test esi, esi
je 0x42b146
mov edi, 1
jmp 0x426cf4
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x42723d
je 0x4271d6
cmp edi, 0xfffffc19
je 0x427a73
cmp edi, 0xfffffc1b
jle case.0x426d04.49
cmp edi, 0xfffffc1f
jle 0x4271fe
mov esi, dword [esi]
test esi, esi
jne 0x426cf4
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 0x4271fe
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x427250
cmp byte [ecx], 0x77
je 0x427250
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 0x427201
cmp dword [esi + 0x58], 0
je 0x427487
mov esi, dword [esi]
test esi, esi
je 0x42b146
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x426cf4
mov eax, edi
sub eax, 0
je 0x427250
dec eax
je 0x427a73
jmp case.0x426d04.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 0x427218
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ab9d
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ab93
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call fcn.004120eb
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 0x42a7dc
cmp edi, 0xfffffc19
je 0x42a7dc
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x427309
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x41e28b
push ecx
call dword [0x421b65c]
add esp, 4
jmp 0x41e28b
test edi, edi
je 0x427333
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x427324
push ecx
call dword [0x421b65c]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x4271cc
jmp 0x426ce9
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 0x427399
cmp dword [esi + 0x58], 0
je 0x427364
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42abe3
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42abd9
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x4272e9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x4273f3
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ac31
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ac27
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x426cf4
cmp al, 0x88
jb 0x42a934
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ac53
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ac49
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x42b153
mov edi, 0xfffffc1b
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
mov edx, dword [esi + 0x2c]
jmp 0x427470
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 0x427470
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41d48a
test edi, edi
je 0x41ed04
jmp case.0x426d04.49
test edi, edi
je 0x42743f
jmp case.0x426d04.49
cmp edi, 0xfffffc1b
jne 0x4274bb
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x4274bd
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x4282ab
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ac75
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ac6b
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427530
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.0042b930
add esp, 0x14
test eax, eax
jns 0x427597
cmp eax, 0xfffffffe
jne 0x427559
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x429071
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x429071
cmp eax, dword [ebp + 0x84]
jbe 0x429071
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x4202ae
jmp 0x429071
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ac9a
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ac90
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x424416.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42acb3
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aca9
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427657
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x429156
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 0x429071
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42accc
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42acc2
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x41e28b
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ace5
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42acdb
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427731
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x429156
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x427761
cmp dword [esi + 0x94], ecx
je 0x427761
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf4
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42acfe
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42acf4
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
dec dword [esi + 8]
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ad17
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad0d
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427811
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x429156
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x429071
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ad30
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad26
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
dec dword [esi + 8]
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ad49
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad3f
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4278de
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x429156
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x427a73
cmp dword [esi + 0x94], ecx
je 0x427a73
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ad62
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad58
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ad7b
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad71
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4279b5
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x429156
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x429071
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ad91
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad87
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ada7
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ad9d
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427a84
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf4
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x427acb
cmp dword [ebp + 0x88], 0
je 0x427ab3
cmp ecx, dword [ebp + 0x84]
jbe 0x427ab3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x4202ae
mov esi, dword [esi]
test esi, esi
je 0x42b108
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x426cf4
cmp dword [esi + 0x7c], 0xc
jne 0x427af2
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x427b14
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x427b31
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.0x427b0d.15
jmp dword [eax*4 + 0x42b7e8]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x427af2
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x427af2
cmp edi, 1
je 0x427b31
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x427af2
mov esi, dword [esi]
test esi, esi
je 0x42b108
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x426cf4
cmp dword [ebp + 0x88], 0
je case.0x427b0d.13
cmp edx, dword [ebp + 0x78]
jb case.0x427b0d.13
cmp dword [ebp + 0x18], 0
jne case.0x427b0d.13
cmp dword [ebp + 0x1c], 2
jne case.0x427b0d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x427b0d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x4202ae
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42adbd
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42adb3
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x427bcd.14
movzx eax, byte [ecx + 0x42b838]
jmp dword [eax*4 + 0x42b828]
cmp edx, dword [ebp + 0x78]
jae case.0x427b0d.13
cmp byte [edx], 0xa
jne case.0x427b0d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x427b0d.13
cmp dword [ebp + 0x68], 0
je case.0x427b0d.13
jmp case.0x427bcd.14
cmp ecx, 9
je case.0x427bcd.14
cmp ecx, 0x20
je case.0x427bcd.14
cmp ecx, 0xa0
jmp 0x427cca
cmp ecx, 9
je case.0x427b0d.13
cmp ecx, 0x20
je case.0x427b0d.13
cmp ecx, 0xa0
je case.0x427b0d.13
jmp case.0x427bcd.14
cmp ecx, 0xa
jb case.0x427b0d.13
cmp ecx, 0xd
jbe case.0x427bcd.14
cmp ecx, 0x85
jmp 0x427cca
cmp ecx, 0xa
jb case.0x427bcd.14
cmp ecx, 0xd
jbe case.0x427b0d.13
cmp ecx, 0x85
je case.0x427b0d.13
jmp case.0x427bcd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x427b0d.13
jmp case.0x427bcd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x427cca
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x427b0d.13
jmp case.0x427bcd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x427cca
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x427b0d.13
mov esi, dword [esi]
test esi, esi
je 0x42b108
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x426cf4
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x427b0d.13
mov esi, dword [esi]
test esi, esi
je 0x42b108
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x426cf4
mov esi, dword [esi]
test esi, esi
je case.default.0x426d04
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x427d2a
cmp eax, dword [esi + 0x30]
jbe 0x427d2a
cmp byte [eax], 0xa
jne 0x427d2a
cmp byte [eax - 1], 0xd
jne 0x427d2a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42add3
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42adc9
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
cmp edi, 0xfffffc1a
jne 0x427dc1
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 0x427db9
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 0x427da0
jmp 0x427e18
mov dword [esi + 8], eax
jmp 0x427e3d
cmp edi, 0xfffffc20
jne 0x427df5
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.0x426d04.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x427dfd
cmp byte [ecx], 0x77
jmp 0x427df7
test edi, edi
jne case.0x426d04.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 0x427e31
cmp dword [esi + 0x5c], 0
jne 0x427487
cmp dword [esi + 0x54], 0
jne 0x427487
jmp 0x429071
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x427e53
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42ae15
push 0x134
call dword [0x421b660]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42ae0b
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
mov esi, dword [esi]
test edi, edi
jne 0x4271c4
test esi, esi
je 0x42b16d
mov edi, 0xfffffc1c
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x42b187
mov edi, 0xfffffc1e
jmp 0x426cf4
cmp edi, 1
je 0x427ed3
cmp edi, 0xfffffc19
jne 0x427eed
cmp dword [ebp + 0xac], 0
jne 0x427eed
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x426ee1
cmp edi, 0xfffffc1f
jne 0x426ee1
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x427f22
test dl, dl
je 0x427f1e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x427f22
add eax, 2
add ecx, 2
test dl, dl
jne 0x427f02
xor eax, eax
jmp 0x427f27
sbb eax, eax
or eax, 1
test eax, eax
jne 0x426ee1
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x42b187
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x426cf4
cmp edi, 1
je 0x427f5d
cmp edi, 0xfffffc19
jne case.0x426d04.51
cmp dword [ebp + 0xac], 0
jne case.0x426d04.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x4271c4
test esi, esi
je 0x42b160
mov edi, 0xfffffc1d
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x42b194
mov edi, 0xfffffc1f
jmp 0x426cf4
cmp edi, 1
je 0x427fc0
cmp edi, 0xfffffc19
jne case.0x426d04.54
cmp dword [ebp + 0xac], 0
jne case.0x426d04.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x42b17a
mov edi, 0xfffffc20
jmp 0x426cf4
cmp edi, 0xfffffc1a
jne 0x428061
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 0x428059
mov edx, dword [esi + 0xc]
jmp 0x428040
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 0x428040
jmp 0x4280c8
mov dword [esi + 8], eax
jmp 0x41dfc2
cmp edi, 0xfffffc20
jne 0x428095
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.0x426d04.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42809d
cmp byte [ecx], 0x77
jmp 0x428097
test edi, edi
jne case.0x426d04.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 0x41dfc2
cmp dword [esi + 0x5c], 0
jne 0x428108
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 0x41d486
cmp dword [esi + 0x5c], 0
jne 0x41d486
jmp 0x429071
cmp edi, 1
jne 0x4281c4
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x428141
cmp al, 0x77
jne 0x429071
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 0x428141
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 0x41d486
cmp ecx, dword [esi + 0x38]
je 0x41d486
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x42825d
test ecx, ecx
jne 0x42ae7e
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ae74
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x426cf4
cmp edi, 0xfffffc20
jne 0x4281f8
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.0x426d04.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x428200
cmp byte [ecx], 0x77
jmp 0x4281fa
test edi, edi
jne case.0x426d04.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 0x428130
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42ae59
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ae4f
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test ecx, ecx
jne 0x42aea3
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42ae99
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x426cf4
test edi, edi
je 0x42a934
jmp case.0x426d04.49
test edi, edi
jne case.0x426d04.49
add dword [esi + 0xc], 3
jmp 0x41d410
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4282d9
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4283da
cmp ebx, 0xc0
jb 0x4283da
test bl, 0x20
jne 0x42831b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4283d7
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428345
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4283da
mov edx, dword [esi + 8]
test bl, 8
jne 0x42836b
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 0x4283ce
test bl, 4
jne 0x42839a
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 0x4283ce
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.0042cbb0
add esp, 0xc
test eax, eax
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aec5
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aebb
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x429071
cmp dword [esp + 0x8c], edi
je 0x428461
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x428461
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x428455
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aede
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aed4
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4284bb
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x4285b0
test bl, 0x20
jne 0x4284f5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4285ad
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42851f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4285b0
mov edx, dword [esi + 8]
test bl, 8
jne 0x428548
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 0x4285ab
test bl, 4
jne 0x428577
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 0x4285ab
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 0x4285c6
cmp dword [esi + 0x9c], 0x6e
jne 0x4285e3
jmp 0x41e28b
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 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aef7
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42aeed
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x41e28b
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42864c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x428640
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42af10
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af06
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4286a6
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
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 0x428715
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x4286d5
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x4286da
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4286c4
cmp edi, 0xfffffffc
je 0x428707
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x428712
cmp edi, 0xfffffffd
je 0x428707
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x428712
cmp edi, 0xfffffffe
je 0x428707
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x428712
cmp edi, 0xffffffff
je 0x428707
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x428712
mov eax, dword [esi + 0x88]
jmp 0x428780
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x4287c0
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x4287c0
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x428747
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42874c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x428736
cmp edi, 0xfffffffc
je 0x42877d
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4287c0
cmp edi, 0xfffffffd
je 0x42877d
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4287c0
cmp edi, 0xfffffffe
je 0x42877d
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4287c0
cmp edi, 0xffffffff
je 0x42877d
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4287c0
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 0x42af29
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af1f
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
cmp dword [ebp + 0x88], 0
je case.0x424416.14
cmp ebx, dword [ebp + 0x78]
jb case.0x424416.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x424416.14
jmp 0x41e3e2
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42880c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x428800
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42af42
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af38
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428872
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x428972
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4288ac
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42896f
test dl, 0x10
jne 0x4288ce
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 0x428972
mov ecx, dword [esi + 8]
test dl, 8
jne 0x4288fe
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 0x42896f
test dl, 4
jne 0x428934
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 0x42896f
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 0x427b31
cmp dword [esi + 0x94], edx
je 0x427b31
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4289b9
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4275c5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x42addd
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4289ec
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4289e0
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42af5b
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af51
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428a52
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x428b47
test bl, 0x20
jne 0x428a8c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x428b44
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428ab6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x428b47
mov edx, dword [esi + 8]
test bl, 8
jne 0x428adf
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 0x428b42
test bl, 4
jne 0x428b0e
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 0x428b42
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 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42af74
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af6a
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x428bb0
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x428ba4
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42af8d
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af83
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x428c16
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x428c52
cmp dword [ebp + 0x88], 0
je 0x429071
cmp ecx, dword [ebp + 0x84]
jbe 0x429071
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x4202ae
jmp 0x429071
cmp dword [esi + 0x7c], 0xc
jne 0x428ca4
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x428c7f
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042d220
add esp, 0x14
test eax, eax
jne 0x429071
jmp 0x428ca4
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x428ca4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x428ca4
cmp edi, 1
je 0x429071
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x429071
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x428d8c
test dl, 0x20
jne 0x428cd7
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x428d89
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x428cfe
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x428d87
test dl, 8
jne 0x428d24
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 0x428d87
test dl, 4
jne 0x428d53
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 0x428d87
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.0x428d9b.15
jmp dword [eax*4 + 0x42b8b4]
cmp dword [ebp + 0x88], 0
je case.0x428d9b.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x428d9b.13
cmp dword [ebp + 0x18], 0
jne case.0x428d9b.13
cmp dword [ebp + 0x1c], 2
jne case.0x428d9b.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x428d9b.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x428d9b.13
jmp 0x4202ae
cmp edx, 0xd
ja 0x428e1e
je 0x428e0b
cmp edx, 0xa
je case.0x428d9b.13
jbe 0x429071
cmp edx, 0xc
jmp 0x428e38
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x428d9b.13
cmp byte [eax], 0xa
jne case.0x428d9b.13
inc eax
mov dword [esi + 8], eax
jmp case.0x428d9b.13
cmp edx, 0x85
je 0x428e3e
cmp edx, 0x2027
jbe 0x429071
cmp edx, 0x2029
ja 0x429071
cmp dword [ebp + 0x68], 0
je case.0x428d9b.13
jmp 0x429071
cmp edx, 0x180e
ja 0x428ebd
je 0x429071
cmp edx, 0xa0
ja 0x428eb5
je 0x429071
cmp edx, 9
je 0x429071
cmp edx, 0x20
je 0x429071
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428ea6
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4275c5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x42addd
cmp edx, 0x1680
jmp 0x428e71
cmp edx, 0x205f
ja 0x428ee7
je 0x429071
cmp edx, 0x2000
jb case.0x428d9b.13
cmp edx, 0x200a
jbe 0x429071
cmp edx, 0x202f
jmp 0x428e71
cmp edx, 0x3000
jmp 0x42906b
cmp edx, 0x180e
ja 0x428f24
je case.0x428d9b.13
cmp edx, 0xa0
ja 0x428f1c
je case.0x428d9b.13
cmp edx, 9
je case.0x428d9b.13
cmp edx, 0x20
jmp 0x428f58
cmp edx, 0x1680
jmp 0x428f58
cmp edx, 0x205f
ja 0x428f52
je case.0x428d9b.13
cmp edx, 0x2000
jb 0x429071
cmp edx, 0x200a
jbe case.0x428d9b.13
cmp edx, 0x202f
jmp 0x428f58
cmp edx, 0x3000
je case.0x428d9b.13
jmp 0x429071
cmp edx, 0x85
ja 0x428f88
je 0x429071
cmp edx, 0xa
jb case.0x428d9b.13
cmp edx, 0xd
jbe 0x429071
jmp case.0x428d9b.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x428d9b.13
jmp 0x429071
cmp edx, 0x85
ja 0x428fb8
je case.0x428d9b.13
cmp edx, 0xa
jb 0x429071
cmp edx, 0xd
jmp 0x428fc1
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x428d9b.13
jmp 0x429071
cmp edx, 0x100
jae case.0x428d9b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x428d9b.13
jmp 0x429071
cmp edx, 0x100
jae 0x429071
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x42906b
cmp edx, 0x100
jae case.0x428d9b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x428d9b.13
jmp 0x429071
cmp edx, 0x100
jae 0x429071
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x42906b
cmp edx, 0x100
jae case.0x428d9b.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x428d9b.13
mov esi, dword [esi]
test esi, esi
je 0x42b108
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x426cf4
cmp edx, 0x100
jae 0x429071
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x428d9b.13
mov esi, dword [esi]
test esi, esi
je 0x42b108
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x426cf4
mov esi, dword [esi]
test esi, esi
je case.default.0x426d04
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x426cf4
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4290cc
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4290c0
cmp dword [esi + 0x7c], 0x11
jne 0x4290e8
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x4290e8
cmp byte [eax], 0xa
jne 0x4290e8
dec eax
cmp byte [eax], 0xd
jne 0x4290e8
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42afa6
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42af9c
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42914e
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42916e
cmp dword [ebp + 0x88], 0
je 0x427a73
cmp eax, dword [ebp + 0x84]
jmp 0x4298c9
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x4291ad
cmp ecx, 0xc0
jb 0x4291ad
test cl, 0x20
jne 0x429189
inc eax
jmp 0x4291aa
test cl, 0x10
jne 0x429193
add eax, 2
jmp 0x4291aa
test cl, 8
jne 0x42919d
add eax, 3
jmp 0x4291aa
test cl, 4
jne 0x4291a7
add eax, 4
jmp 0x4291aa
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x4291c4
mov esi, dword [esi]
test esi, esi
je 0x42b108
xor edi, edi
jmp 0x426cf4
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4291f3
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4275c5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x42addd
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x429227
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x429321
cmp ebx, 0xc0
jb 0x429321
test bl, 0x20
jne 0x429269
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42931e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x429293
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x429321
mov edx, dword [esi + 8]
test bl, 8
jne 0x4292b9
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 0x42931c
test bl, 4
jne 0x4292e8
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 0x42931c
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x429343
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp eax, 9
je 0x429368
cmp eax, 5
je 0x429368
cmp eax, 8
je 0x429368
xor eax, eax
jmp 0x42936d
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42afbf
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42afb5
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4293d6
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4294cc
cmp ebx, 0xc0
jb 0x4294cc
test bl, 0x20
jne 0x429418
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4294c9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x429440
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4294cc
mov edx, dword [esi + 8]
test bl, 8
jne 0x429466
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 0x4294c9
test bl, 4
jne 0x429495
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 0x4294c9
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x4294ee
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42afd8
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42afce
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x429578
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42966e
cmp ebx, 0xc0
jb 0x42966e
test bl, 0x20
jne 0x4295ba
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42966b
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4295e2
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42966e
mov edx, dword [esi + 8]
test bl, 8
jne 0x429608
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 0x42966b
test bl, 4
jne 0x429637
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 0x42966b
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x429690
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42aff1
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42afe7
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x429713
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x429809
cmp ebx, 0xc0
jb 0x429809
test bl, 0x20
jne 0x429755
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x429806
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42977d
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x429809
mov edx, dword [esi + 8]
test bl, 8
jne 0x4297a3
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 0x429806
test bl, 4
jne 0x4297d2
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 0x429806
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x42982b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486268]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b00a
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b000
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4298ae
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x4298f7
cmp dword [ebp + 0x88], 0
je 0x427a73
cmp edi, dword [ebp + 0x84]
jbe 0x427a73
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x427a73
mov esi, dword [esi]
test esi, esi
je 0x42b12c
mov edi, 0xfffffff4
jmp 0x426cf4
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4299e5
cmp ebx, 0xc0
jb 0x4299e5
test bl, 0x20
jne 0x42992d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4299e2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x429957
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4299e5
mov edx, dword [esi + 8]
test bl, 8
jne 0x42997d
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 0x4299e0
test bl, 4
jne 0x4299ac
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 0x4299e0
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x429a07
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x48626a]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x429b98
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x429b37
cmp ebx, 0xc0
jb 0x429b37
test bl, 0x20
jne 0x429a6b
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x429b2f
test bl, 0x10
jne 0x429a90
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 0x429b2f
test bl, 8
jne 0x429ac1
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 0x429b2f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x429afb
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 0x429b2f
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x429b59
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx ecx, byte [eax*8 + 0x48626a]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4860f0], eax
je 0x429b98
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x429a30
cmp dword [ebp + 0x88], 0
je 0x429bc5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x429bc5
cmp eax, dword [ebp + 0x84]
jbe 0x429bc5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41e3f6
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b023
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b019
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x429c2c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x429c2c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x429c20
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41d410
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b03c
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b032
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x429c87
movzx ebx, byte [ecx]
jmp 0x429d75
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x429c9c
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x429c90
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x429d75
test bl, 0x20
jne 0x429cbf
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x429d6d
test bl, 0x10
jne 0x429cdf
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 0x429d6d
test bl, 8
jne 0x429d08
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 0x429d6d
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x429d3d
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 0x429d6d
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x429d97
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x48626a]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x41d410
dec edi
cmp dword [esp + 0x8c], 0
jne 0x429dcf
movzx ebx, byte [edi]
jmp 0x429e8e
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x429de1
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x429dd7
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x429e8e
test bl, 0x20
jne 0x429e01
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x429e86
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x429e1e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x429e86
and eax, 0x3f
test bl, 8
jne 0x429e39
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x429e86
test bl, 4
jne 0x429e5d
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 0x429e86
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x429eb0
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx edx, byte [eax*8 + 0x48626a]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4860f0], eax
je 0x425ae6
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x429db0
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x429f11
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42a00b
cmp ebx, 0xc0
jb 0x42a00b
test bl, 0x20
jne 0x429f53
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42a008
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x429f7d
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42a00b
mov edx, dword [esi + 8]
test bl, 8
jne 0x429fa3
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 0x42a006
test bl, 4
jne 0x429fd2
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 0x42a006
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 + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x42a02d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x42a054
cmp eax, 3
je 0x42a054
xor eax, eax
jmp 0x42a059
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b06e
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b064
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42a0c2
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42a1c3
cmp ebx, 0xc0
jb 0x42a1c3
test bl, 0x20
jne 0x42a104
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42a1c0
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42a12e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42a1c3
mov edx, dword [esi + 8]
test bl, 8
jne 0x42a154
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 0x42a1b7
test bl, 4
jne 0x42a183
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 0x42a1b7
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 0x42a1ee
cmp ebx, 0x40
je 0x42a1ee
cmp ebx, 0x60
je 0x42a1ee
cmp ebx, 0xa0
jb 0x42a1e2
cmp ebx, 0xd7ff
jbe 0x42a1ee
cmp ebx, 0xe000
jae 0x42a1ee
xor eax, eax
jmp 0x42a1f3
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41ebd2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b087
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b07d
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42a25c
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42a35d
cmp ebx, 0xc0
jb 0x42a35d
test bl, 0x20
jne 0x42a29e
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42a35a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42a2c8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x42a35d
mov edx, dword [esi + 8]
test bl, 8
jne 0x42a2ee
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 0x42a351
test bl, 4
jne 0x42a31d
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 0x42a351
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 0x42a3a0
je case.0x42a3c0.8192
cmp ebx, 0x85
ja 0x42a38c
je case.0x42a3c0.8192
cmp ebx, 9
jb case.0x42a3c0.8203
cmp ebx, 0xd
jbe case.0x42a3c0.8192
cmp ebx, 0x20
jmp 0x42a3d5
cmp ebx, 0xa0
je case.0x42a3c0.8192
cmp ebx, 0x1680
jmp 0x42a3d5
cmp ebx, 0x202f
ja 0x42a3c7
je case.0x42a3c0.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x42a3c0.8203
movzx eax, byte [eax + 0x42b8fc]
jmp dword [eax*4 + 0x42b8f4]
cmp ebx, 0x205f
je case.0x42a3c0.8192
cmp ebx, 0x3000
je case.0x42a3c0.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4878e8]
shl eax, 7
and ebx, 0x8000007f
jns 0x42a3f9
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
cmp dword [eax*4 + 0x486078], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x42a42c
jmp 0x41e28b
cmp dword [esi + 0x68], 0
jne 0x41ebd2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b0a0
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b096
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42a48c
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42a582
cmp ebx, 0xc0
jb 0x42a582
test bl, 0x20
jne 0x42a4ce
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42a57f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42a4f6
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42a582
mov edx, dword [esi + 8]
test bl, 8
jne 0x42a51c
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 0x42a57f
test bl, 4
jne 0x42a54b
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 0x42a57f
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 + 0x4878e8]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x42a5a5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x489ae8]
movzx eax, byte [eax*8 + 0x486269]
mov eax, dword [eax*4 + 0x486078]
cmp eax, 1
je 0x42a5d1
cmp eax, 3
je 0x42a5d1
cmp ebx, 0x5f
je 0x42a5d1
xor eax, eax
jmp 0x42a5d6
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41e28b
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b0b9
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b0af
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
test edi, edi
jne case.0x426d04.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42a63f
mov esi, dword [esi]
test esi, esi
je 0x42b108
jmp 0x426cf4
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4298b6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42a73c
cmp ebx, 0xc0
jb 0x42a73c
test bl, 0x20
jne 0x42a681
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42a739
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42a6a9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42a73c
mov edx, dword [esi + 8]
test bl, 8
jne 0x42a6cf
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 0x42a732
test bl, 4
jne 0x42a6fe
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 0x42a732
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 + 0x486128]
lea eax, [eax*4 + 0x486128]
cmp ebx, ecx
jb 0x42a75e
lea eax, [eax + 4]
cmp ebx, ecx
je 0x42a7a3
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x42a751
cmp dword [esi + 0x68], 0
je 0x41ebd2
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42b0d2
push 0x134
call dword [0x421b660]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42b0c8
mov esi, dword [esi]
test esi, esi
je 0x42b0fb
lea edi, [eax - 6]
jmp 0x426ce9
cmp dword [esi + 0x68], 0
je 0x42a768
jmp 0x41ebd2
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 0x42a7b1
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x41d48a
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x42a7f3
push ecx
call dword [0x421b65c]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x41d48a
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4285e9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4283f5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42878b
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x428990
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x428b59
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4291ca
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42937c
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42951e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4296b9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x429854
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42a068
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42a432
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42a5e5
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42a76e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42a202
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x428e7d
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x429bcb
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x41d410
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 + 0x485f60]
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 0x41d400
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 0x42abf6
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 0x42abf6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x42a94f
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 0x42abf6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x42a94f
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 0x42abf6
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x42a94f
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 0x41d400
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 0x42ade6
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 0x42ade6
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 0x42ade6
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 0x42ade6
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 0x42ade6
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 0x42abf6
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 0x42abf6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x42aba7
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 0x41d400
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 + 0x485f60]
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 0x41d400
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 0x42ade6
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 0x42ade6
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 0x42ade6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x42addd
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 0x41d400
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 0x42abf6
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 0x42abf6
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 0x42ade6
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 0x42ade6
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 0x42ade6
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x42addd
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x42addd
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