Function at 0x41aee0
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 0x41af6e
mov esi, dword [esi]
test esi, esi
je 0x428c11
mov edi, 0xfffffff8
jmp 0x424819
mov eax, dword [esi + 0x1c]
cmp eax, dword [ebp + 8]
jb 0x41af8a
mov esi, dword [esi]
test esi, esi
je 0x428c1e
mov edi, 0xffffffeb
jmp 0x424819
cmp dword [ebp + 0x98], 2
jne 0x41afc1
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 0x41afc1
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.0x41aff4.98
movzx eax, byte [edx + 0x428e2c]
jmp dword [eax*4 + 0x428ce0]
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 0x428475
push 0x134
call dword [0x51f380]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42846f
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov edx, dword [esi + 4]
test edx, edx
jne 0x4284c5
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4284bf
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov edx, dword [esi + 4]
test edx, edx
jne 0x4284e3
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x4284dd
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x428501
push 0x134
call dword [0x51f380]
mov edi, eax
add esp, 4
test edi, edi
jne 0x4284fb
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov edx, dword [esi + 4]
test edx, edx
jne 0x428516
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x428510
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
inc dword [ebp + 0x28]
mov eax, dword [ebp + 0x28]
cmp eax, dword [ebp + 0x2c]
ja 0x41b14e
mov ecx, dword [esi + 0xc]
movzx eax, byte [ecx]
movzx edx, byte [eax + 0x4dccb8]
movzx eax, byte [ecx + 1]
add edx, eax
add dword [esi + 0xc], edx
jmp 0x41afc1
mov edi, dword [esi + 4]
test edi, edi
jne 0x428534
push 0x134
call dword [0x51f380]
mov edi, eax
add esp, 4
test edi, edi
jne 0x42852e
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov edx, dword [esi + 4]
test edx, edx
jne 0x428549
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x428543
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x428567
push 0x134
call dword [0x51f380]
mov edi, eax
add esp, 4
test edi, edi
jne 0x428561
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x425d58
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.0x41aff4.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 0x4248bb
mov dword [esi + 0x54], ebx
jmp 0x41ba5f
mov dword [esi + 0x54], ebx
jmp 0x41ba83
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 0x41b3c8
mov edi, dword [0x521e04]
test edi, edi
je 0x41b3b4
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 0x41b36e
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 0x41b3a3
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
jns 0x41b3b4
mov esi, dword [esi]
test esi, esi
je 0x424cfc
jmp 0x424819
movzx eax, byte [0x4dcd2e]
add dword [esi + 0xc], eax
movzx eax, byte [0x4dcd2e]
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.0x41b3ee.146
movzx eax, byte [eax + 0x428ee8]
jmp dword [eax*4 + 0x428ed0]
mov edi, dword [ebp + 0xa4]
test edi, edi
je case.0x41b3ee.145
movzx edx, byte [ecx + 1]
movzx eax, byte [ecx + 2]
shl edx, 8
or edx, eax
cmp edx, 0xffff
je 0x41b427
cmp edx, dword [edi + 4]
je 0x41b427
xor eax, eax
mov dword [esi + 0x58], eax
jmp 0x424b53
mov eax, 1
mov dword [esi + 0x58], eax
jmp 0x424b53
cmp dword [ebp + 0xa4], ebx
je case.0x41b3ee.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.0x41b3ee.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 0x424b53
add edi, dword [ebp + 0x24]
test ebx, ebx
jg 0x41b470
jmp 0x424b53
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 0x41b4d4
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jl 0x41b4d4
mov eax, 1
mov dword [esi + 0x58], eax
jmp case.0x41b3ee.145
xor eax, eax
mov dword [esi + 0x58], eax
jmp case.0x41b3ee.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 0x424b53
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 0x41b529
mov eax, dword [ebp + 0xc]
cmp dword [eax + ecx*4], ebx
jge 0x41b538
mov dword [esi + 0x58], ebx
add edx, dword [ebp + 0x24]
test edi, edi
jg 0x41b507
jmp 0x424b53
mov dword [esi + 0x58], 1
jmp 0x424b53
mov dword [ebp + 0x98], 1
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42857c
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428576
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x41b5d4
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41afb6
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 0x41afb6
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41b623
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 0x41afb6
mov edi, dword [esi + 8]
mov ecx, dword [esi + 0x10]
cmp edi, ecx
jne 0x41b676
cmp edx, 0x9f
je 0x41b676
cmp dword [ebp + 0xa4], ebx
jne 0x41b676
cmp dword [ebp + 0x5c], ebx
jne 0x41b665
cmp dword [ebp + 0x60], ebx
je 0x41b676
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp ecx, eax
jne 0x41b676
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
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 0x424cfc
jmp 0x424819
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41b6cf
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x424c4d
mov dword [esi + 0x58], ebx
jmp 0x424c4d
mov eax, dword [ebp + 0xac]
mov dword [esi + 0x28], eax
cmp dword [ebp + 0x98], 1
jne 0x41b6fb
mov dword [esi + 0x58], 1
mov dword [ebp + 0x98], ebx
jmp 0x424d9b
mov dword [esi + 0x58], ebx
jmp 0x424d9b
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0xc]
test edx, edx
je 0x41b762
movzx edx, byte [eax + 1]
movzx eax, byte [eax + 2]
shl edx, 8
or edx, eax
jle 0x41b748
dec dword [esi + 8]
dec edx
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x74]
jb case.0x421f46.14
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41b744
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x41b738
test edx, edx
jg 0x41b720
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jae 0x41afb6
mov dword [ebp + 0x84], eax
jmp 0x41afb6
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 0x41b748
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424820
mov edi, dword [0x521e04]
test edi, edi
je 0x41b86c
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 0x41b826
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 0x41b85b
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
jns 0x41b86c
mov esi, dword [esi]
test esi, esi
je 0x424cfc
jmp 0x424819
add dword [esi + 0xc], 6
jmp 0x41afba
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 0x41b896
xor edx, edx
jmp 0x41b8a3
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 0x41b8c3
lea ecx, [ecx]
cmp edx, dword [ecx + 4]
jne 0x41b8bd
mov eax, dword [esi + 8]
cmp eax, dword [ecx + 0x14]
je 0x41b924
mov ecx, dword [ecx]
test ecx, ecx
jne 0x41b8b0
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 0x41b938
lea eax, [esi + 0xb0]
mov dword [esi + 0x44], eax
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [ebp + 0xc]
push dword [esi + 0x44]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x20]
add esp, 0xc
cmp byte [eax], 0x88
sbb eax, eax
inc eax
mov dword [esi + 0x58], eax
jmp 0x424e84
mov esi, dword [esi]
test esi, esi
je 0x428c42
mov edi, 0xffffffe6
jmp 0x424819
shl eax, 2
push eax
call dword [0x51f378]
add esp, 4
mov dword [esi + 0x44], eax
test eax, eax
jne 0x41b8fe
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x41b961
jmp 0x41afc1
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0x2c], eax
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4285b7
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4285b1
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x41b9c0
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4285d5
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4285cf
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x41ba13
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41afc1
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 0x41ba5f
cmp eax, 0x8b
jne 0x41ba83
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 0x41baa0
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 0x42596d
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 0x41bb1d
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x428967
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42895d
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x41bb78
cmp al, 0x81
je 0x41bb78
mov dword [esi + 0x38], ebx
jmp 0x41bb89
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 0x41bb96
cmp al, 0x80
jbe 0x41bb9a
cmp al, 0x82
jne 0x41bbc6
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 0x428c76
mov edi, 1
jmp 0x424819
cmp al, 0x85
je 0x41bbda
cmp al, 0x8a
je 0x41bbda
cmp al, 0x86
je 0x41bbda
cmp al, 0x8b
jne 0x41bca1
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 0x41bc16
mov eax, dword [eax + 4]
cmp eax, dword [esi + 0x94]
jne 0x41bc16
mov eax, dword [esi + 8]
mov dword [ebp + 0x80], eax
jmp 0x41bbac
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 0x41bc45
or eax, 0x10000
mov dword [ebp + 0x90], eax
jmp 0x41bca1
mov edx, dword [esi + 0x14]
cmp ecx, edx
jle 0x41bc65
mov eax, dword [ebp + 0xc]
lea edi, [eax + edx*4]
lea ecx, [eax + ecx*4]
cmp edi, ecx
jae 0x41bc65
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 0x41bca1
add eax, 2
mov dword [esi + 0x14], eax
mov edx, dword [esi + 0xc]
mov cl, byte [edx]
cmp cl, 0x7b
jne 0x41bcd7
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 0x428c4f
mov edi, 0xfffffc1a
jmp 0x424819
cmp cl, 0x78
je 0x41bd50
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x38]
je 0x41bd50
cmp cl, 0x7a
mov ecx, dword [esi + 4]
jne 0x41bd1e
test ecx, ecx
jne 0x4285f6
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4285f0
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test ecx, ecx
jne 0x428617
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428611
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x424fb7
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428635
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42862f
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
cmp dword [ebp + 0x44], ebx
je case.0x41aff4.1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne case.0x41aff4.1
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
je 0x41be78
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
cmp dword [ebp + 0x44], ebx
je 0x41bdea
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41bdea
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x74]
cmp ecx, edx
je 0x41c834
cmp ecx, dword [ebp + 0x78]
je 0x41be50
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x41be28
cmp ecx, edx
jbe 0x41be50
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042aea0
add esp, 0x14
test eax, eax
jne 0x41c834
jmp 0x41be50
mov edi, dword [ebp + 0x1c]
lea eax, [edi + edx]
cmp ecx, eax
jb 0x41be50
sub ecx, edi
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41be50
cmp edi, 1
je 0x41c834
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41c834
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424819
mov eax, dword [ebp + 0x94]
add eax, dword [ebp + 0x74]
cmp dword [esi + 8], eax
jmp 0x41bdb5
mov eax, dword [esi + 8]
mov dword [esi + 0x10], eax
inc dword [esi + 0xc]
jmp 0x41afc1
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41bf3a
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41beb5
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x41c834
jmp 0x41bed9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41bed9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41bed9
cmp edx, 1
je 0x41c834
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41c834
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb case.0x421f46.14
cmp dword [ebp + 0x18], ebx
jne case.0x421f46.14
cmp dword [edi], 2
jne case.0x421f46.14
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne case.0x421f46.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x421f46.14
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424819
cmp dword [ebp + 0x48], ebx
jne 0x41bdbb
cmp dword [ebp + 0x88], ebx
je 0x41c834
cmp ecx, dword [ebp + 0x84]
jbe 0x41c834
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41c834
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424819
cmp dword [ebp + 0x48], ebx
jne 0x41bdbb
cmp dword [ebp + 0x58], ebx
je case.0x41aff4.23
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41bdbb
cmp dword [ebp + 0x88], ebx
je 0x41be78
cmp eax, dword [ebp + 0x84]
jbe 0x41be78
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41be78
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424819
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41c045
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x41c00d
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x41c035
jmp 0x41bed9
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x41bed9
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41bed9
cmp edx, 1
je 0x41c035
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x41bed9
mov eax, dword [ebp + 0x78]
sub eax, dword [edi]
mov ecx, dword [esi + 8]
cmp ecx, eax
jne 0x41bed9
cmp dword [ebp + 0x88], ebx
je 0x41c834
cmp ecx, dword [ebp + 0x84]
jbe 0x41c834
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41c834
jmp 0x41bf26
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41c347
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x74]
jne 0x41c095
mov dword [esi + 0x5c], ebx
jmp 0x41c1ce
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
jne 0x41c0aa
nop
mov al, byte [edx - 1]
dec edx
and al, 0xc0
cmp al, 0x80
je 0x41c0a0
cmp edx, dword [ebp + 0x84]
jae 0x41c0b8
mov dword [ebp + 0x84], edx
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41c16c
test bl, 0x20
jne 0x41c0e0
movzx eax, byte [edx + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
jmp 0x41c16c
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41c0fa
and ebx, 0xf
shl ebx, 6
or ecx, ebx
jmp 0x41c162
and eax, 0x3f
test bl, 8
jne 0x41c115
and ebx, 7
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
movzx eax, byte [edx + 3]
jmp 0x41c162
test bl, 4
jne 0x41c139
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 0x41c162
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 0x41c207
cmp ebx, 0x5f
jne 0x41c184
mov dword [esi + 0x5c], 1
jmp 0x41c1ce
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41c1a6
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x41c218
cmp eax, 3
je 0x41c218
xor eax, eax
mov dword [esi + 0x5c], eax
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jb 0x41c21f
cmp dword [ebp + 0x88], 0
je 0x41c1fb
cmp edx, dword [ebp + 0x84]
jbe 0x41c1fb
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
mov dword [esi + 0x54], 0
jmp 0x41c485
cmp ebx, 0x100
jae 0x41c1c9
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41c1c9
mov eax, 1
jmp 0x41c1cb
movzx ebx, byte [edx]
cmp ebx, 0xc0
jb 0x41c2c9
test bl, 0x20
jne 0x41c23f
movzx eax, byte [edx + 1]
and ebx, 0x1f
jmp 0x41c2c1
movzx ecx, byte [edx + 1]
movzx eax, byte [edx + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41c259
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x41c2c1
and eax, 0x3f
test bl, 8
jne 0x41c274
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edx + 3]
jmp 0x41c2c1
test bl, 4
jne 0x41c298
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 0x41c2c1
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 0x41c32c
cmp ebx, 0x5f
jne 0x41c2e0
mov dword [esi + 0x54], 1
jmp 0x41c485
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41c302
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x41c33d
cmp eax, 3
je 0x41c33d
xor eax, eax
jmp 0x41c482
cmp ebx, 0x100
jae 0x41c325
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41c325
mov eax, 1
jmp 0x41c482
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x74]
jne 0x41c357
mov dword [esi + 0x5c], ebx
jmp 0x41c3f2
cmp eax, dword [ebp + 0x84]
ja 0x41c366
dec eax
mov dword [ebp + 0x84], eax
mov eax, dword [esi + 8]
cmp dword [ebp + 0x54], ebx
je 0x41c3de
movzx ecx, byte [eax - 1]
cmp ecx, 0x5f
jne 0x41c380
mov dword [esi + 0x5c], 1
jmp 0x41c3f2
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ecx, 0x8000007f
jns 0x41c3a2
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x41c3d0
cmp eax, 3
je 0x41c3d0
mov edx, dword [esp + 0x8c]
xor eax, eax
jmp 0x41c3ef
mov edx, dword [esp + 0x8c]
mov eax, 1
jmp 0x41c3ef
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 0x41c433
cmp dword [ebp + 0x88], ebx
je 0x41c42e
cmp eax, dword [ebp + 0x84]
jbe 0x41c42e
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41c42e
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424820
mov dword [esi + 0x54], ebx
jmp 0x41c485
cmp dword [ebp + 0x54], ebx
je 0x41c472
movzx ecx, byte [eax]
cmp ecx, 0x5f
jne 0x41c449
mov dword [esi + 0x54], 1
jmp 0x41c485
mov eax, ecx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ecx, 0x8000007f
jns 0x41c46b
dec ecx
or ecx, 0xffffff80
inc ecx
add eax, ecx
jmp 0x41c304
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 0x41c4a0
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
sete cl
jmp 0x41c4a8
xor ecx, ecx
cmp eax, dword [esi + 0x5c]
setne cl
mov edi, dword [esp + 0x8c]
test ecx, ecx
je 0x41afc1
jmp 0x41bdbb
mov ecx, dword [ebp + 0x18]
test ecx, ecx
je 0x41c4ed
mov edx, dword [esi + 8]
mov edi, dword [ebp + 0x78]
cmp edx, edi
jae 0x41c518
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edi
push ecx
push edx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x41bdbb
jmp 0x41c518
mov eax, dword [ebp + 0x78]
mov edx, dword [ebp + 0x1c]
sub eax, edx
mov ecx, dword [esi + 8]
cmp ecx, eax
ja 0x41c518
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x41c518
cmp edx, 1
je 0x41bdbb
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x41bdbb
cmp dword [ebp + 0x88], ebx
je case.0x41aff4.13
mov eax, dword [ebp + 0x78]
mov ecx, dword [esi + 8]
dec eax
cmp ecx, eax
jne case.0x41aff4.13
cmp dword [ebp + 0x18], ebx
jne case.0x41aff4.13
cmp dword [ebp + 0x1c], 2
jne case.0x41aff4.13
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne case.0x41aff4.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41c576
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
cmp eax, dword [ebp + 0x84]
jbe case.0x421f46.14
jmp 0x41bf12
mov edi, dword [esp + 0x8c]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x41be78
cmp eax, dword [ebp + 0x78]
jae 0x41be78
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x41be78
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jb 0x41c592
inc dword [esi + 0xc]
jmp 0x41afc1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41c559
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41afc1
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x41c5ed
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
cmp edi, dword [ebp + 0x84]
jbe case.0x421f46.14
jmp 0x41bf12
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c6e9
cmp ebx, 0xc0
jb 0x41c6e9
test bl, 0x20
jne 0x41c62a
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c6e6
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c654
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c6e9
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c67a
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 0x41c6dd
test bl, 4
jne 0x41c6a9
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 0x41c6dd
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 0x41c834
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41c834
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424820
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c81b
cmp ebx, 0xc0
jb 0x41c81b
test bl, 0x20
jne 0x41c75c
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c818
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c786
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c81b
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c7ac
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 0x41c80f
test bl, 4
jne 0x41c7db
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 0x41c80f
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 0x41b77d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 4
je 0x41b77d
inc dword [esi + 0xc]
jmp 0x41afba
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41c944
cmp ebx, 0xc0
jb 0x41c944
test bl, 0x20
jne 0x41c885
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41c941
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c8af
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41c944
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c8d5
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 0x41c938
test bl, 4
jne 0x41c904
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 0x41c938
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 0x41c834
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
jmp 0x41c6fc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41ca64
cmp ebx, 0xc0
jb 0x41ca64
test bl, 0x20
jne 0x41c9a5
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ca61
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41c9cf
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41ca64
mov edx, dword [esi + 8]
test bl, 8
jne 0x41c9f5
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 0x41ca58
test bl, 4
jne 0x41ca24
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 0x41ca58
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 0x41b77d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 1
je 0x41b77d
inc dword [esi + 0xc]
jmp 0x41afba
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41cb8d
cmp ebx, 0xc0
jb 0x41cb8d
test bl, 0x20
jne 0x41cace
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41cb8a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41caf8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41cb8d
mov edx, dword [esi + 8]
test bl, 8
jne 0x41cb1e
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 0x41cb81
test bl, 4
jne 0x41cb4d
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 0x41cb81
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 0x41c834
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
jmp 0x41c6fc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41ccad
cmp ebx, 0xc0
jb 0x41ccad
test bl, 0x20
jne 0x41cbee
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41ccaa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41cc18
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41ccad
mov edx, dword [esi + 8]
test bl, 8
jne 0x41cc3e
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 0x41cca1
test bl, 4
jne 0x41cc6d
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 0x41cca1
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 0x41b77d
mov eax, dword [ebp + 0x40]
test byte [ebx + eax], 0x10
je 0x41b77d
inc dword [esi + 0xc]
jmp 0x41afba
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41cdd6
cmp ebx, 0xc0
jb 0x41cdd6
test bl, 0x20
jne 0x41cd17
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41cdd3
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41cd41
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41cdd6
mov edx, dword [esi + 8]
test bl, 8
jne 0x41cd67
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 0x41cdca
test bl, 4
jne 0x41cd96
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 0x41cdca
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 0x41ce4f
je 0x41cdf1
cmp ebx, 0xa
je 0x41c834
jbe 0x41c702
cmp ebx, 0xc
jmp 0x41ce69
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41ce3a
cmp dword [ebp + 0x88], 0
je 0x41c834
cmp eax, dword [ebp + 0x84]
jbe 0x41c834
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41c834
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424820
cmp byte [eax], 0xa
jne 0x41c834
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0xc]
jmp 0x41afba
cmp ebx, 0x85
je 0x41ce6f
cmp ebx, 0x2027
jbe 0x41c702
cmp ebx, 0x2029
ja 0x41c702
cmp dword [ebp + 0x68], 0
jmp 0x41c6fc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41cf80
cmp ebx, 0xc0
jb 0x41cf80
test bl, 0x20
jne 0x41cec1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41cf7d
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41ceeb
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41cf80
mov edx, dword [esi + 8]
test bl, 8
jne 0x41cf11
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 0x41cf74
test bl, 4
jne 0x41cf40
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 0x41cf74
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 0x41cfb8
je 0x41b77d
cmp ebx, 0xa0
ja 0x41cfad
je 0x41b77d
cmp ebx, 9
je 0x41b77d
cmp ebx, 0x20
jmp 0x41c82e
cmp ebx, 0x1680
jmp 0x41c82e
cmp ebx, 0x205f
ja 0x41cfe9
je 0x41b77d
cmp ebx, 0x2000
jb 0x41c834
cmp ebx, 0x200a
jbe 0x41b77d
cmp ebx, 0x202f
jmp 0x41c82e
cmp ebx, 0x3000
je 0x41b77d
inc dword [esi + 0xc]
jmp 0x41afba
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41d105
cmp ebx, 0xc0
jb 0x41d105
test bl, 0x20
jne 0x41d046
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41d102
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41d070
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41d105
mov edx, dword [esi + 8]
test bl, 8
jne 0x41d096
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 0x41d0f9
test bl, 4
jne 0x41d0c5
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 0x41d0f9
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 0x41d13d
je 0x41c834
cmp ebx, 0xa0
ja 0x41d132
je 0x41c834
cmp ebx, 9
je 0x41c834
cmp ebx, 0x20
jmp 0x41c6fc
cmp ebx, 0x1680
jmp 0x41c6fc
cmp ebx, 0x205f
ja 0x41d16e
je 0x41c834
cmp ebx, 0x2000
jb 0x41c702
cmp ebx, 0x200a
jbe 0x41c834
cmp ebx, 0x202f
jmp 0x41c6fc
cmp ebx, 0x3000
jmp 0x41c6fc
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41d281
cmp ebx, 0xc0
jb 0x41d281
test bl, 0x20
jne 0x41d1c2
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41d27e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41d1ec
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41d281
mov edx, dword [esi + 8]
test bl, 8
jne 0x41d212
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 0x41d275
test bl, 4
jne 0x41d241
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 0x41d275
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 0x41d2a9
je 0x41c702
cmp ebx, 0xa
jb 0x41c834
cmp ebx, 0xd
jbe 0x41c702
inc dword [esi + 0xc]
jmp 0x41afba
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41c834
jmp 0x41c702
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov edx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test edx, edx
je 0x41d3c5
cmp ebx, 0xc0
jb 0x41d3c5
test bl, 0x20
jne 0x41d306
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41d3c2
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41d330
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x41d3c5
mov edx, dword [esi + 8]
test bl, 8
jne 0x41d356
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 0x41d3b9
test bl, 4
jne 0x41d385
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 0x41d3b9
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 0x41d3ea
je 0x41c834
cmp ebx, 0xa
jb 0x41b77d
cmp ebx, 0xd
jbe 0x41c834
jmp 0x41b77d
lea eax, [ebx - 0x2028]
cmp eax, 1
ja 0x41b77d
inc dword [esi + 0xc]
jmp 0x41afba
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41d4fd
cmp ebx, 0xc0
jb 0x41d4fd
test bl, 0x20
jne 0x41d449
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41d4fa
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41d471
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x41d4fd
mov edx, dword [esi + 8]
test bl, 8
jne 0x41d497
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 0x41d4fa
test bl, 4
jne 0x41d4c6
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 0x41d4fa
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 + 0x4de640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41d520
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 + 0x4e0840]
cmp eax, 0xa
ja case.default.0x41d53a
jmp dword [eax*4 + 0x428efc]
cmp dword [esi + 0x9c], 0xf
jne 0x41afb6
jmp 0x41bdbb
mov al, byte [edx*8 + 0x4dcfc1]
cmp al, 9
je 0x41d56a
cmp al, 5
je 0x41d56a
cmp al, 8
je 0x41d56a
xor ecx, ecx
jmp 0x41d56f
mov ecx, 1
xor eax, eax
cmp dword [esi + 0x9c], 0xf
sete al
cmp ecx, eax
jne 0x41afb6
jmp 0x41bdbb
movzx ecx, byte [edx*8 + 0x4dcfc1]
xor edx, edx
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
cmp eax, dword [ecx*4 + 0x4dcdd0]
setne dl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp edx, eax
jne 0x41afb6
jmp 0x41bdbb
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4dcfc1]
setne cl
xor eax, eax
cmp dword [esi + 0x9c], 0x10
sete al
cmp ecx, eax
jne 0x41afb6
jmp 0x41bdbb
mov eax, dword [esi + 0xc]
xor ecx, ecx
mov al, byte [eax + 2]
cmp al, byte [edx*8 + 0x4dcfc0]
jmp 0x41d5cb
movzx eax, byte [edx*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x41d56a
cmp eax, 3
je 0x41d56a
xor ecx, ecx
jmp 0x41d56f
cmp ebx, 0x180e
ja 0x41d663
je case.0x41d53a.0
cmp ebx, 0x85
ja 0x41d64f
je case.0x41d53a.0
cmp ebx, 9
jb case.0x41d683.8203
cmp ebx, 0xd
jbe case.0x41d53a.0
cmp ebx, 0x20
jmp 0x41d69c
cmp ebx, 0xa0
je case.0x41d53a.0
cmp ebx, 0x1680
jmp 0x41d69c
cmp ebx, 0x202f
ja 0x41d68a
je case.0x41d53a.0
add ebx, 0xffffe000
cmp ebx, 0x29
ja case.0x41d683.8203
movzx eax, byte [ebx + 0x428f30]
jmp dword [eax*4 + 0x428f28]
cmp ebx, 0x205f
je case.0x41d53a.0
cmp ebx, 0x3000
je case.0x41d53a.0
movzx eax, byte [edx*8 + 0x4dcfc1]
xor ecx, ecx
cmp dword [eax*4 + 0x4dcdd0], 6
sete cl
xor eax, eax
cmp dword [esi + 0x9c], 0xf
jmp 0x41d5d7
movzx eax, byte [edx*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x41d56a
cmp eax, 3
je 0x41d56a
cmp ebx, 0x5f
je 0x41d56a
xor ecx, ecx
jmp 0x41d56f
mov eax, dword [esi + 0xc]
movzx eax, byte [eax + 2]
mov ecx, dword [eax*4 + 0x4dce80]
lea eax, [eax*4 + 0x4dce80]
cmp ebx, ecx
jb 0x41d71d
nop
lea eax, [eax + 4]
cmp ebx, ecx
je 0x41d72f
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x41d710
cmp dword [esi + 0x9c], 0x10
jne 0x41afb6
jmp 0x41bdbb
cmp dword [esi + 0x9c], 0x10
je 0x41afb6
jmp 0x41bdbb
cmp ebx, 0x24
je 0x41d56a
cmp ebx, 0x40
je 0x41d56a
cmp ebx, 0x60
je 0x41d56a
cmp ebx, 0xa0
jb 0x41d770
cmp ebx, 0xd7ff
jbe 0x41d56a
cmp ebx, 0xe000
jae 0x41d56a
xor ecx, ecx
jmp 0x41d56f
mov esi, dword [esi]
test esi, esi
je case.default.0x424834
mov edi, 0xfffffff2
jmp 0x424819
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
movzx ebx, byte [edi]
inc edi
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edi
test ecx, ecx
je 0x41d8a2
cmp ebx, 0xc0
jb 0x41d8a2
test bl, 0x20
jne 0x41d7e0
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x41d89f
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41d80f
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 0x41d8a2
mov edx, dword [esi + 8]
test bl, 8
jne 0x41d835
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 0x41d898
test bl, 4
jne 0x41d864
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 0x41d898
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41d8c4
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41da56
lea esp, [esp]
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x41d9ee
cmp ebx, 0xc0
jb 0x41d9ee
test bl, 0x20
jne 0x41d925
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x41d9e6
test bl, 0x10
jne 0x41d94a
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 0x41d9e6
test bl, 8
jne 0x41d978
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 0x41d9e6
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x41d9b2
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 0x41d9e6
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x41da10
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx ecx, byte [eax*8 + 0x4dcfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dce48], eax
je 0x41da56
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 0x41d8f0
cmp dword [ebp + 0x88], 0
je 0x41c834
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41c834
cmp eax, dword [ebp + 0x84]
jbe 0x41c834
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41c834
jmp 0x41bf26
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 0x41db84
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 0x41db14
mov eax, dword [ebp + 0xc]
cmp dword [eax + edi*4], 0
jge 0x41db1d
add edx, dword [ebp + 0x24]
test ebx, ebx
jg 0x41daf0
jmp 0x41db84
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edi*4 + 4]
sub ecx, dword [eax + edi*4]
mov dword [esi + 0x88], ecx
jmp 0x41db84
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 0x41db74
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + edx*4]
test ecx, ecx
js 0x41db74
mov eax, dword [eax + edx*4 + 4]
sub eax, ecx
jmp 0x41db7e
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.0x41db9f
movzx eax, byte [eax + 0x428f64]
jmp dword [eax*4 + 0x428f5c]
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 + 0x4dc310]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4dc31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41dc2d
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x41dc2d
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 0x41dc29
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
mov eax, dword [esi + 0x88]
mov edi, dword [esp + 0x8c]
test eax, eax
je 0x41afc1
jns 0x41dc51
cmp dword [esi + 0x90], 0
je 0x41afc1
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41dc8f
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.00429460
add esp, 0x14
test eax, eax
js 0x41dcc1
add eax, ebx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x41dc60
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41afc1
cmp dword [esp + 0x80], 0
je 0x41dcea
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4250d2
cmp eax, 0xfffffffe
jne 0x41dccc
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x421f46.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x421f46.14
jmp 0x41c565
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edi, dword [esi + 0x90]
jmp 0x41dd00
cmp edi, dword [esi + 0x8c]
jge 0x425121
push dword [esp + 0x7c]
mov ebx, dword [esi + 8]
push ebp
push dword [esi + 0x88]
push ebx
push dword [esi + 0x98]
call fcn.00429460
add esp, 0x14
test eax, eax
js 0x41dd35
add eax, ebx
inc edi
mov dword [esi + 8], eax
jmp 0x41dd00
cmp eax, 0xfffffffe
jne 0x425121
cmp dword [ebp + 0x88], 0
je 0x425121
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x84]
jbe 0x425121
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x425121
jmp 0x41bf26
mov ebx, dword [esp + 0x7c]
push ebx
push ebp
push dword [esi + 0x88]
push dword [esi + 8]
push dword [esi + 0x98]
call fcn.00429460
add esp, 0x14
mov dword [esi + 0x88], eax
test eax, eax
jns 0x41ddf9
cmp eax, 0xfffffffe
jne 0x41dda5
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je case.0x4256fd.14
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x4256fd.14
cmp eax, dword [ebp + 0x84]
jbe case.0x4256fd.14
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x4256fd.14
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff4
jmp 0x424824
add dword [esi + 8], eax
jmp 0x41afba
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.0x41de27
movzx eax, byte [eax + 0x428f74]
jmp dword [eax*4 + 0x428f6c]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41de4a
mov ebx, ecx
and ebx, 1
mov dword [esp + 0x84], ebx
jmp 0x41de55
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4dc310]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4dc31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41deec
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x41deec
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 0x41ded2
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x41deec
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41e04c
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41e0a1
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41dffc
test bl, 0x20
jne 0x41df4a
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41dff9
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41df71
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41dff7
test bl, 8
jne 0x41df94
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 0x41dff7
test bl, 4
jne 0x41dfc3
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 0x41dff7
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 0x41e00d
cmp dword [esi + 0x9c], 0x6e
jmp 0x41e022
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.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41df10
jmp 0x41e093
cmp dword [ebp + 0x88], 0
je case.0x421f46.14
mov eax, dword [esi + 8]
jmp 0x41c565
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41e09a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e037
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.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41e060
mov edx, dword [esp + 0x8c]
mov ebx, dword [esp + 0x84]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41afba
test ebx, ebx
je 0x41e0ca
test edx, edx
jne 0x428337
mov dword [esi + 0x84], eax
jmp 0x4251bb
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x90]
test edx, edx
je 0x41e282
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x41e26f
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x41e247
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x41e1f6
test bl, 0x20
jne 0x41e13b
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x41e1f6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x41e163
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x41e1ec
and eax, 0x3f
test bl, 8
jne 0x41e189
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 0x41e1ec
test bl, 4
jne 0x41e1b8
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 0x41e1ec
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 0x41e207
cmp dword [esi + 0x9c], 0x6e
jmp 0x41e21c
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 0x41e26f
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 0x41e0f1
jmp 0x41e26f
cmp dword [ebp + 0x88], 0
je 0x41e26f
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e26f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x42617c
jmp 0x41afba
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x41e2fa
mov ebx, dword [esi + 8]
cmp ebx, dword [ebp + 0x78]
jae 0x41e2d2
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 0x41e2fa
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 0x41e291
jmp 0x41e2fa
cmp dword [ebp + 0x88], 0
je 0x41e2fa
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e2fa
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x4251fb
jmp 0x41afba
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.0x41e345
movzx eax, byte [eax + 0x428f88]
jmp dword [eax*4 + 0x428f80]
lea ecx, [edi - 0x62]
lea eax, [edx + 1]
mov dword [esi + 0xc], eax
cmp ecx, 8
jae 0x41e368
mov eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
jmp 0x41e373
mov dword [esp + 0x80], 1
movsx eax, byte [ecx + 0x4dc310]
mov dword [esi + 0x90], eax
movsx eax, byte [ecx + 0x4dc31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41e40a
mov dword [esi + 0x8c], 0x7fffffff
jmp 0x41e40a
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 0x41e3f0
mov dword [esi + 0x8c], 0x7fffffff
add dword [esi + 0xc], 5
jmp 0x41e40a
mov dword [esi + 0x8c], 1
mov dword [esi + 0x90], 1
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41e545
jmp 0x41e420
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x41e51a
cmp edx, 0xc0
jb 0x41e51a
test dl, 0x20
jne 0x41e468
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41e517
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41e48f
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41e515
test dl, 8
jne 0x41e4b2
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 0x41e515
test dl, 4
jne 0x41e4e1
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 0x41e515
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.0042a6e0
add esp, 0xc
test eax, eax
je case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41e420
jmp 0x41e54c
mov edi, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41afc1
cmp dword [esp + 0x84], 0
jne 0x428348
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 0x41e6dd
jmp 0x41e590
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x41e6b3
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x41e67b
cmp edx, 0xc0
jb 0x41e67b
test dl, 0x20
jne 0x41e5dc
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov ebx, 2
jmp 0x41e67b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x41e5fb
and edx, 0xf
mov ebx, 3
shl edx, 6
or ecx, edx
jmp 0x41e671
and eax, 0x3f
test dl, 8
jne 0x41e61b
and edx, 7
mov ebx, 4
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
movzx eax, byte [edi + 3]
jmp 0x41e671
test dl, 4
jne 0x41e644
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 0x41e671
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.0042a6e0
add esp, 0xc
test eax, eax
je 0x41e6dd
mov eax, dword [esp + 0x84]
add dword [esi + 8], ebx
inc eax
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jl 0x41e590
jmp 0x41e6dd
cmp dword [ebp + 0x88], 0
je 0x41e6d6
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41e6d6
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jg 0x41bf26
mov edi, dword [esp + 0x8c]
cmp dword [esp + 0x80], 0
jne 0x41afc1
jmp 0x425f91
mov edx, dword [esp + 0x8c]
test edx, edx
je 0x41e8c9
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 0x41e850
test al, 0x20
jne 0x41e750
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 0x41e850
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41e78a
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 0x41e850
test al, 8
jne 0x41e7c6
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 0x41e850
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41e80b
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 0x41e850
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 0x41e889
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
cmp edx, edi
jb case.0x421f46.14
cmp edx, dword [ebp + 0x84]
jbe case.0x421f46.14
jmp 0x41bf12
test ecx, ecx
jle 0x41e8be
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.0x421f46.14
mov ecx, dword [esi + 0x88]
test ecx, ecx
jg 0x41e890
dec dword [esi + 0x88]
jmp 0x41afba
mov eax, dword [ebp + 0x78]
mov edi, dword [esi + 8]
sub eax, edi
cmp eax, 1
jge 0x41e916
cmp dword [ebp + 0x88], ebx
je 0x41b77d
cmp edi, dword [ebp + 0x84]
jbe 0x41b77d
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x41b77d
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424820
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 0x41ec2b
jmp 0x41bdbb
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41c5d0
cmp dword [esp + 0x8c], ebx
je 0x41ec0c
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 0x41ea9b
test al, 0x20
jne 0x41e99b
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 0x41ea9b
mov ecx, dword [esi + 0xc]
movzx edx, byte [ecx + 1]
and edx, 0x3f
test al, 0x10
jne 0x41e9d5
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 0x41ea9b
test al, 8
jne 0x41ea11
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 0x41ea9b
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41ea56
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 0x41ea9b
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 0x41eac9
mov edx, dword [ebp + 0x38]
movzx ecx, byte [eax]
mov al, byte [edi + edx]
cmp al, byte [ecx + edx]
jne 0x41bdbb
inc dword [esi + 0xc]
inc dword [esi + 8]
jmp 0x41afba
movzx ebx, byte [eax]
lea edx, [eax + 1]
mov dword [esi + 8], edx
cmp ebx, 0xc0
jb 0x41ebab
test bl, 0x20
jne 0x41eaf9
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41eba8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x41eb20
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x41eba6
test bl, 8
jne 0x41eb43
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 0x41eba6
test bl, 4
jne 0x41eb72
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 0x41eba6
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 0x41afba
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4de640]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41ebe5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
mov eax, dword [eax*8 + 0x4dcfc4]
add eax, edi
mov edi, dword [esp + 0x8c]
cmp ebx, eax
je 0x41afc1
jmp 0x41bdbb
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 0x41bdbb
lea eax, [edi + 1]
mov dword [esi + 8], eax
add dword [esi + 0xc], 2
jmp 0x41afba
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 0x41ed5d
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 0x41ec94
mov dword [esp + 0x84], ebx
cmp al, 0x35
jne 0x41ec9f
mov dword [esp + 0x84], 1
lea eax, [ecx + 3]
mov dword [esi + 0xc], eax
jmp 0x41ed5d
mov dword [esi + 0x90], ebx
mov edi, 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41ed64
mov edi, 1
mov dword [esi + 0x90], edi
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x41ed64
mov edi, 1
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], edi
inc dword [esi + 0xc]
mov dword [esp + 0x80], edi
jmp 0x41ed64
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 + 0x4dc310]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4dc31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41ed5d
mov dword [esi + 0x8c], 0x7fffffff
mov edi, dword [esp + 0x80]
cmp dword [esp + 0x8c], ebx
je 0x41f1d8
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 0x41eeab
mov eax, dword [esi + 0xc]
test bl, 0x20
jne 0x41edc1
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 0x41eeab
test bl, 0x10
jne 0x41edf6
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 0x41eeab
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 0x41ee34
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 0x41eeab
test bl, 4
jne 0x41ee6d
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 0x41eeab
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 0x41f1e7
cmp dword [esi + 0x9c], 0x2e
jb 0x41ef1c
mov edi, dword [esi + 0x80]
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4de640]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41eef3
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
mov ecx, dword [eax*8 + 0x4dcfc4]
add ecx, edi
cmp ecx, edi
je 0x41ef1c
lea eax, [esi + 0x70]
push eax
push ecx
call fcn.0042a680
add esp, 8
mov dword [esi + 0x6c], eax
jmp 0x41ef23
mov dword [esi + 0x6c], 0
cmp dword [esi + 0x90], 1
mov dword [esp + 0x94], 1
jl 0x41f056
jmp 0x41ef40
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 0x41efc4
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x41ef78
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41ef81
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41ef67
cmp edi, 0xfffffffc
je 0x41f038
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41efba
cmp edi, 0xfffffffd
je 0x41f038
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41efba
cmp edi, 0xfffffffe
je 0x41f038
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41efba
cmp edi, 0xffffffff
je 0x41f038
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x41f038
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x90]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41dccc
sub ecx, ebx
cmp edi, ecx
ja 0x41dccc
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x41eff6
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41effb
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41efe5
cmp edi, 0xfffffffc
je 0x41f038
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41dccc
cmp edi, 0xfffffffd
je 0x41f038
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41dccc
cmp edi, 0xfffffffe
je 0x41f038
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41dccc
cmp edi, 0xffffffff
je 0x41f038
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41dccc
mov edx, dword [esp + 0x94]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x94], edx
cmp edx, dword [esi + 0x90]
jle 0x41ef40
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41afc1
cmp dword [esp + 0x84], 0
jne 0x428359
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 0x41f1c5
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 0x41f11c
mov edx, dword [esi + 0x24]
mov ecx, edi
mov edi, ebx
sub edi, 4
jb 0x41f0d8
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41f0e1
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41f0c7
cmp edi, 0xfffffffc
je 0x41f178
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41f112
cmp edi, 0xfffffffd
je 0x41f178
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41f112
cmp edi, 0xfffffffe
je 0x41f178
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41f112
cmp edi, 0xffffffff
je 0x41f178
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
je 0x41f178
mov edi, dword [esi + 8]
mov ecx, dword [esp + 0x84]
mov ebx, dword [esi + 0x6c]
test ebx, ebx
jle 0x41f198
sub ecx, ebx
cmp edi, ecx
ja 0x41f198
mov ecx, edi
lea edx, [esi + 0x70]
mov edi, ebx
sub edi, 4
jb 0x41f146
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x41f14b
add ecx, 4
add edx, 4
sub edi, 4
jae 0x41f135
cmp edi, 0xfffffffc
je 0x41f178
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x41f198
cmp edi, 0xfffffffd
je 0x41f178
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x41f198
cmp edi, 0xfffffffe
je 0x41f178
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x41f198
cmp edi, 0xffffffff
je 0x41f178
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x41f198
mov edx, dword [esp + 0x90]
add dword [esi + 8], ebx
inc edx
mov dword [esp + 0x90], edx
cmp edx, dword [esi + 0x8c]
jl 0x41f0a0
jmp 0x41f1c5
cmp dword [ebp + 0x88], 0
je 0x41f1c5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x41f1c5
cmp eax, dword [ebp + 0x84]
jbe 0x41f1c5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x42633c
jmp 0x41afba
mov eax, dword [esi + 0xc]
movzx eax, byte [eax]
mov dword [esi + 0x80], eax
inc dword [esi + 0xc]
cmp dword [esi + 0x9c], 0x2e
jb 0x41f2df
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 0x41f244
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e037
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41f237
cmp dword [esi + 0x94], ecx
jne case.0x421f46.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x41f214
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41afba
cmp dword [esp + 0x84], 0
je 0x41f26b
mov dword [esi + 0x84], eax
jmp 0x42529b
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41f2d2
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41f2aa
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41f29b
cmp dword [esi + 0x94], ecx
jne 0x41f2d2
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41f280
jmp 0x41f2d2
cmp dword [ebp + 0x88], 0
je 0x41f2d2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f2d2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
test edi, edi
je 0x4252db
jmp 0x41afba
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41f31a
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f2f0
mov eax, dword [esi + 0x90]
mov edi, dword [esp + 0x8c]
cmp eax, dword [esi + 0x8c]
je 0x41afc1
cmp dword [esp + 0x84], 0
je 0x41f348
mov dword [esi + 0x84], eax
jmp 0x425368
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41f3ac
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x41f384
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
jne 0x41f3ac
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41f360
jmp 0x41f3ac
cmp dword [ebp + 0x88], 0
je 0x41f3ac
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41f3ac
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x4253a8
jmp 0x41afc1
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jb 0x41f3e4
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
cmp ecx, dword [ebp + 0x84]
jbe case.0x421f46.14
jmp 0x41bf12
test edi, edi
je 0x41f65c
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 0x41f4e5
movzx eax, byte [edx]
and eax, 0x3f
test bl, 0x20
jne 0x41f422
and ebx, 0x1f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x41f4e2
test bl, 0x10
jne 0x41f443
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 0x41f4e2
test bl, 8
jne 0x41f46e
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 0x41f4e5
mov ecx, dword [esi + 0xc]
test bl, 4
jne 0x41f4a7
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 0x41f4e2
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 0x41f5d8
test dl, 0x20
jne 0x41f51f
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41f5ce
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41f546
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41f5cc
test dl, 8
jne 0x41f569
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 0x41f5cc
test dl, 4
jne 0x41f598
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 0x41f5cc
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 0x41f5f5
mov edi, dword [esp + 0x8c]
cmp ebx, edx
jne 0x41afc1
jmp 0x41bdbb
cmp ebx, 0x7f
jbe 0x41f632
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4de640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x41f61d
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
mov ecx, dword [eax*8 + 0x4dcfc4]
add ecx, ebx
jmp 0x41f639
mov eax, dword [ebp + 0x3c]
movzx ecx, byte [eax + ebx]
mov eax, dword [esp + 0x80]
cmp ebx, eax
je 0x41bdbb
mov edi, dword [esp + 0x8c]
cmp ecx, eax
jne 0x41afc1
jmp 0x41bdbb
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.0x421f46.14
cmp dword [esi + 0x9c], 0x20
jne 0x41ec2b
mov eax, dword [ebp + 0x3c]
movzx eax, byte [eax + edx]
cmp eax, edi
je case.0x421f46.14
add dword [esi + 0xc], 2
jmp 0x41afba
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 0x41f7f6
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 0x41f6fb
cmp al, 0x4f
je 0x41f6fb
xor ebx, ebx
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x41f7f6
mov ebx, 1
lea eax, [ecx + 3]
mov dword [esp + 0x84], ebx
mov dword [esi + 0xc], eax
jmp 0x41f7f6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f7f6
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f7f6
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x41f7f6
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 0x41f7f6
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 + 0x4dc310]
mov dword [esi + 0x90], eax
movsx eax, byte [edx + 0x4dc31c]
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x41f7f6
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 0x41f951
mov eax, dword [esi + 0x80]
cmp eax, 0xc0
jb 0x41f951
test al, 0x20
jne 0x41f848
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 0x41f951
test al, 0x10
jne 0x41f87b
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 0x41f951
test al, 8
jne 0x41f8bd
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 0x41f951
movzx edx, byte [edi]
mov ecx, dword [esi + 0xc]
and edx, 0x3f
test al, 4
mov eax, dword [esi + 0x80]
jne 0x41f908
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 0x41f94a
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 0x41fd75
test edx, edx
je 0x41f9ac
mov edi, dword [esi + 0x80]
cmp edi, 0x7f
jbe 0x41f9ac
mov eax, edi
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx ecx, byte [eax + 0x4de640]
mov eax, edi
shl ecx, 7
and eax, 0x8000007f
jns 0x41f990
dec eax
or eax, 0xffffff80
inc eax
mov edx, dword [esp + 0x8c]
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
mov eax, dword [eax*8 + 0x4dcfc4]
add eax, edi
jmp 0x41f9b9
mov ecx, dword [ebp + 0x3c]
mov eax, dword [esi + 0x80]
movzx eax, byte [ecx + eax]
mov dword [esi + 0x94], eax
test edx, edx
je 0x41fb00
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41fb4b
jmp 0x41f9e0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ecx, byte [edx]
inc edx
mov dword [esi + 8], edx
cmp ecx, 0xc0
jb 0x41fad9
movzx eax, byte [edx]
and eax, 0x3f
test cl, 0x20
jne 0x41fa1a
and ecx, 0x1f
shl ecx, 6
or ecx, eax
lea eax, [edx + 1]
jmp 0x41fad6
test cl, 0x10
jne 0x41fa3b
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 0x41fad6
test cl, 8
jne 0x41fa65
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 0x41fad6
test cl, 4
jne 0x41fa9b
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 0x41fad6
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.0x421f46.14
cmp dword [esi + 0x94], ecx
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41f9e0
jmp 0x41fb44
mov edx, 1
cmp dword [esi + 0x90], edx
jl 0x41fb44
lea ecx, [ecx]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e037
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je case.0x421f46.14
cmp dword [esi + 0x94], ecx
je case.0x421f46.14
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x90]
jle 0x41fb10
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41afba
test ebx, ebx
je 0x41fb74
test edx, edx
jne 0x42836a
mov dword [esi + 0x84], eax
jmp 0x42543f
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x41fcfd
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x41fcea
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x41fcc2
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x41fc9e
test dl, 0x20
jne 0x41fbd2
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x41fc9e
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x41fbfc
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 0x41fc9c
test dl, 8
jne 0x41fc28
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 0x41fc9c
test dl, 4
jne 0x41fc60
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 0x41fc9c
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 0x41fcea
cmp dword [esi + 0x94], edx
je 0x41fcea
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x41fb94
jmp 0x41fcea
cmp dword [ebp + 0x88], 0
je 0x41fcea
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41fcea
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x42651c
jmp 0x41afba
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x41fd62
jmp 0x41fd10
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41fd3a
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x41fd62
cmp dword [esi + 0x94], ecx
je 0x41fd62
inc eax
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x41fd10
jmp 0x41fd62
cmp dword [ebp + 0x88], 0
je 0x41fd62
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x41fd62
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x42547f
jmp 0x41afba
test edx, edx
je 0x41fe97
mov ebx, 1
cmp dword [esi + 0x90], ebx
jl 0x41fed5
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x41fe7c
test dl, 0x20
jne 0x41fdca
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x41fe79
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x41fdf1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x41fe77
test dl, 8
jne 0x41fe14
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 0x41fe77
test dl, 4
jne 0x41fe43
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 0x41fe77
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.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x41fd90
jmp 0x41fece
mov edi, 1
cmp dword [esi + 0x90], edi
jl 0x41fed5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x41fea4
mov edx, dword [esp + 0x8c]
mov eax, dword [esi + 0x90]
cmp eax, dword [esi + 0x8c]
je 0x41afba
cmp dword [esp + 0x84], 0
je 0x41ff04
test edx, edx
jne 0x42837f
mov dword [esi + 0x84], eax
jmp 0x42550c
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
test edx, edx
je 0x420088
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x420075
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x42004d
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x420031
test dl, 0x20
jne 0x41ff62
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x420031
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x41ff8c
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 0x42002f
test dl, 8
jne 0x41ffbb
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 0x42002f
test dl, 4
jne 0x41fff3
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 0x42002f
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 0x420075
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x41ff24
jmp 0x420075
cmp dword [ebp + 0x88], 0
je 0x420075
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x420075
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x4266e0
jmp 0x41afba
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4200e2
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x4200ba
movzx eax, byte [ecx]
cmp dword [esi + 0x80], eax
je 0x4200e2
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x420096
jmp 0x4200e2
cmp dword [ebp + 0x88], 0
je 0x4200e2
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4200e2
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x42554c
jmp 0x41afba
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 0x420234
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 0x420234
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420234
mov dword [esi + 0x90], 1
mov dword [esi + 0x8c], 0x7fffffff
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420234
mov dword [esi + 0x90], ebx
mov dword [esi + 0x8c], 1
inc dword [esi + 0xc]
mov dword [esp + 0x80], 1
jmp 0x420234
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 0x420234
mov eax, dword [esi + 0xc]
movzx ecx, byte [eax]
inc eax
mov dword [esi + 0xc], eax
movsx eax, byte [ecx + 0x4dc2bb]
lea edx, [ecx - 0x55]
mov dword [esi + 0x90], eax
and edx, 1
movsx eax, byte [ecx + 0x4dc2c7]
mov dword [esp + 0x84], edx
mov dword [esi + 0x8c], eax
test eax, eax
jne 0x420234
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 0x420256
cmp ecx, 0xf
je 0x420256
mov dword [esi + 0x60], 0xffffffff
jmp 0x420279
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 0x42221b
mov eax, dword [esi + 0x60]
test eax, eax
js 0x421028
cmp eax, 0xa
ja case.default.0x41d53a
jmp dword [eax*4 + 0x428f94]
cmp dword [esi + 0x68], ebx
jne 0x41bdbb
mov edx, 1
cmp ecx, edx
jl 0x42221b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edi, edi
je 0x4202ff
cmp ecx, 0xc0
jb 0x4202ff
test cl, 0x20
jne 0x4202db
inc eax
jmp 0x4202fc
test cl, 0x10
jne 0x4202e5
add eax, 2
jmp 0x4202fc
test cl, 8
jne 0x4202ef
add eax, 3
jmp 0x4202fc
test cl, 4
jne 0x4202f9
add eax, 4
jmp 0x4202fc
add eax, 5
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x90]
jle 0x4202b8
jmp 0x42221b
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
mov eax, dword [esi + 8]
jmp 0x41c565
mov edi, 1
cmp ecx, edi
jl 0x42221b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x42042a
cmp ebx, 0xc0
jb 0x42042a
test bl, 0x20
jne 0x420378
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x420427
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42039f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x420425
test bl, 8
jne 0x4203c2
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 0x420425
test bl, 4
jne 0x4203f1
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 0x420425
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42044c
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp eax, 9
je 0x420471
cmp eax, 5
je 0x420471
cmp eax, 8
je 0x420471
xor eax, eax
jmp 0x420476
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420330
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x42221b
mov edi, edi
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x420598
cmp ebx, 0xc0
jb 0x420598
test bl, 0x20
jne 0x4204e8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x420595
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42050f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x420595
test bl, 8
jne 0x420532
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 0x420595
test bl, 4
jne 0x420561
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 0x420595
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4205ba
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4204a0
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x42221b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4206fb
cmp ebx, 0xc0
jb 0x4206fb
test bl, 0x20
jne 0x42064b
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4206f8
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x420672
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4206f8
test bl, 8
jne 0x420695
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 0x4206f8
test bl, 4
jne 0x4206c4
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 0x4206f8
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42071d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420603
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x42221b
nop
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x420858
cmp ebx, 0xc0
jb 0x420858
test bl, 0x20
jne 0x4207a8
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x420855
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4207cf
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x420855
test bl, 8
jne 0x4207f2
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 0x420855
test bl, 4
jne 0x420821
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 0x420855
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42087a
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420760
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x42221b
lea esp, [esp]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x4209ba
cmp ebx, 0xc0
jb 0x4209ba
test bl, 0x20
jne 0x420908
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4209b7
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42092f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x4209b5
test bl, 8
jne 0x420952
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 0x4209b5
test bl, 4
jne 0x420981
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 0x4209b5
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4209dc
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x420a03
cmp eax, 3
je 0x420a03
xor eax, eax
jmp 0x420a08
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x4208c0
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x42221b
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x420b2a
cmp ebx, 0xc0
jb 0x420b2a
test bl, 0x20
jne 0x420a78
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x420b27
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x420a9f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
lea eax, [edx + 2]
jmp 0x420b25
test bl, 8
jne 0x420ac2
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 0x420b25
test bl, 4
jne 0x420af1
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 0x420b25
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 0x420b6d
je case.0x420b89.8192
cmp ebx, 0x85
ja 0x420b59
je case.0x420b89.8192
cmp ebx, 9
jb case.0x420b89.8203
cmp ebx, 0xd
jbe case.0x420b89.8192
cmp ebx, 0x20
jmp 0x420b9e
cmp ebx, 0xa0
je case.0x420b89.8192
cmp ebx, 0x1680
jmp 0x420b9e
cmp ebx, 0x202f
ja 0x420b90
je case.0x420b89.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x420b89.8203
movzx eax, byte [eax + 0x428fc8]
jmp dword [eax*4 + 0x428fc0]
cmp ebx, 0x205f
je case.0x420b89.8192
cmp ebx, 0x3000
je case.0x420b89.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x420bc2
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp dword [eax*4 + 0x4dcdd0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je case.0x421f46.14
jmp 0x420bf6
cmp dword [esi + 0x68], 0
jne case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420a30
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x42221b
jmp 0x420c20
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edx
je 0x420d18
cmp ebx, 0xc0
jb 0x420d18
test bl, 0x20
jne 0x420c68
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x420d15
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x420c8f
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x420d15
test bl, 8
jne 0x420cb2
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 0x420d15
test bl, 4
jne 0x420ce1
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 0x420d15
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 + 0x4de640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x420d3b
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x420d67
cmp eax, 3
je 0x420d67
cmp ebx, 0x5f
je 0x420d67
xor eax, eax
jmp 0x420d6c
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x421f46.14
inc edi
cmp edi, dword [esi + 0x90]
jle 0x420c20
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x42221b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x420e8c
cmp edx, 0xc0
jb 0x420e8c
test dl, 0x20
jne 0x420ddc
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420e89
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420e03
and edx, 0xf
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
lea eax, [edi + 2]
jmp 0x420e89
test dl, 8
jne 0x420e26
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 0x420e89
test dl, 4
jne 0x420e55
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 0x420e89
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 + 0x4dce80]
lea eax, [eax*4 + 0x4dce80]
cmp edx, ecx
jb 0x420eae
lea eax, [eax + 4]
cmp edx, ecx
je 0x420eca
mov ecx, dword [eax]
cmp edx, ecx
jae 0x420ea1
cmp dword [esi + 0x68], 0
je case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420d94
jmp 0x42221b
cmp dword [esi + 0x68], 0
jne case.0x421f46.14
jmp 0x420eb8
mov ebx, 1
cmp ecx, ebx
jl 0x42221b
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
cmp dword [esp + 0x8c], 0
mov dword [esi + 8], edi
je 0x420fdd
cmp edx, 0xc0
jb 0x420fdd
test dl, 0x20
jne 0x420f2b
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x420fda
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x420f52
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x420fd8
test dl, 8
jne 0x420f75
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 0x420fd8
test dl, 4
jne 0x420fa4
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 0x420fd8
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 0x421008
cmp edx, 0x40
je 0x421008
cmp edx, 0x60
je 0x421008
cmp edx, 0xa0
jb 0x420ffc
cmp edx, 0xd7ff
jbe 0x421008
cmp edx, 0xe000
jae 0x421008
xor eax, eax
jmp 0x42100d
mov eax, 1
cmp eax, dword [esi + 0x68]
je case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x420ee3
jmp 0x42221b
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x421353
mov edi, 1
mov dword [esp + 0x94], edi
cmp ecx, edi
jl 0x42221b
jmp 0x421050
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x41e037
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x421150
cmp ebx, 0xc0
jb 0x421150
test bl, 0x20
jne 0x421099
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x42114d
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4210c0
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x421146
test bl, 8
jne 0x4210e3
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 0x421146
test bl, 4
jne 0x421112
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 0x421146
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x421172
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc2]
mov dword [esp + 0x90], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42130d
jmp 0x4211a0
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42129e
cmp ebx, 0xc0
jb 0x42129e
test bl, 0x20
jne 0x4211d5
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x421296
test bl, 0x10
jne 0x4211fa
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 0x421296
test bl, 8
jne 0x421228
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 0x421296
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x421262
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 0x421296
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4212c0
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x90]
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx ecx, byte [eax*8 + 0x4dcfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dce48], eax
je 0x421306
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 0x4211a0
mov edi, dword [esp + 0x94]
cmp dword [ebp + 0x88], 0
je 0x42133a
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x42133a
cmp eax, dword [ebp + 0x84]
jbe 0x42133a
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc edi
mov dword [esp + 0x94], edi
cmp edi, dword [esi + 0x90]
jle 0x421050
jmp 0x42221b
mov edx, dword [esp + 0x8c]
add eax, 0xfffffffa
test edx, edx
je 0x421e1f
cmp eax, 0xf
ja case.0x424367.9
jmp dword [eax*4 + 0x428ff4]
mov ebx, 1
cmp ecx, ebx
jl 0x422222
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41e037
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4213b7
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne case.0x421f46.14
jmp 0x4213db
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4213db
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4213db
cmp edx, 1
je case.0x421f46.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x421f46.14
cmp dword [ebp + 0x88], 0
je 0x421416
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x421416
cmp dword [ebp + 0x18], 0
jne 0x421416
cmp dword [edi], 2
jne 0x421416
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x421416
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x421432
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x421432
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x421421
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x421382
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
mov edx, dword [ebp + 0x78]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x42030d
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x421488
lea ebx, [ebx]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x421488
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x421470
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421454
jmp 0x42221b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
ja 0x41bdbb
lea eax, [ecx + edx]
mov dword [esi + 8], eax
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x422222
mov edi, edi
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4215ac
test dl, 0x20
jne 0x4214fa
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4215a9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421521
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4215a7
test dl, 8
jne 0x421544
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 0x4215a7
test dl, 4
jne 0x421573
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 0x4215a7
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 0x4215d0
je 0x4215bd
cmp edx, 0xa
je 0x4215f1
lea eax, [edx - 0xb]
jmp 0x4215de
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4215f1
cmp byte [eax], 0xa
jne 0x4215f1
inc eax
mov dword [esi + 8], eax
jmp 0x4215f1
cmp edx, 0x85
je 0x4215e7
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x421f46.14
cmp dword [ebp + 0x68], 0
jne case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4214c0
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x422222
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4216fc
test dl, 0x20
jne 0x42164a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4216f9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421671
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4216f7
test dl, 8
jne 0x421694
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 0x4216f7
test dl, 4
jne 0x4216c3
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 0x4216f7
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 0x42172e
je case.0x421f46.14
cmp edx, 0xa0
ja 0x421726
je case.0x421f46.14
cmp edx, 9
je case.0x421f46.14
cmp edx, 0x20
jmp 0x42175e
cmp edx, 0x1680
jmp 0x42175e
cmp edx, 0x205f
ja 0x421758
je case.0x421f46.14
cmp edx, 0x2000
jb 0x421764
cmp edx, 0x200a
jbe case.0x421f46.14
cmp edx, 0x202f
jmp 0x42175e
cmp edx, 0x3000
je case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x421610
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x422222
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x42186f
test dl, 0x20
jne 0x4217bd
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42186c
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x4217e4
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x42186a
test dl, 8
jne 0x421807
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 0x42186a
test dl, 4
jne 0x421836
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 0x42186a
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 0x421895
je 0x4218c7
cmp edx, 0xa0
ja 0x42188d
je 0x4218c7
cmp edx, 9
je 0x4218c7
cmp edx, 0x20
jmp 0x4218c1
cmp edx, 0x1680
jmp 0x4218c1
cmp edx, 0x205f
ja 0x4218bb
je 0x4218c7
cmp edx, 0x2000
jb case.0x421f46.14
cmp edx, 0x200a
jbe 0x4218c7
cmp edx, 0x202f
jmp 0x4218c1
cmp edx, 0x3000
jne case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x421783
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x422222
jmp 0x4218f0
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4219dc
test dl, 0x20
jne 0x42192a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4219d9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421951
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4219d7
test dl, 8
jne 0x421974
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 0x4219d7
test dl, 4
jne 0x4219a3
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 0x4219d7
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 0x4219f4
je case.0x421f46.14
cmp edx, 0xa
jb 0x421a08
cmp edx, 0xd
jmp 0x421a02
cmp edx, 0x2028
jb 0x421a08
cmp edx, 0x2029
jbe case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x4218f0
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x422222
jmp 0x421a30
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x421b1c
test dl, 0x20
jne 0x421a6a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421b19
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421a91
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x421b17
test dl, 8
jne 0x421ab4
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 0x421b17
test dl, 4
jne 0x421ae3
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 0x421b17
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 0x421b2e
je 0x421b3d
lea eax, [edx - 0xa]
cmp eax, 3
jmp 0x421b37
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x421a30
jmp 0x42221b
mov ebx, 1
cmp ecx, ebx
jl 0x422222
lea esp, [esp]
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x41e037
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x421c4c
test dl, 0x20
jne 0x421b9a
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x421c49
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x421bc1
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x421c47
test dl, 8
jne 0x421be4
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 0x421c47
test dl, 4
jne 0x421c13
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 0x421c47
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 0x421c61
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne case.0x421f46.14
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x421b60
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42030d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x421f46.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x421f46.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421c80
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x42030d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x421cf3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne case.0x421f46.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x421d18
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x421d18
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x421d00
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421cd0
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42030d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x421f46.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x421f46.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421d33
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
mov edx, dword [ebp + 0x78]
nop
mov ecx, dword [esi + 8]
cmp ecx, edx
jae 0x42030d
movzx edx, byte [ecx]
cmp edx, 0x80
jae 0x421da3
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x421f46.14
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x421dc8
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x421dc8
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x421db0
inc edi
cmp edi, dword [esi + 0x90]
jle 0x421d80
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42030d
movzx edx, byte [ecx]
cmp edx, 0x80
jae case.0x421f46.14
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x421f46.14
lea eax, [ecx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x421de3
jmp 0x42221b
cmp eax, 0xf
ja case.0x424367.9
jmp dword [eax*4 + 0x429034]
mov ebx, 1
cmp ecx, ebx
jl 0x422222
lea esp, [esp]
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x41e037
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x421e70
push 0
push edi
push eax
push edx
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne case.0x421f46.14
jmp 0x421e94
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x421e94
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x421e94
cmp edx, 1
je case.0x421f46.14
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je case.0x421f46.14
cmp dword [ebp + 0x88], 0
je 0x421ecf
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x421ecf
cmp dword [ebp + 0x18], 0
jne 0x421ecf
cmp dword [edi], 2
jne 0x421ecf
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x421ecf
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x90]
jle 0x421e40
jmp 0x42221b
mov eax, dword [ebp + 0x78]
mov edx, dword [esi + 8]
sub eax, ecx
cmp edx, eax
jbe 0x4214a6
cmp dword [ebp + 0x88], ebx
je case.0x421f46.14
cmp edx, dword [ebp + 0x84]
jbe case.0x421f46.14
jmp 0x41bf12
mov edx, 1
cmp ecx, edx
jl 0x42221b
mov edi, edi
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x42030d
movzx eax, byte [ecx]
inc ecx
sub eax, 0xa
mov dword [esi + 8], ecx
cmp eax, 0x7b
ja case.0x421f46.14
movzx eax, byte [eax + 0x429084]
jmp dword [eax*4 + 0x429074]
cmp ecx, dword [ebp + 0x78]
jae case.0x421f46.10
cmp byte [ecx], 0xa
jne case.0x421f46.10
lea eax, [ecx + 1]
mov dword [esi + 8], eax
jmp case.0x421f46.10
cmp dword [ebp + 0x68], ebx
jne case.0x421f46.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x421f20
jmp 0x42221b
mov edx, 1
cmp ecx, edx
jl 0x42221b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je case.0x421f46.14
cmp ecx, 0x20
je case.0x421f46.14
cmp ecx, 0xa0
je case.0x421f46.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x421f83
jmp 0x42221b
mov edx, 1
cmp ecx, edx
jl 0x42221b
nop
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 9
je 0x421ff9
cmp ecx, 0x20
je 0x421ff9
cmp ecx, 0xa0
jne case.0x421f46.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x421fd0
jmp 0x42221b
mov edx, 1
cmp ecx, edx
jl 0x42221b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl 0x422041
cmp ecx, 0xd
jle case.0x421f46.14
cmp ecx, 0x85
je case.0x421f46.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x422014
jmp 0x42221b
mov edx, 1
cmp ecx, edx
jl 0x42221b
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
cmp ecx, 0xa
jl case.0x421f46.14
cmp ecx, 0xd
jle 0x42208d
cmp ecx, 0x85
jne case.0x421f46.14
inc edx
cmp edx, dword [esi + 0x90]
jle 0x422060
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
jmp 0x4220b0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne case.0x421f46.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4220b0
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x421f46.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4220f0
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne case.0x421f46.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x422130
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
lea ecx, [ecx]
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x421f46.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x422170
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
jmp 0x4221b0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x421f46.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4221b0
jmp 0x42221b
mov edi, 1
cmp ecx, edi
jl 0x422222
jmp 0x4221f0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x42030d
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x421f46.14
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x90]
jle 0x4221f0
mov edx, dword [esp + 0x8c]
mov ecx, dword [esi + 0x90]
cmp ecx, dword [esi + 0x8c]
je 0x41afba
cmp dword [esp + 0x84], 0
je 0x422282
mov eax, dword [esi + 0x60]
test eax, eax
js 0x422265
cmp eax, 0xa
ja case.0x424367.9
jmp dword [eax*4 + 0x429100]
mov esi, dword [esi]
test esi, esi
je case.default.0x424834
mov edi, 0xfffffff2
jmp 0x424820
cmp dword [esi + 0x7c], 0x16
je 0x428453
test edx, edx
jne 0x42843e
mov dword [esi + 0x84], ecx
jmp 0x4256b5
mov eax, dword [esi + 8]
mov dword [esi + 0x30], eax
mov eax, dword [esi + 0x60]
test eax, eax
js 0x4232bb
cmp eax, 0xa
ja case.0x424367.9
jmp dword [eax*4 + 0x42912c]
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4232a8
mov ebx, dword [esp + 0x8c]
jmp 0x4222c0
mov edx, dword [esi + 8]
mov eax, 1
cmp edx, dword [ebp + 0x78]
jae 0x42232b
movzx ecx, byte [edx]
test ebx, ebx
je 0x42230e
cmp ecx, 0xc0
jb 0x42230e
test cl, 0x20
jne 0x4222e8
mov eax, 2
jmp 0x42230e
test cl, 0x10
jne 0x4222f4
mov eax, 3
jmp 0x42230e
test cl, 8
jne 0x422300
mov eax, 4
jmp 0x42230e
test cl, 4
mov eax, 0
setne al
add eax, 5
cmp dword [esi + 0x68], 0
jne 0x4232a8
add eax, edx
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4222c0
jmp 0x4232a8
cmp dword [ebp + 0x88], 0
je 0x4232a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4232a8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4232a8
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
mov edx, ebx
jmp 0x424820
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4224ee
movzx ebx, byte [edi]
test edx, edx
je 0x42246c
cmp ebx, 0xc0
jb 0x42246c
test bl, 0x20
jne 0x4223ce
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x422464
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4223ed
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x422464
and eax, 0x3f
test bl, 8
jne 0x42240d
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x422464
test bl, 4
jne 0x422436
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 0x422464
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42248e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp eax, 9
je 0x4224b3
cmp eax, 5
je 0x4224b3
cmp eax, 8
je 0x4224b3
xor eax, eax
jmp 0x4224b8
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4232a8
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 0x422390
jmp 0x4232a8
cmp dword [ebp + 0x88], 0
je 0x4232a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4232a8
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x4232a8
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424820
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
jmp 0x422550
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4226d2
movzx ebx, byte [edi]
test edx, edx
je 0x422653
cmp ebx, 0xc0
jb 0x422653
test bl, 0x20
jne 0x42259a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x42264b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x4225c2
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x42264b
and eax, 0x3f
test bl, 8
jne 0x4225e8
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 0x42264b
test bl, 4
jne 0x422617
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 0x42264b
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x422675
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4232a8
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 0x422550
jmp 0x4232a8
cmp dword [ebp + 0x88], 0
je 0x4232a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4232a8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jmp 0x422513
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4226d2
movzx ebx, byte [edi]
test edx, edx
je 0x42281f
cmp ebx, 0xc0
jb 0x42281f
test bl, 0x20
jne 0x422766
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x422817
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42278e
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x422817
and eax, 0x3f
test bl, 8
jne 0x4227b4
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 0x422817
test bl, 4
jne 0x4227e3
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 0x422817
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x422841
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4232a8
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 0x422720
jmp 0x4232a8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4226d2
movzx ebx, byte [edi]
test edx, edx
je 0x4229b3
cmp ebx, 0xc0
jb 0x4229b3
test bl, 0x20
jne 0x4228fa
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x4229ab
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x422922
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x4229ab
and eax, 0x3f
test bl, 8
jne 0x422948
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 0x4229ab
test bl, 4
jne 0x422977
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 0x4229ab
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4229d5
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4232a8
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 0x4228b0
jmp 0x4232a8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4224ee
movzx ebx, byte [edi]
test edx, edx
je 0x422b23
cmp ebx, 0xc0
jb 0x422b23
test bl, 0x20
jne 0x422a82
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov ecx, 2
jmp 0x422b1b
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x422aa4
and ebx, 0xf
shl ebx, 6
or ebx, ecx
mov ecx, 3
jmp 0x422b1b
and eax, 0x3f
test bl, 8
jne 0x422ac4
and ebx, 7
shl ebx, 6
or ebx, ecx
mov ecx, 4
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x422b1b
test bl, 4
jne 0x422aed
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 0x422b1b
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x422b45
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x422b6c
cmp eax, 3
je 0x422b6c
xor eax, eax
jmp 0x422b71
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4232a8
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 0x422a44
jmp 0x4232a8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4226d2
movzx ebx, byte [edi]
test edx, edx
je 0x422ccd
cmp ebx, 0xc0
jb 0x422ccd
test bl, 0x20
jne 0x422c12
movzx eax, byte [edi + 1]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
mov dword [esp + 0x84], 2
jmp 0x422ccd
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x422c3a
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ecx, ebx
jmp 0x422cc3
and eax, 0x3f
test bl, 8
jne 0x422c60
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 0x422cc3
test bl, 4
jne 0x422c8f
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 0x422cc3
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 0x422d10
je case.0x422d30.8192
cmp ebx, 0x85
ja 0x422cfc
je case.0x422d30.8192
cmp ebx, 9
jb case.0x422d30.8203
cmp ebx, 0xd
jbe case.0x422d30.8192
cmp ebx, 0x20
jmp 0x422d45
cmp ebx, 0xa0
je case.0x422d30.8192
cmp ebx, 0x1680
jmp 0x422d45
cmp ebx, 0x202f
ja 0x422d37
je case.0x422d30.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x422d30.8203
movzx eax, byte [eax + 0x429160]
jmp dword [eax*4 + 0x429158]
cmp ebx, 0x205f
je case.0x422d30.8192
cmp ebx, 0x3000
je case.0x422d30.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x422d69
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp dword [eax*4 + 0x4dcdd0], 6
sete cl
cmp ecx, dword [esi + 0x68]
je 0x4232a8
mov edx, dword [esp + 0x8c]
jmp 0x422da4
cmp dword [esi + 0x68], 0
jne 0x4232a8
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 0x422bc0
jmp 0x4232a8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x90], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
lea esp, [esp]
mov edi, dword [esi + 8]
mov dword [esp + 0x84], 1
cmp edi, dword [ebp + 0x78]
jae 0x4226d2
movzx ebx, byte [edi]
test edx, edx
je 0x422ef3
cmp ebx, 0xc0
jb 0x422ef3
test bl, 0x20
jne 0x422e3a
movzx eax, byte [edi + 1]
and ebx, 0x1f
mov dword [esp + 0x84], 2
jmp 0x422eeb
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x422e62
and ebx, 0xf
mov dword [esp + 0x84], 3
shl ebx, 6
or ebx, ecx
jmp 0x422eeb
and eax, 0x3f
test bl, 8
jne 0x422e88
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 0x422eeb
test bl, 4
jne 0x422eb7
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 0x422eeb
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 + 0x4de640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x422f16
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x422f42
cmp eax, 3
je 0x422f42
cmp ebx, 0x5f
je 0x422f42
xor eax, eax
jmp 0x422f47
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x4232a8
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 0x422df0
jmp 0x4232a8
mov eax, dword [esi + 0x90]
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x8c]
jge 0x4232a8
lea esp, [esp]
mov edi, dword [esi + 8]
mov ebx, 1
cmp edi, dword [ebp + 0x78]
jae 0x4230df
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x423081
cmp edx, 0xc0
jb 0x423081
test dl, 0x20
jne 0x422fe4
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ebx, 2
jmp 0x423079
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423003
and edx, 0xf
mov ebx, 3
shl edx, 6
or edx, ecx
jmp 0x423079
and eax, 0x3f
test dl, 8
jne 0x423023
and edx, 7
mov ebx, 4
shl edx, 6
or edx, ecx
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423079
test dl, 4
jne 0x42304c
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 0x423079
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 + 0x4dce80]
lea eax, [eax*4 + 0x4dce80]
cmp edx, ecx
jb 0x4230a3
lea eax, [eax + 4]
cmp edx, ecx
je 0x4230d3
mov ecx, dword [eax]
cmp edx, ecx
jae 0x423096
cmp dword [esi + 0x68], 0
je 0x4232a8
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 0x422fa0
jmp 0x4232a8
cmp dword [esi + 0x68], 0
jne 0x4232a8
jmp 0x4230ad
cmp dword [ebp + 0x88], 0
je 0x4232a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4232a8
mov dword [ebp + 0x64], ebx
cmp dword [ebp + 0x88], ebx
jle 0x4232a8
jmp 0x41bf26
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4232a8
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x423280
cmp dword [esp + 0x8c], 0
movzx edx, byte [edi]
je 0x423237
cmp edx, 0xc0
jb 0x423237
test dl, 0x20
jne 0x42316d
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x423237
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x423197
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 0x423237
test dl, 8
jne 0x4231c3
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 0x423237
test dl, 4
jne 0x4231fb
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 0x423237
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 0x423262
cmp edx, 0x40
je 0x423262
cmp edx, 0x60
je 0x423262
cmp edx, 0xa0
jb 0x423256
cmp edx, 0xd7ff
jbe 0x423262
cmp edx, 0xe000
jae 0x423262
xor ecx, ecx
jmp 0x423267
mov ecx, 1
cmp ecx, dword [esi + 0x68]
je 0x4232a8
add eax, edi
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423121
jmp 0x4232a8
cmp dword [ebp + 0x88], 0
je 0x4232a8
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4232a8
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
je 0x42775c
jmp 0x41afba
mov eax, dword [esi + 0x7c]
cmp eax, 0x16
jne 0x423657
mov edi, dword [esi + 0x90]
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jge 0x423608
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x4235e0
movzx ebx, byte [edx]
inc edx
mov ecx, dword [esp + 0x8c]
mov dword [esi + 8], edx
test ecx, ecx
je 0x4233e0
cmp ebx, 0xc0
jb 0x4233e0
test bl, 0x20
jne 0x423329
movzx eax, byte [edx]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edx + 1]
jmp 0x4233dd
movzx ecx, byte [edx]
movzx eax, byte [edx + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x423350
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
lea eax, [edx + 2]
jmp 0x4233d6
test bl, 8
jne 0x423373
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 0x4233d6
test bl, 4
jne 0x4233a2
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 0x4233d6
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x423402
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc2]
mov dword [esp + 0x84], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x42359d
jmp 0x423430
mov eax, dword [esi + 8]
mov edi, 1
movzx ebx, byte [eax]
test ecx, ecx
je 0x42352e
cmp ebx, 0xc0
jb 0x42352e
test bl, 0x20
jne 0x423465
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x423526
test bl, 0x10
jne 0x42348a
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 0x423526
test bl, 8
jne 0x4234b8
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 0x423526
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x4234f2
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 0x423526
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x423550
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x84]
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx ecx, byte [eax*8 + 0x4dcfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dce48], eax
je 0x423596
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 0x423430
mov edi, dword [esp + 0x90]
cmp dword [ebp + 0x88], 0
je 0x4235ca
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4235ca
cmp eax, dword [ebp + 0x84]
jbe 0x4235ca
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc edi
mov dword [esp + 0x90], edi
cmp edi, dword [esi + 0x8c]
jl 0x4232e0
jmp 0x423608
cmp dword [ebp + 0x88], 0
je 0x423608
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x423608
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
cmp dword [esp + 0x80], 0
jne 0x41afba
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b85
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428b7b
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
add eax, 0xfffffffa
test edx, edx
je 0x42435e
cmp eax, 0xf
ja case.0x424367.9
jmp dword [eax*4 + 0x42918c]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x423746
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4236b9
push dword [esp + 0x8c]
push edi
push eax
push edx
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x42434b
jmp 0x4236dd
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4236dd
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4236dd
cmp edx, 1
je 0x42434b
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x42434b
cmp dword [ebp + 0x88], 0
je 0x423718
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x423718
cmp dword [ebp + 0x18], 0
jne 0x423718
cmp dword [edi], 2
jne 0x423718
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x423718
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc dword [esi + 8]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x423734
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x423734
inc ecx
mov dword [esi + 8], ecx
cmp ecx, dword [ebp + 0x78]
jb 0x423723
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x423684
jmp 0x42434b
cmp dword [ebp + 0x88], 0
je 0x42434b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42434b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42434b
jmp 0x41bf26
mov eax, dword [esi + 0x8c]
cmp eax, 0x7fffffff
jge 0x4237d8
mov edi, dword [esi + 0x90]
cmp edi, eax
jge 0x42434b
mov edx, dword [ebp + 0x78]
lea esp, [esp]
mov eax, dword [esi + 8]
cmp eax, edx
jae 0x423746
inc eax
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jae 0x4237ca
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4237ca
lea eax, [ecx + 1]
mov dword [esi + 8], eax
mov edx, dword [ebp + 0x78]
cmp eax, edx
jb 0x4237b2
inc edi
cmp edi, dword [esi + 0x8c]
jl 0x4237a0
jmp 0x42434b
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x42434b
cmp eax, dword [ebp + 0x84]
jbe 0x42434b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42434b
jmp 0x422519
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 0x42385f
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x42434b
cmp edx, dword [ebp + 0x84]
jbe 0x42434b
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x42434b
jmp 0x41bf26
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
lea esp, [esp]
mov edi, dword [esi + 8]
mov eax, 1
cmp edi, dword [ebp + 0x78]
jae 0x423746
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x42398a
test dl, 0x20
jne 0x4238be
movzx eax, byte [edi + 1]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
mov eax, 2
jmp 0x42398a
movzx ecx, byte [edi + 1]
and ecx, 0x3f
test dl, 0x10
jne 0x4238e8
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 0x423988
test dl, 8
jne 0x423914
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 0x423988
test dl, 4
jne 0x42394c
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 0x423988
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 0x4239a6
lea eax, [edi + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x42434b
cmp byte [eax], 0xa
jne 0x4239e0
inc eax
jmp 0x4239dd
cmp edx, 0xa
je 0x4239db
cmp dword [ebp + 0x68], 0
jne 0x42434b
cmp edx, 0xb
je 0x4239db
cmp edx, 0xc
je 0x4239db
cmp edx, 0x85
je 0x4239db
cmp edx, 0x2028
je 0x4239db
cmp edx, 0x2029
jne 0x42434b
add eax, edi
mov dword [esi + 8], eax
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x423880
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423ad8
test dl, 0x20
jne 0x423a3a
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x423ad0
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423a59
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x423ad0
and eax, 0x3f
test dl, 8
jne 0x423a79
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423ad0
test dl, 4
jne 0x423aa2
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 0x423ad0
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 0x423afe
je 0x423b2c
cmp edx, 0xa0
ja 0x423af6
je 0x423b2c
cmp edx, 9
je 0x423b2c
cmp edx, 0x20
jmp 0x423b26
cmp edx, 0x1680
jmp 0x423b26
cmp edx, 0x205f
ja 0x423b20
je 0x423b2c
cmp edx, 0x2000
jb 0x423b28
cmp edx, 0x200a
jbe 0x423b2c
cmp edx, 0x202f
jmp 0x423b26
cmp edx, 0x3000
je 0x423b2c
xor edx, edx
jmp 0x423b31
mov edx, 1
xor eax, eax
cmp dword [esi + 0x7c], 0x12
sete al
cmp edx, eax
je 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423a04
jmp 0x42434b
cmp dword [ebp + 0x88], 0
je 0x42434b
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x42434b
mov dword [ebp + 0x64], ecx
cmp dword [ebp + 0x88], ecx
jle 0x42434b
jmp 0x41bf26
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
lea esp, [esp]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423c70
test dl, 0x20
jne 0x423bd2
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x423c68
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423bf1
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x423c68
and eax, 0x3f
test dl, 8
jne 0x423c11
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423c68
test dl, 4
jne 0x423c3a
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 0x423c68
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 0x423caf
je 0x423cba
cmp edx, 0xa
jb 0x423c84
cmp edx, 0xd
jbe 0x423cba
xor edx, edx
xor eax, eax
cmp dword [esi + 0x7c], 0x14
sete al
cmp edx, eax
je 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423ba0
jmp 0x42434b
lea eax, [edx - 0x2028]
cmp eax, 1
ja 0x423c84
mov edx, 1
jmp 0x423c86
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423da7
test dl, 0x20
jne 0x423d09
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x423d9f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423d28
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x423d9f
and eax, 0x3f
test dl, 8
jne 0x423d48
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423d9f
test dl, 4
jne 0x423d71
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 0x423d9f
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 0x423dbc
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jne 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423cd3
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
jmp 0x423df0
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423ec4
test dl, 0x20
jne 0x423e26
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x423ebc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423e45
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x423ebc
and eax, 0x3f
test dl, 8
jne 0x423e65
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423ebc
test dl, 4
jne 0x423e8e
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 0x423ebc
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 0x42434b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423df0
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
jmp 0x423f10
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x423fe4
test dl, 0x20
jne 0x423f46
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x423fdc
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x423f65
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x423fdc
and eax, 0x3f
test dl, 8
jne 0x423f85
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x423fdc
test dl, 4
jne 0x423fae
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 0x423fdc
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 0x423ff9
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jne 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x423f10
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x4240f7
test dl, 0x20
jne 0x424059
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x4240ef
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x424078
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x4240ef
and eax, 0x3f
test dl, 8
jne 0x424098
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x4240ef
test dl, 4
jne 0x4240c1
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 0x4240ef
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 0x42434b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424023
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
lea ebx, [ebx]
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x424214
test dl, 0x20
jne 0x424176
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42420c
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x424195
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42420c
and eax, 0x3f
test dl, 8
jne 0x4241b5
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42420c
test dl, 4
jne 0x4241de
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 0x42420c
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 0x424229
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424140
jmp 0x42434b
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x42434b
mov edi, dword [esi + 8]
mov ecx, 1
cmp edi, dword [ebp + 0x78]
jae 0x423b5a
movzx edx, byte [edi]
cmp edx, 0xc0
jb 0x424327
test dl, 0x20
jne 0x424289
movzx eax, byte [edi + 1]
and edx, 0x1f
mov ecx, 2
jmp 0x42431f
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test dl, 0x10
jne 0x4242a8
and edx, 0xf
shl edx, 6
or edx, ecx
mov ecx, 3
jmp 0x42431f
and eax, 0x3f
test dl, 8
jne 0x4242c8
and edx, 7
shl edx, 6
or edx, ecx
mov ecx, 4
shl edx, 6
or edx, eax
movzx eax, byte [edi + 3]
jmp 0x42431f
test dl, 4
jne 0x4242f1
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 0x42431f
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 0x42434b
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je 0x42434b
lea eax, [ecx + edi]
inc ebx
mov dword [esi + 8], eax
cmp ebx, dword [esi + 0x8c]
jl 0x424253
cmp dword [esp + 0x80], 0
je 0x426c18
jmp 0x41afba
cmp eax, 0xf
ja case.0x424367.9
jmp dword [eax*4 + 0x4291cc]
mov ebx, dword [esi + 0x90]
cmp ebx, dword [esi + 0x8c]
jge 0x4247f7
mov ecx, dword [esi + 8]
mov eax, dword [ebp + 0x78]
cmp ecx, eax
jae 0x424424
mov edx, dword [ebp + 0x18]
lea edi, [ebp + 0x1c]
test edx, edx
je 0x4243b0
push 0
push edi
push eax
push edx
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x4247f7
jmp 0x4243d4
mov edx, dword [edi]
sub eax, edx
cmp ecx, eax
ja 0x4243d4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4243d4
cmp edx, 1
je 0x4247f7
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x4247f7
cmp dword [ebp + 0x88], 0
je 0x42440f
mov eax, dword [esi + 8]
inc eax
cmp eax, dword [ebp + 0x78]
jb 0x42440f
cmp dword [ebp + 0x18], 0
jne 0x42440f
cmp dword [edi], 2
jne 0x42440f
mov eax, dword [esi + 8]
mov al, byte [eax]
cmp al, byte [ebp + 0x34]
jne 0x42440f
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc dword [esi + 8]
inc ebx
cmp ebx, dword [esi + 0x8c]
jl 0x424380
jmp 0x4247f7
cmp dword [ebp + 0x88], 0
je 0x4247f7
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x84]
jbe 0x4247f7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4247f7
jmp 0x41bf26
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 0x4244a8
mov dword [esi + 8], edx
cmp dword [ebp + 0x88], 0
je 0x4247f7
cmp edx, dword [ebp + 0x84]
jbe 0x4247f7
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4247f7
jmp 0x41bf26
lea eax, [ecx + edi]
mov dword [esi + 8], eax
jmp 0x4247f7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4247f7
jmp 0x4244d0
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x424424
movzx eax, byte [ecx]
cmp eax, 0xd
jne 0x4244fb
lea eax, [ecx + 1]
mov dword [esi + 8], eax
cmp eax, dword [ebp + 0x78]
jae 0x4247f7
cmp byte [eax], 0xa
jne 0x424525
inc eax
jmp 0x424522
cmp eax, 0xa
je 0x42451f
cmp dword [ebp + 0x68], 0
jne 0x4247f7
cmp eax, 0xb
je 0x42451f
cmp eax, 0xc
je 0x42451f
cmp eax, 0x85
jne 0x4247f7
lea eax, [ecx + 1]
mov dword [esi + 8], eax
inc edx
cmp edx, dword [esi + 0x8c]
jl 0x4244d0
jmp 0x4247f7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4247f7
jmp 0x424550
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x424424
mov al, byte [ecx]
cmp al, 9
je 0x4247f7
cmp al, 0x20
je 0x4247f7
cmp al, 0xa0
je 0x4247f7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x424550
jmp 0x4247f7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4247f7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x424424
mov al, byte [ecx]
cmp al, 9
je 0x4245be
cmp al, 0x20
je 0x4245be
cmp al, 0xa0
jne 0x4247f7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4245a0
jmp 0x4247f7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4247f7
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x424424
mov al, byte [ecx]
cmp al, 0xa
jb 0x424606
cmp al, 0xd
jbe 0x4247f7
cmp al, 0x85
je 0x4247f7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x4245e4
jmp 0x4247f7
mov edx, dword [esi + 0x90]
cmp edx, dword [esi + 0x8c]
jge 0x4247f7
lea esp, [esp]
mov ecx, dword [esi + 8]
cmp ecx, dword [ebp + 0x78]
jae 0x424424
mov al, byte [ecx]
cmp al, 0xa
jb 0x4247f7
cmp al, 0xd
jbe 0x424652
cmp al, 0x85
jne 0x4247f7
lea eax, [ecx + 1]
inc edx
mov dword [esi + 8], eax
cmp edx, dword [esi + 0x8c]
jl 0x424630
jmp 0x4247f7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4247f7
jmp 0x424680
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424424
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jne 0x4247f7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x424680
jmp 0x4247f7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4247f7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424424
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je 0x4247f7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4246c2
jmp 0x4247f7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4247f7
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424424
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jne 0x4247f7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x424704
jmp 0x4247f7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4247f7
jmp 0x424750
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424424
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je 0x4247f7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x424750
jmp 0x4247f7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4247f7
jmp 0x424790
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424424
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne 0x4247f7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x424790
jmp 0x4247f7
mov edi, dword [esi + 0x90]
cmp edi, dword [esi + 0x8c]
jge 0x4247f7
jmp 0x4247d0
mov edx, dword [esi + 8]
cmp edx, dword [ebp + 0x78]
jae 0x424424
movzx ecx, byte [edx]
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je 0x4247f7
lea eax, [edx + 1]
inc edi
mov dword [esi + 8], eax
cmp edi, dword [esi + 0x8c]
jl 0x4247d0
cmp dword [esp + 0x80], 0
je 0x42585a
jmp 0x41afba
mov esi, dword [esi]
test esi, esi
je 0x428cd1
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.0x424834
jmp dword [eax*4 + 0x42920c]
cmp edi, 0xfffffc1b
je 0x424906
cmp edi, 0xfffffc20
jne 0x424883
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.0x424834.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42487f
cmp byte [ecx], 0x77
jne case.0x424834.49
xor edi, edi
jmp 0x42488b
test edi, edi
jne case.0x424834.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 0x424906
cmp dword [esi + 0x9c], 0x88
jb 0x4248d1
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x42865a
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x428650
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
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 0x424cfc
mov edx, dword [esp + 0x8c]
jmp 0x424824
cmp edi, 0xfffffc20
jne 0x4249c3
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 0x424a11
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42498e
cmp byte [ecx], 0x77
jne 0x424a11
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 0x424a27
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424824
test edi, edi
je 0x42498e
cmp edi, 0xfffffc1b
jne 0x424a11
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x81
je 0x424a03
cmp al, 0x77
jne 0x4249f4
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 0x4249e0
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 0x424cfc
mov edx, dword [esp + 0x8c]
jmp 0x424824
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
mov eax, dword [esi + 0x9c]
cmp eax, 0x88
jae 0x424a79
cmp eax, 0x81
je 0x424a79
cmp dword [ebp + 0x6c], 0
jne 0x424a83
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 0x424a83
mov ecx, edx
movzx eax, byte [ecx]
movzx eax, byte [eax + 0x4dccb8]
add eax, ecx
mov dword [esi + 0xc], eax
jmp 0x41af40
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 0x42867c
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x428672
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
cmp edi, 1
jne 0x424b43
mov eax, dword [ebp + 0x8c]
cmp eax, dword [esi + 0x14]
jle 0x424ae0
mov dword [esi + 0x14], eax
mov dword [esi + 0x58], 1
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x92
jne 0x424af3
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 0x424b29
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 0x424b10
mov edx, dword [esp + 0x88]
mov ecx, 3
movzx eax, byte [edx + 0x4dccb8]
sub ecx, eax
add dword [esi + 0xc], ecx
jmp case.0x41b3ee.145
test edi, edi
je 0x424b53
cmp edi, 0xfffffc20
jne case.0x424834.49
mov edx, dword [esp + 0x88]
cmp dword [esi + 0x58], 0
je 0x424b69
movzx eax, byte [edx + 0x4dccb8]
jmp 0x424b6c
mov eax, dword [esi + 0x78]
add dword [esi + 0xc], eax
cmp dword [esi + 0x58], 0
mov eax, dword [esi + 0xc]
jne 0x424b89
cmp byte [eax - 3], 0x77
mov edi, dword [esp + 0x8c]
jne 0x41afc1
cmp dword [esi + 0x9c], 0x8c
jne 0x41af40
mov dword [ebp + 0x98], 2
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42869e
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428694
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
cmp edi, 1
je 0x424c82
cmp edi, 0xfffffc19
je 0x424c82
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jne 0x424c2a
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.0x424834.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x424c32
cmp byte [ecx], 0x77
jmp 0x424c2c
test edi, edi
jne case.0x424834.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 0x424c88
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4286b7
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4286ad
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x78
jne 0x424ca1
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424824
cmp dword [esi + 0x58], 0
je 0x4282de
mov esi, dword [esi]
test esi, esi
je 0x428c76
mov edi, 1
jmp 0x424824
mov eax, dword [esi + 0x28]
mov dword [ebp + 0xac], eax
cmp edi, 0xfffffc20
jg 0x424d6d
je 0x424d06
cmp edi, 0xfffffc19
je 0x4255a3
cmp edi, 0xfffffc1b
jle case.0x424834.49
cmp edi, 0xfffffc1f
jle 0x424d2e
mov esi, dword [esi]
test esi, esi
jne 0x424824
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 0x424d2e
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x424d80
cmp byte [ecx], 0x77
je 0x424d80
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 0x424d31
cmp dword [esi + 0x58], 0
je 0x424fb7
mov esi, dword [esi]
test esi, esi
je 0x428c76
mov edx, dword [esp + 0x8c]
mov edi, 1
jmp 0x424824
mov eax, edi
sub eax, 0
je 0x424d80
dec eax
je 0x4255a3
jmp case.0x424834.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 0x424d48
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4286cd
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4286c3
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov eax, dword [esi + 0x48]
shl eax, 2
push eax
push dword [esi + 0x44]
push dword [ebp + 0xc]
call sub.MSVCRT.dll_memcpy
mov eax, dword [esi + 0x4c]
lea ebx, [esi + 0x3c]
mov dword [ebp + 0x90], eax
add esp, 0xc
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
cmp edi, 1
je 0x42830c
cmp edi, 0xfffffc19
je 0x42830c
lea eax, [edi + 0x3e4]
cmp eax, 4
ja 0x424e39
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x41bdbb
push ecx
call dword [0x51f37c]
add esp, 4
jmp 0x41bdbb
test edi, edi
je 0x424e63
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x424e54
push ecx
call dword [0x51f37c]
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x424cfc
jmp 0x424819
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 0x424ec9
cmp dword [esi + 0x58], 0
je 0x424e94
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x428713
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x428709
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov eax, dword [ebx]
mov dword [ebp + 0xa4], eax
jmp 0x424e19
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x34]
mov al, byte [eax]
cmp al, 0x81
jne 0x424f23
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428761
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428757
mov esi, dword [esi]
test esi, esi
je 0x428c2b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x424824
cmp al, 0x88
jb 0x428464
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428783
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428779
mov esi, dword [esi]
test esi, esi
je 0x428c2b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x424824
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x34]
mov dword [ebp + 0xb4], eax
mov esi, dword [esi]
test esi, esi
je 0x428c83
mov edi, 0xfffffc1b
jmp 0x424824
test edi, edi
jne case.0x424834.49
mov edx, dword [esi + 0x2c]
jmp 0x424fa0
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 0x424fa0
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
jmp 0x41afba
test edi, edi
je 0x41c834
jmp case.0x424834.49
test edi, edi
je 0x424f6f
jmp case.0x424834.49
cmp edi, 0xfffffc1b
jne 0x424feb
mov eax, dword [ebp + 0xb4]
cmp eax, dword [esi + 0x34]
jmp 0x424fed
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x34]
cmp byte [eax], 0x81
jne 0x425ddb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4287a5
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42879b
mov esi, dword [esi]
test esi, esi
je 0x428c2b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x424824
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425060
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
push ebx
push ebp
push dword [esi + 0x88]
push edi
push dword [esi + 0x98]
call fcn.00429460
add esp, 0x14
test eax, eax
jns 0x4250c7
cmp eax, 0xfffffffe
jne 0x425089
mov eax, dword [ebp + 0x78]
mov dword [esi + 8], eax
cmp dword [ebp + 0x88], 0
je 0x426ba1
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x426ba1
cmp eax, dword [ebp + 0x84]
jbe 0x426ba1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ddde
jmp 0x426ba1
add eax, edi
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4287ca
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4287c0
mov esi, dword [esi]
test esi, esi
je 0x428c2b
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffffa
jmp 0x424824
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x88]
sub dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb case.0x421f46.14
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4287e3
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4287d9
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425187
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x426c86
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 0x426ba1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4287fc
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4287f2
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jb 0x41bdbb
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428815
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42880b
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425261
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x426c86
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x425291
cmp dword [esi + 0x94], ecx
je 0x425291
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424824
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x42882e
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428824
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
dec dword [esi + 8]
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428847
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42883d
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425341
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x426c86
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
jne 0x426ba1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428860
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428856
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
dec dword [esi + 8]
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428879
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42886f
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42540e
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x426c86
movzx ecx, byte [eax]
cmp dword [esi + 0x80], ecx
je 0x4255a3
cmp dword [esi + 0x94], ecx
je 0x4255a3
inc eax
mov dword [esi + 8], eax
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428892
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428888
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4288ab
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4288a1
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4254e5
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x426c86
movzx edx, byte [eax]
inc eax
mov ecx, dword [esi + 0x80]
mov dword [esi + 8], eax
cmp ecx, edx
je 0x426ba1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4288c1
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4288b7
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4288d7
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4288cd
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4255b4
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424824
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x4255fb
cmp dword [ebp + 0x88], 0
je 0x4255e3
cmp ecx, dword [ebp + 0x84]
jbe 0x4255e3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ddde
mov esi, dword [esi]
test esi, esi
je 0x428c38
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x424824
cmp dword [esi + 0x7c], 0xc
jne 0x425622
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x425644
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x425661
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.0x42563d.15
jmp dword [eax*4 + 0x429318]
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x425622
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x425622
cmp edi, 1
je 0x425661
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
jne 0x425622
mov esi, dword [esi]
test esi, esi
je 0x428c38
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x424824
cmp dword [ebp + 0x88], 0
je case.0x42563d.13
cmp edx, dword [ebp + 0x78]
jb case.0x42563d.13
cmp dword [ebp + 0x18], 0
jne case.0x42563d.13
cmp dword [ebp + 0x1c], 2
jne case.0x42563d.13
movzx eax, byte [ebp + 0x34]
cmp ecx, eax
jne case.0x42563d.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ddde
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4288ed
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4288e3
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
add ecx, 0xfffffff6
cmp ecx, 0x7b
ja case.0x4256fd.14
movzx eax, byte [ecx + 0x429368]
jmp dword [eax*4 + 0x429358]
cmp edx, dword [ebp + 0x78]
jae case.0x42563d.13
cmp byte [edx], 0xa
jne case.0x42563d.13
lea eax, [edx + 1]
mov dword [esi + 8], eax
jmp case.0x42563d.13
cmp dword [ebp + 0x68], 0
je case.0x42563d.13
jmp case.0x4256fd.14
cmp ecx, 9
je case.0x4256fd.14
cmp ecx, 0x20
je case.0x4256fd.14
cmp ecx, 0xa0
jmp 0x4257fa
cmp ecx, 9
je case.0x42563d.13
cmp ecx, 0x20
je case.0x42563d.13
cmp ecx, 0xa0
je case.0x42563d.13
jmp case.0x4256fd.14
cmp ecx, 0xa
jb case.0x42563d.13
cmp ecx, 0xd
jbe case.0x4256fd.14
cmp ecx, 0x85
jmp 0x4257fa
cmp ecx, 0xa
jb case.0x4256fd.14
cmp ecx, 0xd
jbe case.0x42563d.13
cmp ecx, 0x85
je case.0x42563d.13
jmp case.0x4256fd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
je case.0x42563d.13
jmp case.0x4256fd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 4
jmp 0x4257fa
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
je case.0x42563d.13
jmp case.0x4256fd.14
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 1
jmp 0x4257fa
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
je case.0x42563d.13
mov esi, dword [esi]
test esi, esi
je 0x428c38
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x424824
mov eax, dword [ebp + 0x40]
test byte [ecx + eax], 0x10
jne case.0x42563d.13
mov esi, dword [esi]
test esi, esi
je 0x428c38
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x424824
mov esi, dword [esi]
test esi, esi
je case.default.0x424834
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x424824
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
cmp dword [esi + 0x7c], 0x11
mov eax, dword [esi + 8]
jne 0x42585a
cmp eax, dword [esi + 0x30]
jbe 0x42585a
cmp byte [eax], 0xa
jne 0x42585a
cmp byte [eax - 1], 0xd
jne 0x42585a
dec dword [esi + 8]
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
je 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428903
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4288f9
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
cmp edi, 0xfffffc1a
jne 0x4258f1
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 0x4258e9
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 0x4258d0
jmp 0x425948
mov dword [esi + 8], eax
jmp 0x42596d
cmp edi, 0xfffffc20
jne 0x425925
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.0x424834.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x42592d
cmp byte [ecx], 0x77
jmp 0x425927
test edi, edi
jne case.0x424834.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 0x425961
cmp dword [esi + 0x5c], 0
jne 0x424fb7
cmp dword [esi + 0x54], 0
jne 0x424fb7
jmp 0x426ba1
mov eax, dword [esi + 0xa0]
mov dword [ebp + 0x90], eax
cmp dword [esi + 0x9c], 0x88
jb 0x425983
mov dword [ebp + 0x98], 2
mov edx, dword [esi + 4]
test edx, edx
jne 0x428945
push 0x134
call dword [0x51f380]
mov edx, eax
add esp, 4
test edx, edx
jne 0x42893b
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
mov esi, dword [esi]
test edi, edi
jne 0x424cf4
test esi, esi
je 0x428c9d
mov edi, 0xfffffc1c
jmp 0x424824
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x428cb7
mov edi, 0xfffffc1e
jmp 0x424824
cmp edi, 1
je 0x425a03
cmp edi, 0xfffffc19
jne 0x425a1d
cmp dword [ebp + 0xac], 0
jne 0x425a1d
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
jmp 0x424a11
cmp edi, 0xfffffc1f
jne 0x424a11
mov eax, dword [esi + 0xc]
mov ecx, dword [ebp + 0x7c]
add eax, 2
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x425a52
test dl, dl
je 0x425a4e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x425a52
add eax, 2
add ecx, 2
test dl, dl
jne 0x425a32
xor eax, eax
jmp 0x425a57
sbb eax, eax
or eax, 1
test eax, eax
jne 0x424a11
mov eax, dword [esi + 8]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x428cb7
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffc1e
jmp 0x424824
cmp edi, 1
je 0x425a8d
cmp edi, 0xfffffc19
jne case.0x424834.51
cmp dword [ebp + 0xac], 0
jne case.0x424834.51
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
mov esi, dword [esi]
test edi, edi
jne 0x424cf4
test esi, esi
je 0x428c90
mov edi, 0xfffffc1d
jmp 0x424824
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x428cc4
mov edi, 0xfffffc1f
jmp 0x424824
cmp edi, 1
je 0x425af0
cmp edi, 0xfffffc19
jne case.0x424834.54
cmp dword [ebp + 0xac], 0
jne case.0x424834.54
mov eax, dword [esi + 0xc]
add eax, 2
mov dword [ebp + 0xac], eax
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0xc]
mov dword [ebp + 0x7c], eax
mov esi, dword [esi]
test esi, esi
je 0x428caa
mov edi, 0xfffffc20
jmp 0x424824
cmp edi, 0xfffffc1a
jne 0x425b91
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 0x425b89
mov edx, dword [esi + 0xc]
jmp 0x425b70
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 0x425b70
jmp 0x425bf8
mov dword [esi + 8], eax
jmp 0x41baf2
cmp edi, 0xfffffc20
jne 0x425bc5
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.0x424834.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x425bcd
cmp byte [ecx], 0x77
jmp 0x425bc7
test edi, edi
jne case.0x424834.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 0x41baf2
cmp dword [esi + 0x5c], 0
jne 0x425c38
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 0x41afb6
cmp dword [esi + 0x5c], 0
jne 0x41afb6
jmp 0x426ba1
cmp edi, 1
jne 0x425cf4
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
mov edx, dword [esi + 0xc]
mov al, byte [edx]
cmp al, 0x82
je 0x425c71
cmp al, 0x77
jne 0x426ba1
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 0x425c71
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 0x41afb6
cmp ecx, dword [esi + 0x38]
je 0x41afb6
mov ecx, dword [esi + 4]
cmp al, 0x7a
jne 0x425d8d
test ecx, ecx
jne 0x4289ae
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4289a4
mov esi, dword [esi]
test esi, esi
je 0x428c2b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x424824
cmp edi, 0xfffffc20
jne 0x425d28
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.0x424834.49
mov eax, dword [esi + 0xc]
cmp byte [eax], 0x77
je 0x425d30
cmp byte [ecx], 0x77
jmp 0x425d2a
test edi, edi
jne case.0x424834.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 0x425c60
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428989
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x42897f
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test ecx, ecx
jne 0x4289d3
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4289c9
mov esi, dword [esi]
test esi, esi
je 0x428c2b
mov edx, dword [esp + 0x8c]
lea edi, [eax - 6]
jmp 0x424824
test edi, edi
je 0x428464
jmp case.0x424834.49
test edi, edi
jne case.0x424834.49
add dword [esi + 0xc], 3
jmp 0x41af40
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425e09
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x425f0a
cmp ebx, 0xc0
jb 0x425f0a
test bl, 0x20
jne 0x425e4b
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x425f07
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x425e75
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x425f0a
mov edx, dword [esi + 8]
test bl, 8
jne 0x425e9b
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 0x425efe
test bl, 4
jne 0x425eca
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 0x425efe
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.0042a6e0
add esp, 0xc
test eax, eax
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4289f5
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x4289eb
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x426ba1
cmp dword [esp + 0x8c], edi
je 0x425f91
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x425f91
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x425f85
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428a0e
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a04
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x425feb
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x4260e0
test bl, 0x20
jne 0x426025
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4260dd
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x42604f
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x4260e0
mov edx, dword [esi + 8]
test bl, 8
jne 0x426078
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 0x4260db
test bl, 4
jne 0x4260a7
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 0x4260db
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 0x4260f6
cmp dword [esi + 0x9c], 0x6e
jne 0x426113
jmp 0x41bdbb
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 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428a27
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a1d
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov ecx, dword [esi + 8]
lea edx, [ecx - 1]
mov dword [esi + 8], edx
cmp ecx, dword [esi + 0x30]
jbe 0x41bdbb
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
jne 0x42617c
dec edx
mov dword [esi + 8], edx
mov al, byte [edx]
and al, 0xc0
cmp al, 0x80
je 0x426170
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428a40
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a36
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4261d6
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
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 0x426245
mov edx, dword [esi + 0x24]
mov ecx, ebx
sub edi, 4
jb 0x426205
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42620a
add ecx, 4
add edx, 4
sub edi, 4
jae 0x4261f4
cmp edi, 0xfffffffc
je 0x426237
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x426242
cmp edi, 0xfffffffd
je 0x426237
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x426242
cmp edi, 0xfffffffe
je 0x426237
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x426242
cmp edi, 0xffffffff
je 0x426237
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x426242
mov eax, dword [esi + 0x88]
jmp 0x4262b0
mov ecx, dword [ebp + 0x78]
mov edi, dword [esi + 0x6c]
test edi, edi
jle 0x4262f0
mov eax, ecx
sub eax, edi
cmp ebx, eax
ja 0x4262f0
lea edx, [esi + 0x70]
mov ecx, ebx
sub edi, 4
jb 0x426277
mov eax, dword [ecx]
cmp eax, dword [edx]
jne 0x42627c
add ecx, 4
add edx, 4
sub edi, 4
jae 0x426266
cmp edi, 0xfffffffc
je 0x4262ad
mov al, byte [ecx]
cmp al, byte [edx]
jne 0x4262f0
cmp edi, 0xfffffffd
je 0x4262ad
mov al, byte [ecx + 1]
cmp al, byte [edx + 1]
jne 0x4262f0
cmp edi, 0xfffffffe
je 0x4262ad
mov al, byte [ecx + 2]
cmp al, byte [edx + 2]
jne 0x4262f0
cmp edi, 0xffffffff
je 0x4262ad
mov al, byte [ecx + 3]
cmp al, byte [edx + 3]
jne 0x4262f0
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 0x428a59
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a4f
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
cmp dword [ebp + 0x88], 0
je case.0x421f46.14
cmp ebx, dword [ebp + 0x78]
jb case.0x421f46.14
cmp ebx, dword [ebp + 0x84]
jbe case.0x421f46.14
jmp 0x41bf12
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42633c
lea ecx, [ecx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x426330
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428a72
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a68
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4263a2
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx edx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4264a2
movzx eax, byte [edi]
and eax, 0x3f
test dl, 0x20
jne 0x4263dc
and edx, 0x1f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x42649f
test dl, 0x10
jne 0x4263fe
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 0x4264a2
mov ecx, dword [esi + 8]
test dl, 8
jne 0x42642e
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 0x42649f
test dl, 4
jne 0x426464
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 0x42649f
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 0x425661
cmp dword [esi + 0x94], edx
je 0x425661
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4264e9
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4250f5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1c
jmp 0x42890d
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42651c
mov edi, edi
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x426510
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428a8b
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a81
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426582
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
cmp ebx, 0xc0
jb 0x426677
test bl, 0x20
jne 0x4265bc
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426674
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4265e6
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426677
mov edx, dword [esi + 8]
test bl, 8
jne 0x42660f
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 0x426672
test bl, 4
jne 0x42663e
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 0x426672
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 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428aa4
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428a9a
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4266e0
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4266d4
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428abd
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428ab3
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426746
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov ecx, dword [esi + 8]
mov edx, dword [ebp + 0x78]
cmp ecx, edx
jb 0x426782
cmp dword [ebp + 0x88], 0
je 0x426ba1
cmp ecx, dword [ebp + 0x84]
jbe 0x426ba1
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41ddde
jmp 0x426ba1
cmp dword [esi + 0x7c], 0xc
jne 0x4267d4
mov edi, dword [ebp + 0x18]
test edi, edi
je 0x4267af
push dword [esp + 0x8c]
lea eax, [ebp + 0x1c]
push eax
push edx
push edi
push ecx
call fcn.0042ad50
add esp, 0x14
test eax, eax
jne 0x426ba1
jmp 0x4267d4
mov edi, dword [ebp + 0x1c]
sub edx, edi
cmp ecx, edx
ja 0x4267d4
mov al, byte [ecx]
cmp al, byte [ebp + 0x34]
jne 0x4267d4
cmp edi, 1
je 0x426ba1
mov al, byte [ecx + 1]
cmp al, byte [ebp + 0x35]
je 0x426ba1
mov eax, dword [esi + 8]
movzx edx, byte [eax]
lea edi, [eax + 1]
mov dword [esi + 8], edi
cmp edx, 0xc0
jb 0x4268bc
test dl, 0x20
jne 0x426807
movzx eax, byte [edi]
and edx, 0x1f
and eax, 0x3f
shl edx, 6
or edx, eax
lea eax, [edi + 1]
jmp 0x4268b9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test dl, 0x10
jne 0x42682e
and edx, 0xf
shl edx, 6
or ecx, edx
shl ecx, 6
or ecx, eax
lea eax, [edi + 2]
jmp 0x4268b7
test dl, 8
jne 0x426854
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 0x4268b7
test dl, 4
jne 0x426883
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 0x4268b7
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.0x4268cb.15
jmp dword [eax*4 + 0x4293e4]
cmp dword [ebp + 0x88], 0
je case.0x4268cb.13
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb case.0x4268cb.13
cmp dword [ebp + 0x18], 0
jne case.0x4268cb.13
cmp dword [ebp + 0x1c], 2
jne case.0x4268cb.13
movzx eax, byte [ebp + 0x34]
cmp edx, eax
jne case.0x4268cb.13
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle case.0x4268cb.13
jmp 0x41ddde
cmp edx, 0xd
ja 0x42694e
je 0x42693b
cmp edx, 0xa
je case.0x4268cb.13
jbe 0x426ba1
cmp edx, 0xc
jmp 0x426968
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae case.0x4268cb.13
cmp byte [eax], 0xa
jne case.0x4268cb.13
inc eax
mov dword [esi + 8], eax
jmp case.0x4268cb.13
cmp edx, 0x85
je 0x42696e
cmp edx, 0x2027
jbe 0x426ba1
cmp edx, 0x2029
ja 0x426ba1
cmp dword [ebp + 0x68], 0
je case.0x4268cb.13
jmp 0x426ba1
cmp edx, 0x180e
ja 0x4269ed
je 0x426ba1
cmp edx, 0xa0
ja 0x4269e5
je 0x426ba1
cmp edx, 9
je 0x426ba1
cmp edx, 0x20
je 0x426ba1
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x4269d6
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4250f5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2a
jmp 0x42890d
cmp edx, 0x1680
jmp 0x4269a1
cmp edx, 0x205f
ja 0x426a17
je 0x426ba1
cmp edx, 0x2000
jb case.0x4268cb.13
cmp edx, 0x200a
jbe 0x426ba1
cmp edx, 0x202f
jmp 0x4269a1
cmp edx, 0x3000
jmp 0x426b9b
cmp edx, 0x180e
ja 0x426a54
je case.0x4268cb.13
cmp edx, 0xa0
ja 0x426a4c
je case.0x4268cb.13
cmp edx, 9
je case.0x4268cb.13
cmp edx, 0x20
jmp 0x426a88
cmp edx, 0x1680
jmp 0x426a88
cmp edx, 0x205f
ja 0x426a82
je case.0x4268cb.13
cmp edx, 0x2000
jb 0x426ba1
cmp edx, 0x200a
jbe case.0x4268cb.13
cmp edx, 0x202f
jmp 0x426a88
cmp edx, 0x3000
je case.0x4268cb.13
jmp 0x426ba1
cmp edx, 0x85
ja 0x426ab8
je 0x426ba1
cmp edx, 0xa
jb case.0x4268cb.13
cmp edx, 0xd
jbe 0x426ba1
jmp case.0x4268cb.13
lea eax, [edx - 0x2028]
cmp eax, 1
ja case.0x4268cb.13
jmp 0x426ba1
cmp edx, 0x85
ja 0x426ae8
je case.0x4268cb.13
cmp edx, 0xa
jb 0x426ba1
cmp edx, 0xd
jmp 0x426af1
lea eax, [edx - 0x2028]
cmp eax, 1
jbe case.0x4268cb.13
jmp 0x426ba1
cmp edx, 0x100
jae case.0x4268cb.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
je case.0x4268cb.13
jmp 0x426ba1
cmp edx, 0x100
jae 0x426ba1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 4
jmp 0x426b9b
cmp edx, 0x100
jae case.0x4268cb.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
je case.0x4268cb.13
jmp 0x426ba1
cmp edx, 0x100
jae 0x426ba1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 1
jmp 0x426b9b
cmp edx, 0x100
jae case.0x4268cb.13
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
je case.0x4268cb.13
mov esi, dword [esi]
test esi, esi
je 0x428c38
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x424824
cmp edx, 0x100
jae 0x426ba1
mov eax, dword [ebp + 0x40]
test byte [edx + eax], 0x10
jne case.0x4268cb.13
mov esi, dword [esi]
test esi, esi
je 0x428c38
mov edx, dword [esp + 0x8c]
xor edi, edi
jmp 0x424824
mov esi, dword [esi]
test esi, esi
je case.default.0x424834
mov edx, dword [esp + 0x8c]
mov edi, 0xfffffff2
jmp 0x424824
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x426bfc
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x426bf0
cmp dword [esi + 0x7c], 0x11
jne 0x426c18
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x426c18
cmp byte [eax], 0xa
jne 0x426c18
dec eax
cmp byte [eax], 0xd
jne 0x426c18
mov dword [esi + 8], eax
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428ad6
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428acc
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426c7e
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x426c9e
cmp dword [ebp + 0x88], 0
je 0x4255a3
cmp eax, dword [ebp + 0x84]
jmp 0x4273f9
movzx ecx, byte [eax]
inc eax
mov dword [esi + 8], eax
test edx, edx
je 0x426cdd
cmp ecx, 0xc0
jb 0x426cdd
test cl, 0x20
jne 0x426cb9
inc eax
jmp 0x426cda
test cl, 0x10
jne 0x426cc3
add eax, 2
jmp 0x426cda
test cl, 8
jne 0x426ccd
add eax, 3
jmp 0x426cda
test cl, 4
jne 0x426cd7
add eax, 4
jmp 0x426cda
add eax, 5
mov dword [esi + 8], eax
cmp dword [esi + 0x68], 0
je 0x426cf4
mov esi, dword [esi]
test esi, esi
je 0x428c38
xor edi, edi
jmp 0x424824
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x426d23
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
je 0x4250f5
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x24
jmp 0x42890d
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426d57
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426e51
cmp ebx, 0xc0
jb 0x426e51
test bl, 0x20
jne 0x426d99
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426e4e
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426dc3
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x426e51
mov edx, dword [esi + 8]
test bl, 8
jne 0x426de9
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 0x426e4c
test bl, 4
jne 0x426e18
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 0x426e4c
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x426e73
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp eax, 9
je 0x426e98
cmp eax, 5
je 0x426e98
cmp eax, 8
je 0x426e98
xor eax, eax
jmp 0x426e9d
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428aef
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428ae5
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x426f06
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x426ffc
cmp ebx, 0xc0
jb 0x426ffc
test bl, 0x20
jne 0x426f48
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x426ff9
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x426f70
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x426ffc
mov edx, dword [esi + 8]
test bl, 8
jne 0x426f96
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 0x426ff9
test bl, 4
jne 0x426fc5
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 0x426ff9
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42701e
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b08
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428afe
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4270a8
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42719e
cmp ebx, 0xc0
jb 0x42719e
test bl, 0x20
jne 0x4270ea
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x42719b
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427112
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42719e
mov edx, dword [esi + 8]
test bl, 8
jne 0x427138
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 0x42719b
test bl, 4
jne 0x427167
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 0x42719b
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4271c0
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b21
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428b17
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427243
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427339
cmp ebx, 0xc0
jb 0x427339
test bl, 0x20
jne 0x427285
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427336
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4272ad
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x427339
mov edx, dword [esi + 8]
test bl, 8
jne 0x4272d3
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 0x427336
test bl, 4
jne 0x427302
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 0x427336
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x42735b
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc0]
cmp eax, dword [esi + 0x64]
sete cl
cmp ecx, dword [esi + 0x68]
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b3a
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428b30
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x4273de
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jb 0x427427
cmp dword [ebp + 0x88], 0
je 0x4255a3
cmp edi, dword [ebp + 0x84]
jbe 0x4255a3
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jle 0x4255a3
mov esi, dword [esi]
test esi, esi
je 0x428c5c
mov edi, 0xfffffff4
jmp 0x424824
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427515
cmp ebx, 0xc0
jb 0x427515
test bl, 0x20
jne 0x42745d
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427512
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427487
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x427515
mov edx, dword [esi + 8]
test bl, 8
jne 0x4274ad
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 0x427510
test bl, 4
jne 0x4274dc
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 0x427510
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x427537
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc2]
mov dword [esp + 0x80], eax
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jae 0x4276c8
lea esp, [esp]
cmp dword [esp + 0x8c], 0
mov edi, 1
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
je 0x427667
cmp ebx, 0xc0
jb 0x427667
test bl, 0x20
jne 0x42759b
movzx eax, byte [eax + 1]
and ebx, 0x1f
mov edi, 2
jmp 0x42765f
test bl, 0x10
jne 0x4275c0
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 0x42765f
test bl, 8
jne 0x4275f1
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 0x42765f
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x42762b
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 0x42765f
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x427689
dec ebx
or ebx, 0xffffff80
inc ebx
mov edx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx ecx, byte [eax*8 + 0x4dcfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dce48], eax
je 0x4276c8
add dword [esi + 8], edi
mov eax, dword [esi + 8]
mov dword [esp + 0x80], ecx
cmp eax, dword [ebp + 0x78]
jb 0x427560
cmp dword [ebp + 0x88], 0
je 0x4276f5
mov eax, dword [esi + 8]
cmp eax, dword [ebp + 0x78]
jb 0x4276f5
cmp eax, dword [ebp + 0x84]
jbe 0x4276f5
mov dword [ebp + 0x64], 1
cmp dword [ebp + 0x88], 1
jg 0x41bf26
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b53
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428b49
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
je 0x42775c
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x42775c
lea ebx, [ebx]
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x427750
mov eax, dword [esi + 8]
cmp eax, dword [esi + 0x30]
jbe 0x41af40
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b6c
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428b62
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
dec dword [esi + 8]
mov ecx, dword [esi + 8]
test edx, edx
jne 0x4277b7
movzx ebx, byte [ecx]
jmp 0x4278a5
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
jne 0x4277cc
nop
dec ecx
mov dword [esi + 8], ecx
mov al, byte [ecx]
and al, 0xc0
cmp al, 0x80
je 0x4277c0
mov eax, dword [esi + 8]
movzx ebx, byte [eax]
cmp ebx, 0xc0
jb 0x4278a5
test bl, 0x20
jne 0x4277ef
movzx eax, byte [eax + 1]
and ebx, 0x1f
jmp 0x42789d
test bl, 0x10
jne 0x42780f
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 0x42789d
test bl, 8
jne 0x427838
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 0x42789d
movzx eax, byte [eax + 1]
mov ecx, dword [esi + 8]
and eax, 0x3f
test bl, 4
jne 0x42786d
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 0x42789d
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4278c7
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc2]
mov dword [esp + 0x80], eax
mov edi, dword [esi + 8]
cmp edi, dword [esi + 0x30]
jbe 0x41af40
dec edi
cmp dword [esp + 0x8c], 0
jne 0x4278ff
movzx ebx, byte [edi]
jmp 0x4279be
mov al, byte [edi]
and al, 0xc0
cmp al, 0x80
jne 0x427911
mov al, byte [edi - 1]
dec edi
and al, 0xc0
cmp al, 0x80
je 0x427907
movzx ebx, byte [edi]
cmp ebx, 0xc0
jb 0x4279be
test bl, 0x20
jne 0x427931
movzx eax, byte [edi + 1]
and ebx, 0x1f
jmp 0x4279b6
movzx ecx, byte [edi + 1]
movzx eax, byte [edi + 2]
and ecx, 0x3f
test bl, 0x10
jne 0x42794e
and ebx, 0xf
shl ebx, 6
or ebx, ecx
jmp 0x4279b6
and eax, 0x3f
test bl, 8
jne 0x427969
and ebx, 7
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
movzx eax, byte [edi + 3]
jmp 0x4279b6
test bl, 4
jne 0x42798d
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 0x4279b6
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x4279e0
dec ebx
or ebx, 0xffffff80
inc ebx
mov ecx, dword [esp + 0x80]
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx edx, byte [eax*8 + 0x4dcfc2]
mov eax, 1
shl eax, cl
test dword [edx*4 + 0x4dce48], eax
je 0x423616
mov dword [esi + 8], edi
mov dword [esp + 0x80], edx
jmp 0x4278e0
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427a41
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427b3b
cmp ebx, 0xc0
jb 0x427b3b
test bl, 0x20
jne 0x427a83
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427b38
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427aad
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x427b3b
mov edx, dword [esi + 8]
test bl, 8
jne 0x427ad3
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 0x427b36
test bl, 4
jne 0x427b02
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 0x427b36
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 + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x427b5d
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x427b84
cmp eax, 3
je 0x427b84
xor eax, eax
jmp 0x427b89
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428b9e
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428b94
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427bf2
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427cf3
cmp ebx, 0xc0
jb 0x427cf3
test bl, 0x20
jne 0x427c34
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427cf0
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427c5e
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x427cf3
mov edx, dword [esi + 8]
test bl, 8
jne 0x427c84
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 0x427ce7
test bl, 4
jne 0x427cb3
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 0x427ce7
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 0x427d1e
cmp ebx, 0x40
je 0x427d1e
cmp ebx, 0x60
je 0x427d1e
cmp ebx, 0xa0
jb 0x427d12
cmp ebx, 0xd7ff
jbe 0x427d1e
cmp ebx, 0xe000
jae 0x427d1e
xor eax, eax
jmp 0x427d23
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41c702
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428bb7
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428bad
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427d8c
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x427e8d
cmp ebx, 0xc0
jb 0x427e8d
test bl, 0x20
jne 0x427dce
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x427e8a
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x427df8
and ebx, 0xf
shl ebx, 6
or ecx, ebx
shl ecx, 6
or ecx, eax
add dword [esi + 8], 2
mov ebx, ecx
jmp 0x427e8d
mov edx, dword [esi + 8]
test bl, 8
jne 0x427e1e
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 0x427e81
test bl, 4
jne 0x427e4d
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 0x427e81
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 0x427ed0
je case.0x427ef0.8192
cmp ebx, 0x85
ja 0x427ebc
je case.0x427ef0.8192
cmp ebx, 9
jb case.0x427ef0.8203
cmp ebx, 0xd
jbe case.0x427ef0.8192
cmp ebx, 0x20
jmp 0x427f05
cmp ebx, 0xa0
je case.0x427ef0.8192
cmp ebx, 0x1680
jmp 0x427f05
cmp ebx, 0x202f
ja 0x427ef7
je case.0x427ef0.8192
lea eax, [ebx - 0x2000]
cmp eax, 0x29
ja case.0x427ef0.8203
movzx eax, byte [eax + 0x42942c]
jmp dword [eax*4 + 0x429424]
cmp ebx, 0x205f
je case.0x427ef0.8192
cmp ebx, 0x3000
je case.0x427ef0.8192
mov eax, ebx
cdq
and edx, 0x7f
add eax, edx
sar eax, 7
movzx eax, byte [eax + 0x4de640]
shl eax, 7
and ebx, 0x8000007f
jns 0x427f29
dec ebx
or ebx, 0xffffff80
inc ebx
add eax, ebx
xor ecx, ecx
movzx eax, word [eax*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
cmp dword [eax*4 + 0x4dcdd0], 6
sete cl
cmp ecx, dword [esi + 0x68]
jne 0x427f5c
jmp 0x41bdbb
cmp dword [esi + 0x68], 0
jne 0x41c702
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428bd0
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428bc6
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x427fbc
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x4280b2
cmp ebx, 0xc0
jb 0x4280b2
test bl, 0x20
jne 0x427ffe
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x4280af
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x428026
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x4280b2
mov edx, dword [esi + 8]
test bl, 8
jne 0x42804c
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 0x4280af
test bl, 4
jne 0x42807b
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 0x4280af
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 + 0x4de640]
mov eax, ebx
shl ecx, 7
and eax, 0x8000007f
jns 0x4280d5
dec eax
or eax, 0xffffff80
inc eax
add ecx, eax
movzx eax, word [ecx*2 + 0x4e0840]
movzx eax, byte [eax*8 + 0x4dcfc1]
mov eax, dword [eax*4 + 0x4dcdd0]
cmp eax, 1
je 0x428101
cmp eax, 3
je 0x428101
cmp ebx, 0x5f
je 0x428101
xor eax, eax
jmp 0x428106
mov eax, 1
cmp eax, dword [esi + 0x68]
je 0x41bdbb
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428be9
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428bdf
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
test edi, edi
jne case.0x424834.49
mov eax, dword [esi + 0x84]
cmp eax, dword [esi + 0x8c]
jl 0x42816f
mov esi, dword [esi]
test esi, esi
je 0x428c38
jmp 0x424824
mov edi, dword [esi + 8]
cmp edi, dword [ebp + 0x78]
jae 0x4273e6
movzx ebx, byte [edi]
inc edi
mov dword [esi + 8], edi
test edx, edx
je 0x42826c
cmp ebx, 0xc0
jb 0x42826c
test bl, 0x20
jne 0x4281b1
movzx eax, byte [edi]
and ebx, 0x1f
and eax, 0x3f
shl ebx, 6
or ebx, eax
lea eax, [edi + 1]
jmp 0x428269
movzx ecx, byte [edi]
movzx eax, byte [edi + 1]
and ecx, 0x3f
and eax, 0x3f
test bl, 0x10
jne 0x4281d9
and ebx, 0xf
shl ebx, 6
or ebx, ecx
shl ebx, 6
or ebx, eax
add dword [esi + 8], 2
jmp 0x42826c
mov edx, dword [esi + 8]
test bl, 8
jne 0x4281ff
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 0x428262
test bl, 4
jne 0x42822e
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 0x428262
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 + 0x4dce80]
lea eax, [eax*4 + 0x4dce80]
cmp ebx, ecx
jb 0x42828e
lea eax, [eax + 4]
cmp ebx, ecx
je 0x4282d3
mov ecx, dword [eax]
cmp ebx, ecx
jae 0x428281
cmp dword [esi + 0x68], 0
je 0x41c702
inc dword [esi + 0x84]
mov ecx, dword [esi + 4]
test ecx, ecx
jne 0x428c02
push 0x134
call dword [0x51f380]
mov ecx, eax
add esp, 4
test ecx, ecx
jne 0x428bf8
mov esi, dword [esi]
test esi, esi
je 0x428c2b
lea edi, [eax - 6]
jmp 0x424819
cmp dword [esi + 0x68], 0
je 0x428298
jmp 0x41c702
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 0x4282e1
lea eax, [edx + 3]
mov dword [esi + 0xc], eax
mov eax, dword [ebp + 0x8c]
mov dword [esi + 0x14], eax
jmp 0x41afba
mov ecx, dword [esi + 0x44]
lea eax, [esi + 0xb0]
cmp ecx, eax
je 0x428323
push ecx
call dword [0x51f37c]
add esp, 4
mov eax, dword [ebp + 0x80]
mov dword [esi + 8], eax
mov eax, dword [ebp + 0x7c]
mov dword [esi + 0x10], eax
jmp 0x41afba
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426119
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x425f25
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4262bb
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4264c0
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426689
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x426cfa
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x426eac
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42704e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4271e9
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427384
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427b98
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427f62
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x428115
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x42829e
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x427d32
mov eax, dword [esi + 0x90]
mov ebx, dword [esp + 0x7c]
mov dword [esi + 0x84], eax
jmp 0x4269ad
mov eax, dword [esi + 0x90]
mov dword [esi + 0x84], eax
jmp 0x4276fb
mov eax, dword [esi + 0x34]
mov dword [esi + 0xc], eax
jmp 0x41af40
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 + 0x4dccb8]
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 0x41af30
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 0x428726
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 0x428726
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x38
jmp 0x42847f
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 0x428726
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x39
jmp 0x42847f
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 0x428726
mov dword [edi + 4], ebx
mov dword [esi + 4], edi
mov dword [esi + 0x130], 0x3a
jmp 0x42847f
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 0x41af30
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 0x428916
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 0x428916
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 0x428916
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 0x428916
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 0x428916
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 0x428726
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 0x428726
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x31
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 4
jmp 0x4286d7
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 0x41af30
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 + 0x4dccb8]
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 0x41af30
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 0x428916
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 0x428916
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 0x428916
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xe
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0xf
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x11
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x13
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x18
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x19
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1a
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1b
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1d
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1f
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x21
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x23
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2b
jmp 0x42890d
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 0x41af30
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 0x428726
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 0x428726
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 0x428916
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 0x428916
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 0x428916
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x14
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x15
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x10
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x12
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x16
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x17
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x1e
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x20
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x22
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2e
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x25
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x26
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x27
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x28
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x29
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2c
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x2d
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3b
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3c
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3d
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x3e
jmp 0x42890d
mov dword [ecx + 4], 0
mov dword [esi + 4], ecx
mov dword [esi + 0x130], 0x43
jmp 0x42890d
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