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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x224
mov eax, dword [0x10067168]
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 0x1001fb6d
mov dword [ebp - 0x220], 1
lea eax, [ebp - 0x204]
jmp 0x1001fb6f
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 + 0x1003f648]
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 0x1001fcbb
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 0x1001fc93
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 0x1001fcc3
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 0x1001fcc3
shl edx, cl
or edx, dword [ebp - 0x20c]
mov ecx, dword [ebp - 0x21c]
movsx ecx, word [ecx + 2]
cmp ecx, ebx
jne 0x1001fce0
mov dword [ebp - 0x208], 0x10
jmp 0x1001fe1e
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
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 0x1001fe0e
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 0x1001fde4
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 0x1001fe18
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 0x1001fe18
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 0x1001fe38
add dword [ebp - 0x208], 0x10
jmp 0x100200a1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1001ff6b
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 0x1001ff4b
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 0x1001ff25
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 0x1001ff53
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 0x1001ff53
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x1001fe80
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 0x10020091
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 0x10020067
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 0x1002009b
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 0x1002009b
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 0x100200bb
add dword [ebp - 0x208], 0x10
jmp 0x10020326
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100201ec
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 0x100201cc
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 0x100201a6
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 0x100201d4
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 0x100201d4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10020101
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 0x10020316
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 0x100202ec
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 0x10020320
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 0x10020320
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 0x10020340
add dword [ebp - 0x208], 0x10
jmp 0x100205b1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002047b
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 0x10020390
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002045b
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 0x10020435
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 0x10020463
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 0x10020463
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10020390
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 0x100205a1
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 0x10020577
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 0x100205ab
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 0x100205ab
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 0x100205cb
add dword [ebp - 0x208], 0x10
jmp 0x10020832
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100206fc
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 0x100206dc
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 0x100206b6
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 0x100206e4
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 0x100206e4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10020611
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 0x10020822
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 0x100207f8
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 0x1002082c
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 0x1002082c
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 0x1002084c
add dword [ebp - 0x208], 0x10
jmp 0x10020ac1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002098b
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 0x100208a0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002096b
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 0x10020945
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 0x10020973
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 0x10020973
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100208a0
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 0x10020ab1
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 0x10020a87
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 0x10020abb
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 0x10020abb
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 0x10020adb
add dword [ebp - 0x208], 0x10
jmp 0x10020d42
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10020c0c
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 0x10020bec
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 0x10020bc6
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 0x10020bf4
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 0x10020bf4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10020b21
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 0x10020d32
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 0x10020d08
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 0x10020d3c
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 0x10020d3c
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 0x10020d5c
add dword [ebp - 0x208], 0x10
jmp 0x10020fd5
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10020e9b
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 0x10020db0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10020e7b
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 0x10020e55
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 0x10020e83
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 0x10020e83
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10020db0
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 0x10020fc5
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 0x10020f9b
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 0x10020fcf
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 0x10020fcf
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 0x10020fef
add dword [ebp - 0x208], 0x10
jmp 0x10021261
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002112b
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 0x10021040
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002110b
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 0x100210e5
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 0x10021113
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 0x10021113
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10021040
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 0x10021251
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 0x10021227
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 0x1002125b
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 0x1002125b
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 0x1002127b
add dword [ebp - 0x208], 0x10
jmp 0x100214e2
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100213ac
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 0x1002138c
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 0x10021366
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 0x10021394
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 0x10021394
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100212c1
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 0x100214d2
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 0x100214a8
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 0x100214dc
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 0x100214dc
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 0x100214fc
add dword [ebp - 0x208], 0x10
jmp 0x10021775
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002163b
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 0x10021550
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002161b
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 0x100215f5
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 0x10021623
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 0x10021623
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10021550
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 0x10021765
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 0x1002173b
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 0x1002176f
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 0x1002176f
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 0x1002178f
add dword [ebp - 0x208], 0x10
jmp 0x10021a01
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100218cb
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 0x100217e0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100218ab
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 0x10021885
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 0x100218b3
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 0x100218b3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100217e0
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 0x100219f1
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 0x100219c7
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 0x100219fb
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 0x100219fb
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 0x10021a1b
add dword [ebp - 0x208], 0x10
jmp 0x10021c82
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10021b4c
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 0x10021b2c
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 0x10021b06
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 0x10021b34
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 0x10021b34
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10021a61
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 0x10021c72
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 0x10021c48
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 0x10021c7c
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 0x10021c7c
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 0x10021c9c
add dword [ebp - 0x208], 0x10
jmp 0x10021f11
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10021ddb
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 0x10021cf0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10021dbb
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 0x10021d95
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 0x10021dc3
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 0x10021dc3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10021cf0
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 0x10021f01
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 0x10021ed7
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 0x10021f0b
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 0x10021f0b
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 0x10021f2b
add dword [ebp - 0x208], 0x10
jmp 0x10022192
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002205c
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 0x1002203c
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 0x10022016
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 0x10022044
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 0x10022044
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10021f71
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 0x10022182
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 0x10022158
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 0x1002218c
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 0x1002218c
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 0x100221ac
add dword [ebp - 0x208], 0x10
jmp 0x10022425
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100222eb
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 0x10022200
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100222cb
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 0x100222a5
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 0x100222d3
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 0x100222d3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10022200
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 0x10022415
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 0x100223eb
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 0x1002241f
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 0x1002241f
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 0x1002243f
add dword [ebp - 0x208], 0x10
jmp 0x100226b1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002257b
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 0x10022490
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002255b
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 0x10022535
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 0x10022563
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 0x10022563
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10022490
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 0x100226a1
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 0x10022677
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 0x100226ab
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 0x100226ab
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 0x100226cb
add dword [ebp - 0x208], 0x10
jmp 0x10022932
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100227fc
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 0x100227dc
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 0x100227b6
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 0x100227e4
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 0x100227e4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10022711
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 0x10022922
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 0x100228f8
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 0x1002292c
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 0x1002292c
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 0x1002294c
add dword [ebp - 0x208], 0x10
jmp 0x10022bc5
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10022a8b
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 0x100229a0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10022a6b
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 0x10022a45
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 0x10022a73
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 0x10022a73
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100229a0
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 0x10022bb5
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 0x10022b8b
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 0x10022bbf
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 0x10022bbf
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 0x10022bdf
add dword [ebp - 0x208], 0x10
jmp 0x10022e51
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10022d1b
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 0x10022c30
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10022cfb
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 0x10022cd5
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 0x10022d03
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 0x10022d03
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10022c30
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 0x10022e41
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 0x10022e17
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 0x10022e4b
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 0x10022e4b
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 0x10022e6b
add dword [ebp - 0x208], 0x10
jmp 0x100230d2
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10022f9c
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 0x10022f7c
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 0x10022f56
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 0x10022f84
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 0x10022f84
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10022eb1
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 0x100230c2
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 0x10023098
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 0x100230cc
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 0x100230cc
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 0x100230ec
add dword [ebp - 0x208], 0x10
jmp 0x10023361
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002322b
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 0x10023140
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002320b
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 0x100231e5
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 0x10023213
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 0x10023213
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10023140
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 0x10023351
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 0x10023327
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 0x1002335b
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 0x1002335b
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 0x1002337b
add dword [ebp - 0x208], 0x10
jmp 0x100235e2
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100234ac
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 0x1002348c
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 0x10023466
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 0x10023494
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 0x10023494
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100233c1
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 0x100235d2
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 0x100235a8
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 0x100235dc
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 0x100235dc
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 0x100235fc
add dword [ebp - 0x208], 0x10
jmp 0x10023875
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002373b
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 0x10023650
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002371b
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 0x100236f5
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 0x10023723
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 0x10023723
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10023650
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 0x10023865
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 0x1002383b
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 0x1002386f
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 0x1002386f
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 0x1002388f
add dword [ebp - 0x208], 0x10
jmp 0x10023b01
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100239cb
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 0x100238e0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100239ab
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 0x10023985
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 0x100239b3
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 0x100239b3
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100238e0
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 0x10023af1
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 0x10023ac7
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 0x10023afb
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 0x10023afb
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 0x10023b1b
add dword [ebp - 0x208], 0x10
jmp 0x10023d82
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10023c4c
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 0x10023c2c
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 0x10023c06
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 0x10023c34
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 0x10023c34
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10023b61
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 0x10023d72
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 0x10023d48
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 0x10023d7c
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 0x10023d7c
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 0x10023d9c
add dword [ebp - 0x208], 0x10
jmp 0x1002401b
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10023ede
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 0x10023df0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10023ebe
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 0x10023e95
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 0x10023ec6
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 0x10023ec6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10023df0
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 0x1002400b
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 0x10023fde
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 0x10024015
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 0x10024015
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 0x10024039
add dword [ebp - 0x208], 0x10
jmp 0x100242a1
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002416b
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 0x1002414b
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 0x10024125
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 0x10024153
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 0x10024153
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024080
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 0x10024291
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 0x10024267
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 0x1002429b
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 0x1002429b
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 0x100242bb
add dword [ebp - 0x208], 0x10
jmp 0x10024522
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100243ec
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 0x100243cc
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 0x100243a6
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 0x100243d4
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 0x100243d4
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024301
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 0x10024512
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 0x100244e8
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 0x1002451c
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 0x1002451c
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 0x1002453c
add dword [ebp - 0x208], 0x10
jmp 0x100247b7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002467e
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 0x10024590
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002465e
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 0x10024635
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 0x10024666
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 0x10024666
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024590
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 0x100247a7
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 0x1002477a
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 0x100247b1
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 0x100247b1
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 0x100247d5
add dword [ebp - 0x208], 0x10
jmp 0x10024a47
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002490e
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 0x10024820
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x100248ee
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 0x100248c5
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 0x100248f6
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 0x100248f6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024820
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 0x10024a37
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 0x10024a0a
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 0x10024a41
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 0x10024a41
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 0x10024a65
add dword [ebp - 0x208], 0x10
jmp 0x10024cdb
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10024b9e
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 0x10024ab0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10024b7e
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 0x10024b55
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 0x10024b86
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 0x10024b86
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024ab0
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 0x10024ccb
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 0x10024c9e
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 0x10024cd5
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 0x10024cd5
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 0x10024cf9
add dword [ebp - 0x208], 0x10
jmp 0x10024f67
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10024e2e
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 0x10024e0e
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 0x10024de5
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 0x10024e16
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 0x10024e16
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024d40
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 0x10024f57
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 0x10024f2a
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 0x10024f61
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 0x10024f61
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 0x10024f85
add dword [ebp - 0x208], 0x10
jmp 0x100251f7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100250be
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 0x10024fd0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002509e
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 0x10025075
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 0x100250a6
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 0x100250a6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10024fd0
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 0x100251e7
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 0x100251ba
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 0x100251f1
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 0x100251f1
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 0x10025215
add dword [ebp - 0x208], 0x10
jmp 0x1002548b
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002534e
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 0x10025260
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002532e
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 0x10025305
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 0x10025336
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 0x10025336
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10025260
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 0x1002547b
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 0x1002544e
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 0x10025485
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 0x10025485
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 0x100254a9
add dword [ebp - 0x208], 0x10
jmp 0x10025717
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100255de
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 0x100255be
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 0x10025595
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 0x100255c6
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 0x100255c6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100254f0
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 0x10025707
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 0x100256da
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 0x10025711
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 0x10025711
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 0x10025735
add dword [ebp - 0x208], 0x10
jmp 0x100259a7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002586e
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 0x10025780
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002584e
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 0x10025825
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 0x10025856
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 0x10025856
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10025780
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 0x10025997
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 0x1002596a
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 0x100259a1
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 0x100259a1
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 0x100259c5
add dword [ebp - 0x208], 0x10
jmp 0x10025c37
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10025afe
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 0x10025a10
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10025ade
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 0x10025ab5
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 0x10025ae6
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 0x10025ae6
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10025a10
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 0x10025c27
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 0x10025bfa
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 0x10025c31
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 0x10025c31
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 0x10025c55
add dword [ebp - 0x208], 0x10
jmp 0x10025ec7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x10025d8e
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 0x10025ca0
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10025d6e
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 0x10025d45
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 0x10025d76
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 0x10025d76
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10025ca0
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 0x10025eb7
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 0x10025e8a
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 0x10025ec1
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 0x10025ec1
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 0x10025ee5
add dword [ebp - 0x208], 0x10
jmp 0x1002615b
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002601e
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 0x10025f30
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x10025ffe
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 0x10025fd5
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 0x10026006
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 0x10026006
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10025f30
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 0x1002614b
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 0x1002611e
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 0x10026155
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 0x10026155
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 0x10026179
add dword [ebp - 0x208], 0x10
jmp 0x100263e7
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100262ae
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 0x1002628e
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 0x10026265
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 0x10026296
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 0x10026296
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x100261c0
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 0x100263d7
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 0x100263aa
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 0x100263e1
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 0x100263e1
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 0x10026405
add dword [ebp - 0x208], 0x10
jmp 0x10026677
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x1002653e
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 0x10026450
movsx ecx, byte [edi + 0x4f0]
sub esi, ecx
jns 0x1002651e
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 0x100264f5
shl edx, cl
or edx, dword [edi + 0x3c0]
dec dword [ebp - 0x214]
jne 0x10026450
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 0x10026667
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 0x1002663a
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 0x10026671
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 0x10026671
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 0x10026695
add dword [ebp - 0x208], 0x10
jmp 0x1002690e
mov ebx, ecx
sar ebx, 0x1f
add ecx, ebx
xor ebx, ecx
mov dword [ebp - 0x20c], ecx
movzx ecx, byte [ebx + 0x1003f648]
mov ebx, dword [ebp - 0x208]
mov dword [ebp - 0x210], ecx
cmp ebx, 0x100
jl 0x100267d1