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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x228
mov dword [ebp - 0x228], edx
mov ebx, ecx
mov esi, dword [ebp + 8]
mov eax, dword [0x10443bf0]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov edi, 0x200
lea eax, [ebp - 0x210]
push edi
push 0xff
mov dword [ebp - 0x21c], eax
push eax
call fcn.1023e960
add esp, 0xc
mov eax, dword [ebx + 0x10]
mov dword [ebp - 0x214], eax
mov eax, dword [ebx + 4]
mov dword [ebp - 0x234], eax
cmp eax, edi
jb 0x10211553
mov eax, dword [ebx]
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax]
sub ecx, esi
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov esi, ecx
neg esi
cmovs esi, ecx
movzx ecx, byte [esi + 0x10414580]
xor esi, esi
dec esi
shl esi, cl
mov edx, dword [ebp + 0xc]
mov edi, dword [edx + ecx*4]
shl edi, cl
not esi
and esi, eax
or edi, esi
mov dword [ebp - 0x230], ebx
mov esi, dword [ebx + 8]
movsx ebx, byte [edx + ecx + 0x400]
add ebx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, ebx
js 0x102115bc
mov dword [ebp - 0x214], eax
mov ecx, ebx
shl esi, cl
or edi, esi
mov esi, dword [ebp - 0x21c]
jmp 0x10211663
shl esi, cl
mov edx, edi
mov edi, eax
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edx
mov eax, edx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211643
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea esi, [edx + ecx]
inc esi
jmp 0x10211654
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
add edi, 0x20
mov dword [ebp - 0x214], edi
mov edi, dword [ebp - 0x218]
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 2]
test ecx, ecx
je 0x102116c0
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + ecx*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + ecx + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102116d2
mov dword [ebp - 0x21c], esi
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x10211779
mov dword [ebp - 0x21c], esi
mov esi, 0x10
mov ebx, edi
jmp 0x10211781
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211759
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211770
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x10]
test ecx, ecx
je 0x102117da
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102117e4
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x1021188d
add esi, 0x10
mov edi, ebx
jmp 0x10211895
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021186d
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211884
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x20]
test ecx, ecx
je 0x102118ee
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102118f8
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x102119a5
add esi, 0x10
mov ebx, edi
jmp 0x102119ad
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211985
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021199c
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x12]
test ecx, ecx
je 0x10211a06
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10211a10
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x10211ab9
add esi, 0x10
mov edi, ebx
jmp 0x10211ac1
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211a99
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211ab0
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 4]
test ecx, ecx
je 0x10211b1a
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10211b24
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x10211bd1
add esi, 0x10
mov ebx, edi
jmp 0x10211bd9
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211bb1
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211bc8
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 6]
test ecx, ecx
je 0x10211c32
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10211c3c
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x10211ce5
add esi, 0x10
mov edi, ebx
jmp 0x10211ced
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211cc5
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211cdc
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x14]
test ecx, ecx
je 0x10211d46
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10211d50
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x10211dfd
add esi, 0x10
mov ebx, edi
jmp 0x10211e05
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211ddd
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211df4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x22]
test ecx, ecx
je 0x10211e5e
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10211e68
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x10211f11
add esi, 0x10
mov edi, ebx
jmp 0x10211f19
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10211ef1
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10211f08
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x30]
test ecx, ecx
je 0x10211f72
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10211f7c
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x10212029
add esi, 0x10
mov ebx, edi
jmp 0x10212031
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212009
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212020
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x40]
test ecx, ecx
je 0x1021208a
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10212094
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x1021213d
add esi, 0x10
mov edi, ebx
jmp 0x10212145
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021211d
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212134
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x32]
test ecx, ecx
je 0x1021219e
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102121a8
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x10212255
add esi, 0x10
mov ebx, edi
jmp 0x1021225d
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212235
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021224c
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x24]
test ecx, ecx
je 0x102122b6
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102122c0
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x10212369
add esi, 0x10
mov edi, ebx
jmp 0x10212371
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212349
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212360
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x16]
test ecx, ecx
je 0x102123ca
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102123d4
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x10212481
add esi, 0x10
mov ebx, edi
jmp 0x10212489
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212461
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212478
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 8]
test ecx, ecx
je 0x102124e2
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x102124ec
mov ecx, edx
shl ebx, cl
or edi, ebx
jmp 0x10212595
add esi, 0x10
mov edi, ebx
jmp 0x1021259d
shl ebx, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, edi
sar eax, cl
or eax, ebx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212575
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021258c
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0xa]
test ecx, ecx
je 0x102125f6
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov eax, dword [ebp + 0x10]
mov ebx, dword [eax + esi*4]
shl ebx, cl
or ebx, edx
movsx edx, byte [eax + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov eax, ecx
sub eax, edx
js 0x10212600
mov ecx, edx
shl edi, cl
or ebx, edi
jmp 0x102126ad
add esi, 0x10
mov ebx, edi
jmp 0x102126b5
shl edi, cl
mov dword [ebp - 0x214], eax
mov ecx, eax
neg cl
mov eax, ebx
sar eax, cl
or eax, edi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021268d
xor ecx, ecx
mov byte [esi + 1], cl
xor ecx, ecx
cmp edx, 0xff
sete cl
lea edx, [esi + ecx]
inc edx
mov ecx, eax
shr ecx, 0x10
mov byte [edx], cl
xor ecx, ecx
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ecx, esi
and ecx, 0xff0000
cmp ecx, 1
adc edx, 1
mov byte [edx], ah
xor ecx, ecx
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102126a4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx ecx, word [eax + 0x18]
test ecx, ecx
je 0x10212724
mov dword [ebp - 0x218], ebx
mov eax, ecx
sar eax, 0x1f
add eax, ecx
mov edx, ecx
neg edx
cmovs edx, ecx
movzx ecx, byte [edx + 0x10414580]
add esi, ecx
xor edx, edx
dec edx
shl edx, cl
not edx
and edx, eax
mov edi, dword [ebp + 0x10]
mov eax, dword [edi + esi*4]
shl eax, cl
or eax, edx
movsx edx, byte [edi + esi + 0x400]
add edx, ecx
mov ecx, dword [ebp - 0x214]
mov ebx, ecx
sub ebx, edx
js 0x1021272e
mov ecx, edx
mov edx, dword [ebp - 0x218]
shl edx, cl
or eax, edx
xor esi, esi
mov dword [ebp - 0x214], ebx
mov edx, eax
jmp 0x102127e5
add esi, 0x10
mov edx, ebx
jmp 0x102127e5
mov edx, dword [ebp - 0x218]
shl edx, cl
mov edi, ebx
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], eax
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102127bd
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102127d4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov edx, dword [ebp - 0x218]
add edi, 0x20
xor esi, esi
mov dword [ebp - 0x214], edi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x26]
test eax, eax
je 0x10212849
mov edi, edx
mov edx, eax
sar edx, 0x1f
add edx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx ebx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x10212851
mov dword [ebp - 0x224], ebx
mov esi, dword [ebp + 0x10]
movsx ecx, byte [esi + 0x4f0]
mov eax, dword [ebp - 0x214]
mov ebx, eax
sub ebx, ecx
mov dword [ebp - 0x218], ebx
mov ebx, dword [esi + 0x3c0]
js 0x10212868
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
jmp 0x10212920
add esi, 0x10
jmp 0x10212a2b
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x218], eax
mov dword [ebp - 0x220], edi
jmp 0x10212928
mov ecx, eax
shl edi, cl
mov eax, dword [ebp - 0x218]
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], cl
test eax, 0x80808080
je 0x102128f3
xor eax, eax
mov byte [esi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [esi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov esi, ebx
not esi
mov eax, esi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and esi, 0xff00
cmp esi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021290a
mov eax, ebx
shr eax, 0x10
mov byte [esi + 1], al
mov byte [esi + 2], bh
mov byte [esi + 3], bl
add esi, 4
mov dword [ebp - 0x21c], esi
add dword [ebp - 0x218], 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
xor esi, esi
mov ebx, dword [ebp - 0x224]
add esi, ebx
xor eax, eax
dec eax
mov ecx, ebx
shl eax, cl
not eax
and edx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, edx
mov edx, edi
movsx ecx, byte [eax + esi + 0x400]
add ecx, ebx
mov ebx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x1021296c
mov eax, dword [ebp - 0x220]
shl eax, cl
or edx, eax
jmp 0x10212a29
mov ecx, ebx
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edx
mov eax, edx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102129fd
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212a14
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x34]
test eax, eax
je 0x10212a97
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x10212a9f
mov dword [ebp - 0x22c], edx
mov edx, dword [ebp + 0x10]
movsx ecx, byte [edx + 0x4f0]
mov ebx, dword [ebp - 0x214]
mov eax, ebx
sub eax, ecx
mov edx, dword [edx + 0x3c0]
js 0x10212ab6
shl edi, cl
or edx, edi
mov dword [ebp - 0x220], edx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x10212b7e
add esi, 0x10
jmp 0x10212c9f
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x10212b92
mov ecx, ebx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
mov ebx, edx
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov edx, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10212b47
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov ebx, edx
mov eax, edx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, edx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212b60
mov ecx, edx
mov eax, edx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], ch
mov byte [edi + 3], cl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10212bdc
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10212c9f
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212c71
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212c88
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x42]
test eax, eax
je 0x10212d0b
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x10212d13
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10212d2a
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x10212dea
add esi, 0x10
jmp 0x10212f0b
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x10212dfe
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10212db5
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212dcc
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10212e48
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10212f0b
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10212edd
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10212ef4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x50]
test eax, eax
je 0x10212f77
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x10212f7f
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10212f96
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x10213056
add esi, 0x10
jmp 0x10213177
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x1021306a
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10213021
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213038
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x102130b4
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10213177
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10213149
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213160
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x60]
test eax, eax
je 0x102131e3
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x102131eb
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10213202
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x102132c2
add esi, 0x10
jmp 0x102133e3
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x102132d6
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x1021328d
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102132a4
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10213320
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x102133e3
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102133b5
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102133cc
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x52]
test eax, eax
je 0x1021344f
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x10213457
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x1021346e
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x1021352e
add esi, 0x10
jmp 0x1021364f
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x10213542
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x102134f9
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213510
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x1021358c
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x1021364f
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10213621
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213638
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x44]
test eax, eax
je 0x102136bb
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x102136c3
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x102136da
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x1021379a
add esi, 0x10
jmp 0x102138bb
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x102137ae
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10213765
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021377c
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x102137f8
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x102138bb
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021388d
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102138a4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x36]
test eax, eax
je 0x10213927
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x1021392f
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10213946
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x10213a06
add esi, 0x10
jmp 0x10213b27
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x10213a1a
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x102139d1
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102139e8
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10213a64
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10213b27
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10213af9
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213b10
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x28]
test eax, eax
je 0x10213b93
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x10213b9b
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10213bb2
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x10213c72
add esi, 0x10
jmp 0x10213d93
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x10213c86
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10213c3d
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213c54
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10213cd0
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10213d93
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10213d65
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213d7c
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
mov dword [ebp - 0x214], eax
xor esi, esi
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x1a]
test eax, eax
je 0x10213dff
mov edi, edx
mov ebx, eax
sar ebx, 0x1f
add ebx, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x218], ebx
jb 0x10213e07
mov dword [ebp - 0x22c], edx
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov eax, dword [ebp - 0x214]
mov edx, eax
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10213e1e
shl edi, cl
or ebx, edi
mov dword [ebp - 0x220], ebx
mov ebx, eax
mov edx, dword [ebp - 0x22c]
jmp 0x10213ede
add esi, 0x10
jmp 0x10213fff
mov eax, dword [ebp - 0x214]
mov dword [ebp - 0x224], eax
mov dword [ebp - 0x220], edi
jmp 0x10213ef2
mov ecx, edx
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10213ea9
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213ec0
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edx, dword [ebp - 0x22c]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x220], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
mov dword [ebp - 0x214], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
mov ebx, dword [ebp - 0x218]
and ebx, eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, ebx
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
mov ebx, dword [ebp - 0x214]
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10213f3c
mov eax, dword [ebp - 0x220]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10213fff
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x220]
shl esi, cl
mov ecx, ebx
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10213fd1
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10213fe8
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0xc]
test eax, eax
je 0x1021406f
mov dword [ebp - 0x218], edx
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x10214077
mov dword [ebp - 0x220], edi
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov edi, dword [ebp - 0x214]
mov eax, edi
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10214082
mov edi, dword [ebp - 0x218]
shl edi, cl
or ebx, edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov edi, dword [ebp - 0x220]
jmp 0x10214148
add esi, 0x10
jmp 0x10214261
mov ebx, dword [ebp - 0x214]
jmp 0x1021414e
mov ecx, edi
mov edi, dword [ebp - 0x218]
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10214113
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021412a
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
add edi, 4
mov dword [ebp - 0x21c], edi
mov edi, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x218], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
and edi, eax
mov dword [ebp - 0x220], edi
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x1021419e
mov eax, dword [ebp - 0x218]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10214261
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x218]
shl esi, cl
neg bl
mov dword [ebp - 0x218], edi
mov eax, edi
mov ecx, ebx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10214233
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021424a
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
add esi, 4
mov dword [ebp - 0x21c], esi
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0xe]
test eax, eax
je 0x102142d1
mov dword [ebp - 0x218], edx
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x102142d9
mov dword [ebp - 0x220], edi
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov edi, dword [ebp - 0x214]
mov eax, edi
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x102142e4
mov edi, dword [ebp - 0x218]
shl edi, cl
or ebx, edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov edi, dword [ebp - 0x220]
jmp 0x102143a6
add esi, 0x10
jmp 0x102144bb
mov ebx, dword [ebp - 0x214]
jmp 0x102143ac
mov ecx, edi
mov edi, dword [ebp - 0x218]
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x1021436f
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
jmp 0x10214382
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
mov eax, edi
add eax, 4
mov dword [ebp - 0x21c], eax
mov edi, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x218], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
and edi, eax
mov dword [ebp - 0x220], edi
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x102143fc
mov eax, dword [ebp - 0x218]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x102144bb
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x218]
shl esi, cl
neg bl
mov dword [ebp - 0x218], edi
mov eax, edi
mov ecx, ebx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021448b
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x1021449e
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x1c]
test eax, eax
je 0x1021452b
mov dword [ebp - 0x218], edx
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x10214533
mov dword [ebp - 0x220], edi
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov edi, dword [ebp - 0x214]
mov eax, edi
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x1021453e
mov edi, dword [ebp - 0x218]
shl edi, cl
or ebx, edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov edi, dword [ebp - 0x220]
jmp 0x10214600
add esi, 0x10
jmp 0x10214715
mov ebx, dword [ebp - 0x214]
jmp 0x10214606
mov ecx, edi
mov edi, dword [ebp - 0x218]
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x102145c9
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
jmp 0x102145dc
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
mov eax, edi
add eax, 4
mov dword [ebp - 0x21c], eax
mov edi, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x218], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
and edi, eax
mov dword [ebp - 0x220], edi
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10214656
mov eax, dword [ebp - 0x218]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10214715
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x218]
shl esi, cl
neg bl
mov dword [ebp - 0x218], edi
mov eax, edi
mov ecx, ebx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102146e5
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x102146f8
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x2a]
test eax, eax
je 0x10214785
mov dword [ebp - 0x218], edx
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x1021478d
mov dword [ebp - 0x220], edi
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov edi, dword [ebp - 0x214]
mov eax, edi
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10214798
mov edi, dword [ebp - 0x218]
shl edi, cl
or ebx, edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov edi, dword [ebp - 0x220]
jmp 0x1021485a
add esi, 0x10
jmp 0x1021496f
mov ebx, dword [ebp - 0x214]
jmp 0x10214860
mov ecx, edi
mov edi, dword [ebp - 0x218]
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10214823
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
jmp 0x10214836
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
mov eax, edi
add eax, 4
mov dword [ebp - 0x21c], eax
mov edi, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x218], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
and edi, eax
mov dword [ebp - 0x220], edi
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x102148b0
mov eax, dword [ebp - 0x218]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x1021496f
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x218]
shl esi, cl
neg bl
mov dword [ebp - 0x218], edi
mov eax, edi
mov ecx, ebx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021493f
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10214952
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x38]
test eax, eax
je 0x102149df
mov dword [ebp - 0x218], edx
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x102149e7
mov dword [ebp - 0x220], edi
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov edi, dword [ebp - 0x214]
mov eax, edi
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x102149f2
mov edi, dword [ebp - 0x218]
shl edi, cl
or ebx, edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov edi, dword [ebp - 0x220]
jmp 0x10214ab4
add esi, 0x10
jmp 0x10214bc9
mov ebx, dword [ebp - 0x214]
jmp 0x10214aba
mov ecx, edi
mov edi, dword [ebp - 0x218]
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10214a7d
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
jmp 0x10214a90
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
mov eax, edi
add eax, 4
mov dword [ebp - 0x21c], eax
mov edi, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x218], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
and edi, eax
mov dword [ebp - 0x220], edi
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10214b0a
mov eax, dword [ebp - 0x218]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10214bc9
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x218]
shl esi, cl
neg bl
mov dword [ebp - 0x218], edi
mov eax, edi
mov ecx, ebx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10214b99
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10214bac
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x46]
test eax, eax
je 0x10214c39
mov dword [ebp - 0x218], edx
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx edx, byte [ecx + 0x10414580]
cmp esi, 0x100
jb 0x10214c41
mov dword [ebp - 0x220], edi
mov ebx, dword [ebp + 0x10]
movsx ecx, byte [ebx + 0x4f0]
mov edi, dword [ebp - 0x214]
mov eax, edi
sub eax, ecx
mov ebx, dword [ebx + 0x3c0]
js 0x10214c4c
mov edi, dword [ebp - 0x218]
shl edi, cl
or ebx, edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov edi, dword [ebp - 0x220]
jmp 0x10214d0e
add esi, 0x10
jmp 0x10214e23
mov ebx, dword [ebp - 0x214]
jmp 0x10214d14
mov ecx, edi
mov edi, dword [ebp - 0x218]
shl edi, cl
mov dword [ebp - 0x224], eax
mov ecx, eax
neg cl
shr ebx, cl
or ebx, edi
mov eax, 0xfefefefe
sub eax, ebx
and eax, ebx
mov ecx, ebx
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test eax, 0x80808080
je 0x10214cd7
xor eax, eax
mov byte [edi + 1], al
xor eax, eax
cmp ecx, 0xff
sete al
lea ecx, [edi + eax]
inc ecx
mov eax, ebx
shr eax, 0x10
mov byte [ecx], al
xor eax, eax
mov byte [ecx + 1], al
mov edi, ebx
not edi
mov eax, edi
and eax, 0xff0000
cmp eax, 1
adc ecx, 1
mov byte [ecx], bh
xor eax, eax
mov byte [ecx + 1], al
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], bl
mov byte [ecx + 1], al
xor eax, eax
cmp bl, 0xff
sete al
add eax, ecx
inc eax
jmp 0x10214cea
mov eax, ebx
shr eax, 0x10
mov byte [edi + 1], al
mov byte [edi + 2], bh
mov byte [edi + 3], bl
mov eax, edi
add eax, 4
mov dword [ebp - 0x21c], eax
mov edi, dword [ebp - 0x220]
mov ebx, dword [ebp - 0x224]
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov eax, dword [eax + 0x3c0]
mov dword [ebp - 0x218], eax
add esi, 0xffffff00
mov eax, ebx
mov dword [ebp - 0x224], ebx
xor eax, eax
dec eax
mov ecx, edx
shl eax, cl
add esi, edx
not eax
and edi, eax
mov dword [ebp - 0x220], edi
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, edx
sub ebx, ecx
mov dword [ebp - 0x214], ebx
js 0x10214d64
mov eax, dword [ebp - 0x218]
shl eax, cl
or edi, eax
xor esi, esi
mov edx, edi
jmp 0x10214e23
mov ecx, dword [ebp - 0x224]
mov esi, dword [ebp - 0x218]
shl esi, cl
neg bl
mov dword [ebp - 0x218], edi
mov eax, edi
mov ecx, ebx
sar eax, cl
or eax, esi
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10214df3
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10214e06
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x54]
test eax, eax
je 0x10214f52
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10214f5a
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10214e85
shl edx, cl
or edx, eax
jmp 0x10214f33
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10214f10
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10214f27
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10214e68
jmp 0x10214f60
add esi, 0x10
jmp 0x10215069
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10214fb4
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10215069
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10215039
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x1021504c
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x62]
test eax, eax
je 0x10215198
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x102151a0
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102150cb
shl edx, cl
or edx, eax
jmp 0x10215179
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10215156
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021516d
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102150ae
jmp 0x102151a6
add esi, 0x10
jmp 0x102152af
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102151fa
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x102152af
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021527f
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10215292
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x70]
test eax, eax
je 0x102153de
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x102153e6
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10215311
shl edx, cl
or edx, eax
jmp 0x102153bf
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x1021539c
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102153b3
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102152f4
jmp 0x102153ec
add esi, 0x10
jmp 0x102154f5
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10215440
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x102154f5
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102154c5
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x102154d8
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x72]
test eax, eax
je 0x10215624
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x1021562c
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10215557
shl edx, cl
or edx, eax
jmp 0x10215605
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102155e2
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102155f9
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x1021553a
jmp 0x10215632
add esi, 0x10
jmp 0x1021573b
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10215686
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x1021573b
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021570b
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x1021571e
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x64]
test eax, eax
je 0x1021586a
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10215872
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x1021579d
shl edx, cl
or edx, eax
jmp 0x1021584b
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10215828
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021583f
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10215780
jmp 0x10215878
add esi, 0x10
jmp 0x10215981
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102158cc
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10215981
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10215951
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10215964
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x56]
test eax, eax
je 0x10215ab0
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10215ab8
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102159e3
shl edx, cl
or edx, eax
jmp 0x10215a91
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10215a6e
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10215a85
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102159c6
jmp 0x10215abe
add esi, 0x10
jmp 0x10215bc7
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10215b12
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10215bc7
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10215b97
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10215baa
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x48]
test eax, eax
je 0x10215cf6
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10215cfe
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10215c29
shl edx, cl
or edx, eax
jmp 0x10215cd7
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10215cb4
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10215ccb
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10215c0c
jmp 0x10215d04
add esi, 0x10
jmp 0x10215e0d
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10215d58
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10215e0d
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10215ddd
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10215df0
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x3a]
test eax, eax
je 0x10215f3c
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10215f44
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10215e6f
shl edx, cl
or edx, eax
jmp 0x10215f1d
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10215efa
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10215f11
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10215e52
jmp 0x10215f4a
add esi, 0x10
jmp 0x10216053
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10215f9e
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10216053
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10216023
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10216036
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x2c]
test eax, eax
je 0x10216182
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x1021618a
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102160b5
shl edx, cl
or edx, eax
jmp 0x10216163
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10216140
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10216157
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10216098
jmp 0x10216190
add esi, 0x10
jmp 0x10216299
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102161e4
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10216299
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10216269
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x1021627c
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x1e]
test eax, eax
je 0x102163c8
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x102163d0
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102162fb
shl edx, cl
or edx, eax
jmp 0x102163a9
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10216386
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021639d
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102162de
jmp 0x102163d6
add esi, 0x10
jmp 0x102164df
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x1021642a
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x102164df
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102164af
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x102164c2
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x2e]
test eax, eax
je 0x1021660e
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10216616
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10216541
shl edx, cl
or edx, eax
jmp 0x102165ef
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102165cc
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102165e3
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10216524
jmp 0x1021661c
add esi, 0x10
jmp 0x10216725
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10216670
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10216725
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102166f5
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10216708
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x3c]
test eax, eax
je 0x10216854
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x1021685c
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10216787
shl edx, cl
or edx, eax
jmp 0x10216835
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10216812
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10216829
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x1021676a
jmp 0x10216862
add esi, 0x10
jmp 0x1021696b
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102168b6
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x1021696b
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021693b
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x1021694e
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x4a]
test eax, eax
je 0x10216a9a
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10216aa2
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102169cd
shl edx, cl
or edx, eax
jmp 0x10216a7b
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10216a58
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10216a6f
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102169b0
jmp 0x10216aa8
add esi, 0x10
jmp 0x10216bb1
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10216afc
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10216bb1
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10216b81
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10216b94
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x58]
test eax, eax
je 0x10216ce0
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10216ce8
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10216c13
shl edx, cl
or edx, eax
jmp 0x10216cc1
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10216c9e
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10216cb5
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10216bf6
jmp 0x10216cee
add esi, 0x10
jmp 0x10216df7
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10216d42
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10216df7
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10216dc7
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10216dda
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x66]
test eax, eax
je 0x10216f26
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10216f2e
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10216e59
shl edx, cl
or edx, eax
jmp 0x10216f07
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10216ee4
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10216efb
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10216e3c
jmp 0x10216f34
add esi, 0x10
jmp 0x1021703d
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10216f88
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x1021703d
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021700d
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10217020
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x74]
test eax, eax
je 0x1021716c
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10217174
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x1021709f
shl edx, cl
or edx, eax
jmp 0x1021714d
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x1021712a
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10217141
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10217082
jmp 0x1021717a
add esi, 0x10
jmp 0x10217283
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102171ce
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10217283
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10217253
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10217266
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x76]
test eax, eax
je 0x102173b2
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x102173ba
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102172e5
shl edx, cl
or edx, eax
jmp 0x10217393
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10217370
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10217387
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102172c8
jmp 0x102173c0
add esi, 0x10
jmp 0x102174c9
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10217414
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x102174c9
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10217499
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x102174ac
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x68]
test eax, eax
je 0x102175f8
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10217600
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x1021752b
shl edx, cl
or edx, eax
jmp 0x102175d9
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102175b6
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102175cd
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x1021750e
jmp 0x10217606
add esi, 0x10
jmp 0x1021770f
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x1021765a
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x1021770f
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102176df
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x102176f2
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x5a]
test eax, eax
je 0x1021783e
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10217846
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10217771
shl edx, cl
or edx, eax
jmp 0x1021781f
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102177fc
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10217813
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10217754
jmp 0x1021784c
add esi, 0x10
jmp 0x10217955
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102178a0
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10217955
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10217925
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10217938
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x4c]
test eax, eax
je 0x10217a84
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10217a8c
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102179b7
shl edx, cl
or edx, eax
jmp 0x10217a65
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10217a42
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10217a59
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x1021799a
jmp 0x10217a92
add esi, 0x10
jmp 0x10217b9b
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10217ae6
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10217b9b
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10217b6b
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10217b7e
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x3e]
test eax, eax
je 0x10217cca
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10217cd2
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10217bfd
shl edx, cl
or edx, eax
jmp 0x10217cab
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10217c88
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10217c9f
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10217be0
jmp 0x10217cd8
add esi, 0x10
jmp 0x10217de1
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10217d2c
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10217de1
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10217db1
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10217dc4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x4e]
test eax, eax
je 0x10217f10
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10217f18
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10217e43
shl edx, cl
or edx, eax
jmp 0x10217ef1
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10217ece
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10217ee5
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10217e26
jmp 0x10217f1e
add esi, 0x10
jmp 0x10218027
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10217f72
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10218027
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10217ff7
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x1021800a
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x5c]
test eax, eax
je 0x10218156
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x1021815e
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10218089
shl edx, cl
or edx, eax
jmp 0x10218137
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10218114
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x1021812b
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x1021806c
jmp 0x10218164
add esi, 0x10
jmp 0x1021826d
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102181b8
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x1021826d
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021823d
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10218250
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x6a]
test eax, eax
je 0x1021839c
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x102183a4
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102182cf
shl edx, cl
or edx, eax
jmp 0x1021837d
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x1021835a
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10218371
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102182b2
jmp 0x102183aa
add esi, 0x10
jmp 0x102184b3
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102183fe
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x102184b3
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10218483
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10218496
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x78]
test eax, eax
je 0x102185e2
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x102185ea
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10218515
shl edx, cl
or edx, eax
jmp 0x102185c3
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102185a0
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102185b7
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x102184f8
jmp 0x102185f0
add esi, 0x10
jmp 0x102186f9
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10218644
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x102186f9
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x102186c9
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x102186dc
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x7a]
test eax, eax
je 0x10218828
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10218830
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x1021875b
shl edx, cl
or edx, eax
jmp 0x10218809
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102187e6
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x102187fd
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x1021873e
jmp 0x10218836
add esi, 0x10
jmp 0x1021893f
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x1021888a
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x1021893f
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x1021890f
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10218922
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x6c]
test eax, eax
je 0x10218a6e
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10218a76
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x102189a1
shl edx, cl
or edx, eax
jmp 0x10218a4f
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10218a2c
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10218a43
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10218984
jmp 0x10218a7c
add esi, 0x10
jmp 0x10218b85
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10218ad0
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10218b85
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10218b55
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10218b68
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x5e]
test eax, eax
je 0x10218cb4
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10218cbc
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10218be7
shl edx, cl
or edx, eax
jmp 0x10218c95
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10218c72
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10218c89
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10218bca
jmp 0x10218cc2
add esi, 0x10
jmp 0x10218dcb
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10218d16
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10218dcb
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10218d9b
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10218dae
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x6e]
test eax, eax
je 0x10218efa
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10218f02
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10218e2d
shl edx, cl
or edx, eax
jmp 0x10218edb
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x10218eb8
xor edx, edx
mov byte [edi + 1], dl
xor edx, edx
cmp ecx, 0xff
sete dl
lea ecx, [edi + edx]
inc ecx
mov edx, eax
shr edx, 0x10
mov byte [ecx], dl
xor edx, edx
mov byte [ecx + 1], dl
mov edi, eax
not edi
mov edx, edi
and edx, 0xff0000
cmp edx, 1
adc ecx, 1
mov byte [ecx], ah
xor edx, edx
mov byte [ecx + 1], dl
and edi, 0xff00
cmp edi, 1
adc ecx, 1
mov byte [ecx], al
mov byte [ecx + 1], dl
xor edx, edx
cmp al, 0xff
sete dl
lea eax, [ecx + edx]
inc eax
mov dword [ebp - 0x21c], eax
jmp 0x10218ecf
mov ecx, eax
shr ecx, 0x10
mov byte [edi + 1], cl
mov byte [edi + 2], ah
mov byte [edi + 3], al
add edi, 4
mov dword [ebp - 0x21c], edi
add ebx, 0x20
mov eax, dword [ebp + 0x10]
mov edx, dword [eax + 0x3c0]
add esi, 0xffffff00
lea eax, [esi + 0x100]
mov dword [ebp - 0x214], ebx
cmp eax, 0x1ff
ja 0x10218e10
jmp 0x10218f08
add esi, 0x10
jmp 0x10219011
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x10218f5c
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10219011
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10218fe1
xor ecx, ecx
mov byte [esi + 1], cl
xor ebx, ebx
cmp edx, 0xff
sete bl
lea edx, [esi + ebx]
inc edx
mov ebx, eax
shr ebx, 0x10
mov byte [edx], bl
mov byte [edx + 1], cl
mov esi, eax
not esi
mov ebx, esi
and ebx, 0xff0000
cmp ebx, 1
adc edx, 1
mov byte [edx], ah
mov byte [edx + 1], cl
and esi, 0xff00
cmp esi, 1
adc edx, 1
mov byte [edx], al
mov byte [edx + 1], cl
xor ecx, ecx
cmp al, 0xff
sete cl
lea eax, [edx + ecx]
inc eax
jmp 0x10218ff4
mov ecx, eax
shr ecx, 0x10
mov byte [esi + 1], cl
mov byte [esi + 2], ah
mov byte [esi + 3], al
mov eax, esi
add eax, 4
mov dword [ebp - 0x21c], eax
mov eax, dword [ebp - 0x214]
mov edx, dword [ebp - 0x218]
add eax, 0x20
xor esi, esi
mov dword [ebp - 0x214], eax
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x7c]
test eax, eax
je 0x10219140
mov edi, eax
sar edi, 0x1f
add edi, eax
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], edi
mov dword [ebp - 0x218], eax
jb 0x10219148
mov ebx, dword [ebp - 0x214]
mov eax, dword [ebp + 0x10]
movsx ecx, byte [eax + 0x4f0]
sub ebx, ecx
mov eax, dword [eax + 0x3c0]
js 0x10219073
shl edx, cl
or edx, eax
jmp 0x10219121
mov ecx, dword [ebp - 0x214]
shl edx, cl
mov ecx, ebx
neg cl
shr eax, cl
or eax, edx
mov edx, 0xfefefefe
sub edx, eax
and edx, eax
mov ecx, eax
shr ecx, 0x18
mov edi, dword [ebp - 0x21c]
mov byte [edi], cl
test edx, 0x80808080
je 0x102190fe
add esi, 0x10
jmp 0x10219257
mov ebx, dword [ebp - 0x214]
add esi, dword [ebp - 0x218]
xor eax, eax
dec eax
mov ecx, dword [ebp - 0x218]
shl eax, cl
not eax
and dword [ebp - 0x220], eax
mov eax, dword [ebp + 0x10]
mov edi, dword [eax + esi*4]
mov ecx, dword [ebp - 0x218]
shl edi, cl
or edi, dword [ebp - 0x220]
movsx ecx, byte [eax + esi + 0x400]
add ecx, dword [ebp - 0x218]
mov eax, ebx
sub eax, ecx
mov dword [ebp - 0x214], eax
js 0x102191a2
shl edx, cl
or edi, edx
xor esi, esi
mov edx, edi
jmp 0x10219257
mov ecx, ebx
shl edx, cl
mov ecx, eax
neg cl
mov dword [ebp - 0x218], edi
mov eax, edi
sar eax, cl
or eax, edx
mov ecx, 0xfefefefe
sub ecx, eax
and ecx, eax
mov edx, eax
shr edx, 0x18
mov esi, dword [ebp - 0x21c]
mov byte [esi], dl
test ecx, 0x80808080
je 0x10219227
mov eax, dword [ebp - 0x228]
movsx eax, word [eax + 0x7e]
test eax, eax
je 0x10219397
mov ecx, eax
sar ecx, 0x1f
add ecx, eax
mov dword [ebp - 0x228], ecx
mov ecx, eax
neg ecx
cmovs ecx, eax
movzx eax, byte [ecx + 0x10414580]
cmp esi, 0x100
mov dword [ebp - 0x220], eax
jb 0x10219440
mov esi, dword [ebp + 0x10]
movsx ecx, byte [esi + 0x400]
mov edi, dword [ebp - 0x214]
mov ebx, edi
sub ebx, ecx
mov eax, dword [esi]
jns 0x10219491