Function at 0x10017510
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x224
mov eax, dword [0x1005d1b0]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, dword [eax + 0x10]
mov dword [ebp - 0x214], edx
mov edx, dword [eax + 8]
xor ebx, ebx
cmp dword [eax + 4], 0x200
push edi
mov edi, dword [ebp + 0x10]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x21c], ecx
mov dword [ebp - 0x220], ebx
mov dword [ebp - 0x208], edx
jae 0x1001756d
mov dword [ebp - 0x220], 1
lea eax, [ebp - 0x204]
jmp 0x1001756f
mov eax, dword [eax]
movsx edx, word [ecx]
sub edx, dword [ebp + 0xc]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
xor ecx, edx
movzx ecx, byte [ecx + 0x10036c98]
mov dword [ebp - 0x20c], edx
mov edx, dword [ebp - 0x214]
mov edx, dword [edx + ecx*4]
shl edx, cl
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x218], edx
mov edx, 1
shl edx, cl
mov ecx, dword [ebp - 0x218]
dec edx
and edx, dword [ebp - 0x20c]
or ecx, edx
mov edx, dword [ebp - 0x214]
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x210]
movsx edx, byte [edx + ecx + 0x400]
add ecx, edx
sub esi, ecx
mov edx, dword [ebp - 0x208]
jns 0x100176bb
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
mov dword [ebp - 0x218], edx
mov edx, dword [ebp - 0x20c]
sar edx, cl
mov ecx, dword [ebp - 0x218]
or ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10017693
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x100176c3
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
add esi, 0x20
jmp 0x100176c3
shl edx, cl
or edx, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 2]
cmp ecx, ebx
jne 0x100176e0
mov dword [ebp - 0x208], 0x10
jmp 0x1001781e
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [edi + ecx*4]
shl ebx, cl
mov dword [ebp - 0x210], ecx
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x210]
movsx ebx, byte [edi + ecx + 0x400]
add ecx, ebx
sub esi, ecx
jns 0x1001780e
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x100177e4
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10017818
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10017818
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x10]
cmp ecx, ebx
jne 0x10017838
add dword [ebp - 0x208], 0x10
jmp 0x10017aa1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001796b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov edi, edi
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001794b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10017925
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10017953
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10017953
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10017880
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10017a91
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10017a67
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10017a9b
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10017a9b
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x20]
cmp ecx, ebx
jne 0x10017abb
add dword [ebp - 0x208], 0x10
jmp 0x10017d26
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10017bec
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10017bcc
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10017ba6
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10017bd4
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10017bd4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10017b01
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10017d16
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10017cec
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10017d20
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10017d20
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x12]
cmp ecx, ebx
jne 0x10017d40
add dword [ebp - 0x208], 0x10
jmp 0x10017fb1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10017e7b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x10017d90
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10017e5b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10017e35
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10017e63
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10017e63
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10017d90
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10017fa1
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10017f77
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10017fab
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10017fab
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 4]
cmp ecx, ebx
jne 0x10017fcb
add dword [ebp - 0x208], 0x10
jmp 0x10018232
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100180fc
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100180dc
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x100180b6
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x100180e4
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x100180e4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10018011
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10018222
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x100181f8
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001822c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001822c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 6]
cmp ecx, ebx
jne 0x1001824c
add dword [ebp - 0x208], 0x10
jmp 0x100184c1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001838b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x100182a0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001836b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10018345
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10018373
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10018373
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100182a0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x100184b1
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10018487
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x100184bb
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x100184bb
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x14]
cmp ecx, ebx
jne 0x100184db
add dword [ebp - 0x208], 0x10
jmp 0x10018742
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001860c
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100185ec
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x100185c6
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x100185f4
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x100185f4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10018521
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10018732
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10018708
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001873c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001873c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x22]
cmp ecx, ebx
jne 0x1001875c
add dword [ebp - 0x208], 0x10
jmp 0x100189d5
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001889b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x100187b0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001887b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10018855
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10018883
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10018883
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100187b0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x100189c5
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001899b
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x100189cf
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x100189cf
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x30]
cmp ecx, ebx
jne 0x100189ef
add dword [ebp - 0x208], 0x10
jmp 0x10018c61
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10018b2b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x10018a40
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10018b0b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10018ae5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10018b13
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10018b13
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10018a40
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10018c51
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10018c27
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10018c5b
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10018c5b
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x40]
cmp ecx, ebx
jne 0x10018c7b
add dword [ebp - 0x208], 0x10
jmp 0x10018ee2
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10018dac
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10018d8c
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10018d66
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10018d94
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10018d94
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10018cc1
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10018ed2
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10018ea8
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10018edc
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10018edc
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x32]
cmp ecx, ebx
jne 0x10018efc
add dword [ebp - 0x208], 0x10
jmp 0x10019175
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001903b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x10018f50
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001901b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10018ff5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10019023
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10019023
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10018f50
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10019165
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001913b
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001916f
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001916f
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x24]
cmp ecx, ebx
jne 0x1001918f
add dword [ebp - 0x208], 0x10
jmp 0x10019401
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100192cb
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x100191e0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100192ab
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10019285
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x100192b3
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x100192b3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100191e0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x100193f1
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x100193c7
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x100193fb
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x100193fb
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x16]
cmp ecx, ebx
jne 0x1001941b
add dword [ebp - 0x208], 0x10
jmp 0x10019682
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001954c
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001952c
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10019506
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10019534
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10019534
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10019461
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10019672
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10019648
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001967c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001967c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 8]
cmp ecx, ebx
jne 0x1001969c
add dword [ebp - 0x208], 0x10
jmp 0x10019911
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100197db
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x100196f0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100197bb
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10019795
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x100197c3
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x100197c3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100196f0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10019901
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x100198d7
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001990b
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001990b
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0xa]
cmp ecx, ebx
jne 0x1001992b
add dword [ebp - 0x208], 0x10
jmp 0x10019b92
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10019a5c
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10019a3c
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10019a16
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10019a44
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10019a44
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10019971
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10019b82
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10019b58
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10019b8c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10019b8c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x18]
cmp ecx, ebx
jne 0x10019bac
add dword [ebp - 0x208], 0x10
jmp 0x10019e25
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10019ceb
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x10019c00
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10019ccb
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10019ca5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10019cd3
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10019cd3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10019c00
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x10019e15
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x10019deb
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x10019e1f
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x10019e1f
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x26]
cmp ecx, ebx
jne 0x10019e3f
add dword [ebp - 0x208], 0x10
jmp 0x1001a0b1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10019f7b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x10019e90
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10019f5b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x10019f35
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x10019f63
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x10019f63
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10019e90
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001a0a1
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001a077
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001a0ab
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001a0ab
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x34]
cmp ecx, ebx
jne 0x1001a0cb
add dword [ebp - 0x208], 0x10
jmp 0x1001a332
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001a1fc
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001a1dc
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001a1b6
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001a1e4
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001a1e4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001a111
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001a322
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001a2f8
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001a32c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001a32c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x42]
cmp ecx, ebx
jne 0x1001a34c
add dword [ebp - 0x208], 0x10
jmp 0x1001a5c5
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001a48b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001a3a0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001a46b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001a445
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001a473
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001a473
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001a3a0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001a5b5
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001a58b
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001a5bf
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001a5bf
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x50]
cmp ecx, ebx
jne 0x1001a5df
add dword [ebp - 0x208], 0x10
jmp 0x1001a851
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001a71b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001a630
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001a6fb
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001a6d5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001a703
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001a703
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001a630
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001a841
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001a817
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001a84b
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001a84b
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x60]
cmp ecx, ebx
jne 0x1001a86b
add dword [ebp - 0x208], 0x10
jmp 0x1001aad2
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001a99c
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001a97c
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001a956
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001a984
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001a984
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001a8b1
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001aac2
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001aa98
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001aacc
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001aacc
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x52]
cmp ecx, ebx
jne 0x1001aaec
add dword [ebp - 0x208], 0x10
jmp 0x1001ad61
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001ac2b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001ab40
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001ac0b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001abe5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001ac13
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001ac13
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001ab40
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001ad51
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001ad27
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001ad5b
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001ad5b
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x44]
cmp ecx, ebx
jne 0x1001ad7b
add dword [ebp - 0x208], 0x10
jmp 0x1001afe2
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001aeac
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001ae8c
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001ae66
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001ae94
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001ae94
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001adc1
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001afd2
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001afa8
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001afdc
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001afdc
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x36]
cmp ecx, ebx
jne 0x1001affc
add dword [ebp - 0x208], 0x10
jmp 0x1001b275
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001b13b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001b050
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001b11b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001b0f5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001b123
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001b123
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001b050
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001b265
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001b23b
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001b26f
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001b26f
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x28]
cmp ecx, ebx
jne 0x1001b28f
add dword [ebp - 0x208], 0x10
jmp 0x1001b501
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001b3cb
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001b2e0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001b3ab
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001b385
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001b3b3
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001b3b3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001b2e0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001b4f1
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001b4c7
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001b4fb
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001b4fb
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x1a]
cmp ecx, ebx
jne 0x1001b51b
add dword [ebp - 0x208], 0x10
jmp 0x1001b782
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001b64c
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001b62c
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001b606
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001b634
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001b634
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001b561
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001b772
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001b748
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001b77c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001b77c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0xc]
cmp ecx, ebx
jne 0x1001b79c
add dword [ebp - 0x208], 0x10
jmp 0x1001ba1b
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001b8de
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001b7f0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001b8be
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001b895
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001b8c6
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001b8c6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001b7f0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001ba0b
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001b9de
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001ba15
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001ba15
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0xe]
cmp ecx, ebx
jne 0x1001ba39
add dword [ebp - 0x208], 0x10
jmp 0x1001bca1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001bb6b
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
nop
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001bb4b
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001bb25
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001bb53
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001bb53
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001ba80
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001bc91
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001bc67
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001bc9b
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001bc9b
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x1c]
cmp ecx, ebx
jne 0x1001bcbb
add dword [ebp - 0x208], 0x10
jmp 0x1001bf22
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001bdec
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001bdcc
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001bda6
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001bdd4
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001bdd4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001bd01
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001bf12
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001bee8
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001bf1c
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001bf1c
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x2a]
cmp ecx, ebx
jne 0x1001bf3c
add dword [ebp - 0x208], 0x10
jmp 0x1001c1b7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001c07e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001bf90
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001c05e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001c035
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001c066
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001c066
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001bf90
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001c1a7
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001c17a
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001c1b1
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001c1b1
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x38]
cmp ecx, ebx
jne 0x1001c1d5
add dword [ebp - 0x208], 0x10
jmp 0x1001c447
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001c30e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001c220
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001c2ee
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001c2c5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001c2f6
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001c2f6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001c220
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001c437
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001c40a
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001c441
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001c441
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x46]
cmp ecx, ebx
jne 0x1001c465
add dword [ebp - 0x208], 0x10
jmp 0x1001c6db
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001c59e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001c4b0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001c57e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001c555
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001c586
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001c586
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001c4b0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001c6cb
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001c69e
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001c6d5
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001c6d5
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x54]
cmp ecx, ebx
jne 0x1001c6f9
add dword [ebp - 0x208], 0x10
jmp 0x1001c967
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001c82e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
nop
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001c80e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001c7e5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001c816
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001c816
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001c740
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001c957
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001c92a
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001c961
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001c961
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x62]
cmp ecx, ebx
jne 0x1001c985
add dword [ebp - 0x208], 0x10
jmp 0x1001cbf7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001cabe
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001c9d0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001ca9e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001ca75
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001caa6
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001caa6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001c9d0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001cbe7
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001cbba
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001cbf1
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001cbf1
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x70]
cmp ecx, ebx
jne 0x1001cc15
add dword [ebp - 0x208], 0x10
jmp 0x1001ce8b
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001cd4e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001cc60
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001cd2e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001cd05
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001cd36
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001cd36
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001cc60
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001ce7b
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001ce4e
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001ce85
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001ce85
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x72]
cmp ecx, ebx
jne 0x1001cea9
add dword [ebp - 0x208], 0x10
jmp 0x1001d117
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001cfde
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
nop
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001cfbe
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001cf95
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001cfc6
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001cfc6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001cef0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001d107
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001d0da
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001d111
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001d111
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x64]
cmp ecx, ebx
jne 0x1001d135
add dword [ebp - 0x208], 0x10
jmp 0x1001d3a7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001d26e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001d180
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001d24e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001d225
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001d256
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001d256
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001d180
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001d397
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001d36a
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001d3a1
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001d3a1
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x56]
cmp ecx, ebx
jne 0x1001d3c5
add dword [ebp - 0x208], 0x10
jmp 0x1001d637
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001d4fe
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001d410
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001d4de
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001d4b5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001d4e6
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001d4e6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001d410
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001d627
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001d5fa
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001d631
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001d631
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x48]
cmp ecx, ebx
jne 0x1001d655
add dword [ebp - 0x208], 0x10
jmp 0x1001d8c7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001d78e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001d6a0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001d76e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001d745
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001d776
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001d776
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001d6a0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001d8b7
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001d88a
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001d8c1
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001d8c1
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x3a]
cmp ecx, ebx
jne 0x1001d8e5
add dword [ebp - 0x208], 0x10
jmp 0x1001db5b
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001da1e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001d930
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001d9fe
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001d9d5
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001da06
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001da06
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001d930
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001db4b
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001db1e
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001db55
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001db55
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x2c]
cmp ecx, ebx
jne 0x1001db79
add dword [ebp - 0x208], 0x10
jmp 0x1001dde7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001dcae
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
nop
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001dc8e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001dc65
shr ecx, 0x18
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov ecx, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], 0
mov ebx, 2
sub ebx, ecx
add eax, ebx
mov byte [eax], dl
cmp dl, 0xff
sbb edx, edx
neg edx
mov ecx, 2
sub ecx, edx
mov byte [eax + 1], 0
mov edx, dword [edi + 0x3c0]
add eax, ecx
add esi, 0x20
jmp 0x1001dc96
shr ecx, 0x18
mov byte [eax], cl
mov ecx, edx
shr ecx, 0x10
mov byte [eax + 1], cl
mov ecx, edx
shr ecx, 8
mov byte [eax + 2], cl
mov byte [eax + 3], dl
mov edx, dword [edi + 0x3c0]
add eax, 4
add esi, 0x20
jmp 0x1001dc96
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001dbc0
mov ecx, dword [ebp - 0x210]
mov ebx, dword [ebp - 0x208]
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001ddd7
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001ddaa
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001dde1
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001dde1
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x1e]
cmp ecx, ebx
jne 0x1001de05
add dword [ebp - 0x208], 0x10
jmp 0x1001e077
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001df3e
mov ecx, ebx
shr ecx, 8
mov dword [ebp - 0x214], ecx
neg ecx
shl ecx, 8
add ebx, ecx
mov dword [ebp - 0x208], ebx
jmp 0x1001de50
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1001df1e
mov ebx, dword [edi + 0x3c0]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
shr ebx, cl
or edx, ebx
lea ecx, [edx + 0x1010101]
not ecx
and ecx, edx
test ecx, 0x80808080
mov ecx, edx
je 0x1001def5
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001de50
add ebx, ecx
mov dword [ebp - 0x208], ebx
mov ebx, dword [edi + ebx*4]
shl ebx, cl
mov ecx, dword [ebp - 0x210]
mov dword [ebp - 0x218], ebx
mov ebx, 1
shl ebx, cl
mov ecx, dword [ebp - 0x218]
dec ebx
and ebx, dword [ebp - 0x20c]
or ecx, ebx
mov dword [ebp - 0x20c], ecx
mov ecx, dword [ebp - 0x208]
movsx ebx, byte [edi + ecx + 0x400]
mov ecx, dword [ebp - 0x210]
add ecx, ebx
sub esi, ecx
jns 0x1001e067
mov ebx, dword [ebp - 0x20c]
add ecx, esi
shl edx, cl
mov ecx, esi
neg ecx
sar ebx, cl
or edx, ebx
mov ecx, edx
lea edx, [ecx + 0x1010101]
not edx
and edx, ecx
mov dword [ebp - 0x208], ecx
test edx, 0x80808080
je 0x1001e03a
shr ecx, 0x18
mov byte [eax], cl
xor ebx, ebx
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 0x10
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov byte [eax + 1], bl
mov edx, 2
sub edx, ecx
mov ecx, dword [ebp - 0x208]
add eax, edx
shr ecx, 8
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
movzx ecx, byte [ebp - 0x208]
mov byte [eax + 1], bl
add eax, edx
mov byte [eax], cl
cmp cl, 0xff
sbb ecx, ecx
neg ecx
mov edx, 2
sub edx, ecx
mov byte [eax + 1], bl
add eax, edx
mov edx, dword [ebp - 0x20c]
add esi, 0x20
jmp 0x1001e071
mov edx, ecx
shr edx, 0x18
mov byte [eax], dl
mov edx, ecx
shr edx, 0x10
mov byte [eax + 1], dl
mov edx, ecx
shr edx, 8
mov byte [eax + 2], dl
mov edx, dword [ebp - 0x20c]
mov byte [eax + 3], cl
add eax, 4
xor ebx, ebx
add esi, 0x20
jmp 0x1001e071
shl edx, cl
or edx, dword [ebp - 0x20c]
xor ebx, ebx
mov dword [ebp - 0x208], ebx
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 0x2e]
cmp ecx, ebx
jne 0x1001e095
add dword [ebp - 0x208], 0x10
jmp 0x1001e30e
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x10036c98]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001e1d1