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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0xb0
mov eax, dword [esp + 0xc8]
movzx edi, byte [eax - 5]
mov eax, edi
mov dword [esp + 0x24], edi
mov edi, dword [esp + 0xc8]
movzx ebx, byte [edi - 4]
movzx edi, bl
mov ecx, edi
mov dword [esp + 0x14], edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0x91], bl
movzx ebx, byte [edi - 3]
movzx edi, bl
mov esi, edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0x88], bl
movzx ebx, byte [edi - 2]
movzx edi, bl
mov edx, edi
mov dword [esp], edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0x74], bl
movzx ebx, byte [edi - 1]
movzx edi, bl
mov byte [esp + 0x3c], bl
mov ebx, dword [esp + 0xc8]
movzx ebx, byte [ebx]
movzx ebp, bl
mov byte [esp + 0x40], bl
mov ebx, dword [esp + 0xc8]
movzx ebx, byte [ebx + 1]
mov byte [esp + 0x78], bl
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xc8]
movzx ebx, byte [ebx + 2]
mov byte [esp + 0x7c], bl
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0xc8]
movzx ebx, byte [ebx + 3]
mov byte [esp + 0x70], bl
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 4], esi
movzx ebx, byte [ebx + 4]
mov dword [esp + 0x2c], ebx
mov ebx, eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x50], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x44], ecx
mov dword [esp + 0x48], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x58], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x34], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x4c], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x80], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x10]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x84], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
sub ebx, dword [esp + 8]
mov dword [esp + 0x38], ebx
mov esi, dword [esp + 4]
lea eax, [ebx + 0xff]
mov edx, ebx
mov ebx, dword [esp]
mov dword [esp + 0x68], eax
lea eax, [esi + esi]
mov dword [esp + 0x28], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x18], eax
lea eax, [edi + edi]
mov dword [esp + 0x20], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc98750
mov eax, dword [esp + 0x30]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp ecx, dword [esp + 0xd0]
jge 0x6fc95a97
mov ebx, dword [esp + 0x18]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x14]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x20]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x10]
sub edx, esi
mov esi, dword [esp + 0x1c]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x6c], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x6c]
mov dword [esp + 0x6c], esi
mov esi, dword [esp + 0x34]
sub dword [esp + 0x6c], eax
mov eax, dword [esp + 0x6c]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a0b8
test ebx, ebx
js 0x6fc95a73
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x3c]
mov ebx, esi
mov eax, dword [esp + 0xc8]
sub ecx, ebx
mov byte [eax - 1], cl
movzx eax, byte [esp + 0x40]
lea ecx, [esi + eax]
mov eax, dword [esp + 0xc8]
mov byte [eax], cl
mov eax, dword [esp + 0xd4]
test eax, eax
jne 0x6fc996b2
mov eax, dword [esp + 0xcc]
mov edi, dword [esp + 0xc8]
movzx edi, byte [edi + eax - 5]
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0xc8]
lea esi, [edi + eax - 4]
movzx ebx, byte [esi]
mov dword [esp + 0x58], esi
movzx edi, bl
mov ecx, edi
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0xa8], bl
lea esi, [edi + eax - 3]
movzx ebx, byte [esi]
mov dword [esp + 0x48], esi
movzx edi, bl
mov esi, edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0xa0], bl
lea ebp, [edi + eax - 2]
movzx ebx, byte [ebp]
mov dword [esp + 0x4c], ebp
movzx edi, bl
mov edx, edi
mov dword [esp], edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0x91], bl
lea ebp, [edi + eax - 1]
movzx ebx, byte [ebp]
mov dword [esp + 0x38], ebp
mov ebp, dword [esp + 0xc8]
movzx edi, bl
add ebp, eax
mov byte [esp + 0x5c], bl
movzx ebx, byte [ebp]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x92], bl
movzx ebp, bl
mov ebx, dword [esp + 0xc8]
lea ebx, [ebx + eax + 1]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0xc8]
lea ebx, [ebx + eax + 2]
mov dword [esp + 0x54], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x94], bl
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xc8]
mov dword [esp + 4], esi
lea ebx, [ebx + eax + 3]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x8c], bl
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0xc8]
movzx eax, byte [ebx + eax + 4]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x28], eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x6c], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x3c], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x68], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x98], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x14]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x9c], ebx
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 4]
sub ebx, dword [esp + 8]
lea eax, [ebx + 0xff]
mov edx, ebx
mov dword [esp + 0x40], ebx
mov ebx, dword [esp]
mov dword [esp + 0x84], eax
lea eax, [esi + esi]
mov dword [esp + 0x2c], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x1c], eax
lea eax, [edi + edi]
mov dword [esp + 0x20], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc984b8
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp dword [esp + 0xd0], ecx
jle 0x6fc95e2b
mov ebx, dword [esp + 0x1c]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x18]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x20]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x14]
sub edx, esi
mov esi, dword [esp + 0x30]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x88], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x88]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x3c]
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a090
test ebx, ebx
js 0x6fc95e16
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x5c]
mov ebx, esi
mov eax, dword [esp + 0x38]
sub ecx, ebx
mov byte [eax], cl
mov eax, dword [esp + 0x24]
add byte [eax], bl
mov ebx, dword [esp + 0xd4]
test ebx, ebx
jne 0x6fc99492
mov eax, dword [esp + 0xcc]
lea ecx, [eax + eax]
mov eax, dword [esp + 0xc8]
lea esi, [eax + ecx - 4]
movzx edi, byte [eax + ecx - 5]
movzx ebx, byte [esi]
lea ebp, [eax + ecx - 2]
mov dword [esp + 0x58], esi
lea esi, [eax + ecx - 3]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x14], edi
mov byte [esp + 0xa8], bl
movzx edi, bl
movzx ebx, byte [esi]
mov dword [esp + 0x10], edi
mov dword [esp + 0x48], esi
movzx edi, bl
mov byte [esp + 0xa0], bl
movzx ebx, byte [ebp]
lea ebp, [eax + ecx - 1]
mov esi, edi
mov dword [esp + 0x38], ebp
movzx edi, bl
mov byte [esp + 0x91], bl
movzx ebx, byte [ebp]
mov edx, edi
mov ebp, dword [esp + 0x24]
add ebp, dword [esp + 0xcc]
mov dword [esp], edi
mov byte [esp + 0x5c], bl
movzx edi, bl
movzx ebx, byte [ebp]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x92], bl
movzx ebp, bl
lea ebx, [eax + ecx + 1]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
lea ebx, [eax + ecx + 2]
mov dword [esp + 0x54], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x94], bl
mov dword [esp + 0x18], ebx
lea ebx, [eax + ecx + 3]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x8c], bl
movzx eax, byte [eax + ecx + 4]
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 0x28], eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x6c], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x3c], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x68], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x98], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x18]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
sub ebx, dword [esp + 8]
mov dword [esp + 0x40], ebx
mov esi, dword [esp + 4]
lea eax, [ebx + 0xff]
mov edx, ebx
mov ebx, dword [esp]
mov dword [esp + 0x84], eax
lea eax, [esi + esi]
mov dword [esp + 0x2c], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x1c], eax
lea eax, [edi + edi]
mov dword [esp + 0x20], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc98224
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp dword [esp + 0xd0], ecx
jle 0x6fc9618e
mov ebx, dword [esp + 0x1c]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x10]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x20]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x18]
sub edx, esi
mov esi, dword [esp + 0x30]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x88], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x88]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x3c]
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a062
test ebx, ebx
js 0x6fc96179
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x5c]
mov ebx, esi
mov eax, dword [esp + 0x38]
sub ecx, ebx
mov byte [eax], cl
mov eax, dword [esp + 0x24]
add byte [eax], bl
mov eax, dword [esp + 0xd4]
test eax, eax
jne 0x6fc99272
mov eax, dword [esp + 0xcc]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0xc8]
lea esi, [eax + ecx - 4]
movzx edi, byte [eax + ecx - 5]
movzx ebx, byte [esi]
lea ebp, [eax + ecx - 2]
mov dword [esp + 0x58], esi
lea esi, [eax + ecx - 3]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x14], edi
mov byte [esp + 0xa8], bl
movzx edi, bl
movzx ebx, byte [esi]
mov dword [esp + 0x10], edi
mov dword [esp + 0x48], esi
movzx edi, bl
mov byte [esp + 0xa0], bl
movzx ebx, byte [ebp]
lea ebp, [eax + ecx - 1]
mov esi, edi
mov dword [esp + 0x38], ebp
movzx edi, bl
mov byte [esp + 0x91], bl
movzx ebx, byte [ebp]
mov edx, edi
mov ebp, dword [esp + 0x24]
add ebp, dword [esp + 0xcc]
mov dword [esp], edi
mov byte [esp + 0x5c], bl
movzx edi, bl
movzx ebx, byte [ebp]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x92], bl
movzx ebp, bl
lea ebx, [eax + ecx + 1]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
lea ebx, [eax + ecx + 2]
mov dword [esp + 0x54], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x94], bl
mov dword [esp + 0x18], ebx
lea ebx, [eax + ecx + 3]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x8c], bl
movzx eax, byte [eax + ecx + 4]
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 0x28], eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x6c], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x3c], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x68], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x98], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x18]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
sub ebx, dword [esp + 8]
mov dword [esp + 0x40], ebx
mov esi, dword [esp + 4]
lea eax, [ebx + 0xff]
mov edx, ebx
mov ebx, dword [esp]
mov dword [esp + 0x84], eax
lea eax, [esi + esi]
mov dword [esp + 0x2c], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x1c], eax
lea eax, [edi + edi]
mov dword [esp + 0x20], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc97f90
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp dword [esp + 0xd0], ecx
jle 0x6fc964f1
mov ebx, dword [esp + 0x1c]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x10]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x20]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x18]
sub edx, esi
mov esi, dword [esp + 0x30]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x88], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x88]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x3c]
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a0a4
test ebx, ebx
js 0x6fc964dc
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x5c]
mov ebx, esi
mov eax, dword [esp + 0x38]
sub ecx, ebx
mov byte [eax], cl
mov eax, dword [esp + 0x24]
add byte [eax], bl
mov eax, dword [esp + 0xd4]
test eax, eax
jne 0x6fc99052
mov eax, dword [esp + 0xcc]
lea ecx, [eax*4]
mov eax, dword [esp + 0xc8]
lea esi, [eax + ecx - 4]
movzx edi, byte [eax + ecx - 5]
movzx ebx, byte [esi]
lea ebp, [eax + ecx - 2]
mov dword [esp + 0x58], esi
lea esi, [eax + ecx - 3]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x14], edi
mov byte [esp + 0xa8], bl
movzx edi, bl
movzx ebx, byte [esi]
mov dword [esp + 0x10], edi
mov dword [esp + 0x48], esi
movzx edi, bl
mov byte [esp + 0xa0], bl
movzx ebx, byte [ebp]
lea ebp, [eax + ecx - 1]
mov esi, edi
mov dword [esp + 0x38], ebp
movzx edi, bl
mov byte [esp + 0x91], bl
movzx ebx, byte [ebp]
mov edx, edi
mov ebp, dword [esp + 0x24]
add ebp, dword [esp + 0xcc]
mov dword [esp], edi
mov byte [esp + 0x5c], bl
movzx edi, bl
movzx ebx, byte [ebp]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x92], bl
movzx ebp, bl
lea ebx, [eax + ecx + 1]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
lea ebx, [eax + ecx + 2]
mov dword [esp + 0x54], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x94], bl
mov dword [esp + 0x18], ebx
lea ebx, [eax + ecx + 3]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x8c], bl
movzx eax, byte [eax + ecx + 4]
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 0x28], eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x6c], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x3c], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x68], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x98], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x18]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
sub ebx, dword [esp + 8]
mov dword [esp + 0x40], ebx
mov esi, dword [esp + 4]
lea eax, [ebx + 0xff]
mov edx, ebx
mov ebx, dword [esp]
mov dword [esp + 0x84], eax
lea eax, [esi + esi]
mov dword [esp + 0x2c], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x1c], eax
lea eax, [edi + edi]
mov dword [esp + 0x20], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc97cf8
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp dword [esp + 0xd0], ecx
jle 0x6fc96858
mov ebx, dword [esp + 0x1c]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x10]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x20]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x18]
sub edx, esi
mov esi, dword [esp + 0x30]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x88], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x88]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x3c]
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a076
test ebx, ebx
js 0x6fc96843
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x5c]
mov ebx, esi
mov eax, dword [esp + 0x38]
sub ecx, ebx
mov byte [eax], cl
mov eax, dword [esp + 0x24]
add byte [eax], bl
mov ebx, dword [esp + 0xd4]
test ebx, ebx
jne 0x6fc98e32
mov eax, dword [esp + 0xcc]
lea ecx, [eax + eax*4]
mov eax, dword [esp + 0xc8]
lea esi, [eax + ecx - 4]
movzx edi, byte [eax + ecx - 5]
movzx ebx, byte [esi]
lea ebp, [eax + ecx - 2]
mov dword [esp + 0x58], esi
lea esi, [eax + ecx - 3]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x14], edi
mov byte [esp + 0xa8], bl
movzx edi, bl
movzx ebx, byte [esi]
mov dword [esp + 0x10], edi
mov dword [esp + 0x48], esi
movzx edi, bl
mov byte [esp + 0xa0], bl
movzx ebx, byte [ebp]
lea ebp, [eax + ecx - 1]
mov esi, edi
mov dword [esp + 0x38], ebp
movzx edi, bl
mov byte [esp + 0x91], bl
movzx ebx, byte [ebp]
mov edx, edi
mov ebp, dword [esp + 0x24]
add ebp, dword [esp + 0xcc]
mov dword [esp], edi
mov byte [esp + 0x5c], bl
movzx edi, bl
movzx ebx, byte [ebp]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x92], bl
movzx ebp, bl
lea ebx, [eax + ecx + 1]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
lea ebx, [eax + ecx + 2]
mov dword [esp + 0x54], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x94], bl
mov dword [esp + 0x18], ebx
lea ebx, [eax + ecx + 3]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x8c], bl
movzx eax, byte [eax + ecx + 4]
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 0x28], eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x6c], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x3c], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x68], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x98], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x18]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
sub ebx, dword [esp + 8]
mov dword [esp + 0x40], ebx
mov esi, dword [esp + 4]
lea eax, [ebx + 0xff]
mov edx, ebx
mov ebx, dword [esp]
mov dword [esp + 0x84], eax
lea eax, [esi + esi]
mov dword [esp + 0x30], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x20], eax
lea eax, [edi + edi]
mov dword [esp + 0x1c], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc97a64
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp dword [esp + 0xd0], ecx
jle 0x6fc96bbb
mov ebx, dword [esp + 0x20]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x10]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x1c]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x18]
sub edx, esi
mov esi, dword [esp + 0x2c]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x88], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x88]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x3c]
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a0d0
test ebx, ebx
js 0x6fc96ba6
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x5c]
mov ebx, esi
mov eax, dword [esp + 0x38]
sub ecx, ebx
mov byte [eax], cl
mov eax, dword [esp + 0x24]
add byte [eax], bl
mov eax, dword [esp + 0xd4]
test eax, eax
jne 0x6fc98c12
mov eax, dword [esp + 0xcc]
lea ecx, [eax + eax*2]
mov eax, dword [esp + 0xc8]
add ecx, ecx
lea esi, [eax + ecx - 4]
movzx edi, byte [eax + ecx - 5]
movzx ebx, byte [esi]
lea ebp, [eax + ecx - 2]
mov dword [esp + 0x58], esi
lea esi, [eax + ecx - 3]
mov dword [esp + 0x4c], ebp
mov dword [esp + 0x14], edi
mov byte [esp + 0xa8], bl
movzx edi, bl
movzx ebx, byte [esi]
mov dword [esp + 0x10], edi
mov dword [esp + 0x48], esi
movzx edi, bl
mov byte [esp + 0xa0], bl
movzx ebx, byte [ebp]
lea ebp, [eax + ecx - 1]
mov esi, edi
mov dword [esp + 0x38], ebp
movzx edi, bl
mov byte [esp + 0x91], bl
movzx ebx, byte [ebp]
mov edx, edi
mov ebp, dword [esp + 0x24]
add ebp, dword [esp + 0xcc]
mov dword [esp], edi
mov byte [esp + 0x5c], bl
movzx edi, bl
movzx ebx, byte [ebp]
mov dword [esp + 0x24], ebp
mov byte [esp + 0x92], bl
movzx ebp, bl
lea ebx, [eax + ecx + 1]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
lea ebx, [eax + ecx + 2]
mov dword [esp + 0x54], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x94], bl
mov dword [esp + 0x18], ebx
lea ebx, [eax + ecx + 3]
mov dword [esp + 0x44], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x8c], bl
movzx eax, byte [eax + ecx + 4]
mov dword [esp + 8], ebx
mov ecx, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov dword [esp + 4], esi
mov dword [esp + 0x28], eax
sub ebx, ecx
sub ecx, esi
lea eax, [ebx + 0xff]
sub esi, edx
mov dword [esp + 0x6c], eax
lea eax, [ecx + 0xff]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0xa4], ebx
mov dword [esp + 0x60], ecx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
movsx ecx, byte [eax + ecx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, edi
sub esi, ebp
mov dword [esp + 0x3c], esi
add ecx, ebx
mov ebx, edx
sub ebx, edi
lea eax, [ebx + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x68], ebx
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0xc4]
add ecx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp + 0xc]
add ecx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x98], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
mov esi, dword [esp + 0x18]
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + ebx + 0xff]
add ecx, ebx
mov ebx, esi
sub ebx, dword [esp + 8]
mov dword [esp + 0x40], ebx
mov esi, dword [esp + 4]
lea eax, [ebx + 0xff]
mov edx, ebx
mov ebx, dword [esp]
mov dword [esp + 0x84], eax
lea eax, [esi + esi]
mov dword [esp + 0x2c], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x1c], eax
lea eax, [edi + edi]
mov dword [esp + 0x20], eax
lea eax, [ebp + ebp]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + edx + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc977d0
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0xc4]
movzx ecx, byte [esi + eax + 0x1ff]
cmp dword [esp + 0xd0], ecx
jle 0x6fc96f20
mov ebx, dword [esp + 0x1c]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 4]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0xc]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x10]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov edx, esi
mov esi, dword [esp + 0x20]
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x18]
sub edx, esi
mov esi, dword [esp + 0x30]
sub esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 8]
add esi, ebx
lea ebx, [ecx + ecx]
sub esi, ebx
xor ebx, ebx
test eax, eax
setg bl
lea ecx, [ebx + ebx - 1]
mov dword [esp + 0x88], ecx
mov ecx, edx
sar ecx, 0x1f
mov ebx, ecx
mov ecx, edx
shr ecx, 0x1f
xor ebx, edx
add ebx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
cmp ebx, esi
cmovle esi, ebx
mov ebx, eax
mov ecx, esi
mov esi, eax
sar esi, 0x1f
xor esi, eax
shr ebx, 0x1f
add esi, ebx
cmp ecx, esi
cmovle esi, ecx
imul esi, dword [esp + 0x88]
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x3c]
sub dword [esp + 0x88], eax
mov eax, dword [esp + 0x88]
mov ecx, esi
shr ecx, 0x1f
add ecx, esi
xor esi, esi
lea ebx, [eax + eax*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc9a0f8
test ebx, ebx
js 0x6fc96f0b
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x5c]
mov ebx, esi
mov eax, dword [esp + 0x38]
sub ecx, ebx
mov byte [eax], cl
mov eax, dword [esp + 0x24]
add byte [eax], bl
mov eax, dword [esp + 0xd4]
test eax, eax
jne 0x6fc989f1
mov edi, dword [esp + 0xcc]
mov edx, dword [esp + 0xc8]
lea eax, [edi*8]
mov edi, eax
mov eax, dword [esp + 0xcc]
sub edi, eax
mov eax, edi
mov edi, dword [esp + 0xc8]
movzx edi, byte [edi + eax - 5]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0xc8]
lea esi, [edi + eax - 4]
movzx ecx, byte [esi]
mov dword [esp + 0x58], esi
movzx edi, cl
mov dword [esp + 0x10], edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0xa4], cl
lea esi, [edi + eax - 3]
movzx ecx, byte [esi]
mov dword [esp + 0x44], esi
lea esi, [edi + eax - 2]
movzx ebx, byte [esi]
mov dword [esp + 0x48], esi
mov byte [esp + 0x9c], cl
movzx edi, bl
mov esi, edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0x8c], bl
lea ebp, [edi + eax - 1]
movzx ebx, byte [ebp]
mov dword [esp + 0x30], ebp
mov ebp, dword [esp + 0x24]
add ebp, dword [esp + 0xcc]
movzx edi, bl
mov byte [esp + 0x68], bl
movzx ebx, byte [ebp]
mov dword [esp + 4], edi
mov dword [esp + 0x34], ebp
movzx edi, bl
mov dword [esp], edi
mov edi, dword [esp + 0xc8]
mov byte [esp + 0x91], bl
lea ebx, [edi + eax + 1]
mov dword [esp + 0x4c], ebx
movzx ebx, byte [ebx]
movzx edi, bl
mov byte [esp + 0x92], bl
lea ebx, [edx + eax + 2]
mov dword [esp + 0x50], ebx
movzx ebx, byte [ebx]
mov dword [esp + 8], esi
mov byte [esp + 0x93], bl
mov dword [esp + 0xc], ebx
lea ebx, [edx + eax + 3]
movzx edx, byte [edx + eax + 4]
mov dword [esp + 0x40], ebx
movzx ebx, byte [ebx]
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x24], edx
mov edx, dword [esp + 0x10]
mov byte [esp + 0x88], bl
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0x18]
sub ebx, edx
sub edx, ecx
lea ebp, [ebx + 0xff]
mov dword [esp + 0xa0], ebx
movsx ebx, byte [eax + ebx + 0xff]
mov dword [esp + 0x6c], ebp
lea ebp, [edx + 0xff]
mov dword [esp + 0x5c], edx
movsx edx, byte [eax + edx + 0xff]
mov dword [esp + 0x70], ebp
mov ebp, dword [esp + 4]
add edx, ebx
mov ebx, ecx
sub ebx, esi
sub esi, ebp
lea eax, [ebx + 0xff]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], esi
movsx ebx, byte [eax + ebx + 0xff]
lea eax, [esi + 0xff]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0xc4]
add edx, ebx
movsx ebx, byte [eax + esi + 0xff]
mov esi, dword [esp]
add edx, ebx
mov ebx, ebp
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x3c], ebx
movsx ebx, byte [eax + ebx + 0xff]
add edx, ebx
mov ebx, esi
sub ebx, edi
mov dword [esp + 0x94], ebx
mov ebp, dword [esp + 0xc4]
lea eax, [ebx + 0xff]
mov esi, dword [esp + 0xc]
mov dword [esp + 0x7c], eax
movsx ebx, byte [ebp + ebx + 0xff]
add edx, ebx
mov ebx, edi
sub ebx, esi
lea eax, [ebx + 0xff]
mov dword [esp + 0x98], ebx
movsx ebx, byte [ebp + ebx + 0xff]
mov dword [esp + 0x80], eax
add edx, ebx
mov ebx, esi
mov esi, dword [esp + 8]
sub ebx, dword [esp + 0x14]
lea eax, [ebx + 0xff]
mov ebp, ebx
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 4]
mov dword [esp + 0x84], eax
lea eax, [ecx + ecx]
mov dword [esp + 0x2c], eax
lea eax, [esi + esi]
mov dword [esp + 0x28], eax
lea eax, [ebx + ebx]
mov dword [esp + 0x1c], eax
mov eax, dword [esp]
add eax, eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0xc4]
movsx ebx, byte [eax + ebp + 0xff]
add edx, ebx
cmp edx, 5
jg 0x6fc97540
mov eax, dword [esp + 0x38]
mov edx, dword [esp + 0xc4]
movzx edx, byte [edx + eax + 0x1ff]
cmp dword [esp + 0xd0], edx
jle 0x6fc972d1
mov edx, dword [esp + 4]
mov eax, dword [esp]
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x10]
lea edx, [edx + edx*4]
sub ebx, edx
lea edx, [eax + eax*4]
add edx, ebx
lea ebx, [edi + edi]
sub edx, ebx
lea ebx, [ecx + ecx*4]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 8]
lea ebx, [ebx + ebx*4]
add esi, ebx
mov dword [esp + 0xa8], esi
mov esi, dword [esp + 0x1c]
lea ebx, [edi + edi*4]
sub dword [esp + 0xa8], esi
mov esi, dword [esp + 0x20]
sub esi, ebx
mov ebx, dword [esp + 0xc]
lea ebx, [ebx + ebx*4]
lea eax, [esi + ebx]
mov esi, dword [esp + 0x14]
mov dword [esp + 0xac], eax
lea ebx, [esi + esi]
sub dword [esp + 0xac], ebx
xor ebx, ebx
test edx, edx
setg bl
lea eax, [ebx + ebx - 1]
mov ebp, eax
mov eax, dword [esp + 0xa8]
mov ebx, eax
sar ebx, 0x1f
mov esi, ebx
mov ebx, eax
xor esi, eax
mov eax, dword [esp + 0xac]
shr ebx, 0x1f
add esi, ebx
mov ebx, esi
mov esi, eax
sar esi, 0x1f
mov dword [esp + 0xa8], esi
mov esi, eax
xor dword [esp + 0xa8], eax
shr esi, 0x1f
add esi, dword [esp + 0xa8]
cmp ebx, esi
cmovle esi, ebx
mov ebx, esi
mov esi, edx
sar esi, 0x1f
mov eax, esi
mov esi, edx
xor eax, edx
shr esi, 0x1f
add esi, eax
cmp ebx, esi
cmovle esi, ebx
imul esi, ebp
mov eax, esi
mov esi, dword [esp + 0x3c]
sub eax, edx
lea ebx, [eax + eax*4 + 0x20]
sar ebx, 6
mov edx, esi
shr edx, 0x1f
add edx, esi
xor esi, esi
sar edx, 1
test edx, edx
jle 0x6fc9a0e4
test ebx, ebx
js 0x6fc972bc
cmp ebx, edx
cmovle edx, ebx
mov esi, edx
movzx edx, byte [esp + 0x68]
mov ebx, esi
mov eax, dword [esp + 0x30]
sub edx, ebx
mov byte [eax], dl
mov eax, dword [esp + 0x34]
add byte [eax], bl
mov edx, dword [esp + 0xd4]
test edx, edx
je 0x6fc9752e
mov eax, dword [esp + 0xd0]
mov esi, dword [esp + 0xc4]
lea edx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [esi + eax + 0x1ff]
mov esi, dword [esp + 0x70]
cmp ebx, edx
mov ebx, dword [esp + 0xc4]
setg al
mov byte [esp + 0xac], al
movzx ebx, byte [ebx + esi + 0x1ff]
mov esi, dword [esp + 0xc4]
cmp edx, ebx
setl bl
mov ebp, ebx
mov ebx, eax
mov eax, dword [esp + 0x74]
or ebp, ebx
movzx ebx, byte [esi + eax + 0x1ff]
mov eax, ebp
cmp edx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx eax, bl
mov ebx, dword [esp + 0xc4]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x78]
movzx ebx, byte [ebx + eax + 0x1ff]
mov eax, esi
mov esi, dword [esp + 0xc4]
cmp edx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
movzx eax, byte [esp + 0x6c]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x38]
movzx esi, byte [esi + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp edx, esi
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx eax, bl
mov ebx, dword [esp + 0xc4]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x7c]
movzx ebx, byte [ebx + eax + 0x1ff]
mov eax, esi
mov esi, dword [esp + 0xc4]
cmp edx, ebx
setl byte [esp + 0x38]
or byte [esp + 0x38], al
movzx eax, byte [esp + 0x38]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x80]
movzx esi, byte [esi + eax + 0x1ff]
movzx eax, byte [esp + 0x38]
cmp edx, esi
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx eax, bl
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x84]
mov ebx, dword [esp + 0xc4]
movzx ebx, byte [ebx + eax + 0x1ff]
cmp edx, ebx
setl bl
or ebx, esi
mov esi, dword [esp + 0x14]
movzx eax, bl
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xc4]
sub esi, dword [esp + 0x24]
movzx eax, byte [eax + esi + 0x2fe]
cmp edx, eax
setl al
or eax, ebx
movzx edx, al
mov eax, dword [esp + 0xc]
lea ebx, [edi + edi]
lea esi, [eax + eax]
mov eax, ebp
test al, al
je 0x6fc998d4
mov ebp, dword [esp + 0x58]
movzx eax, byte [esp + 0xa4]
cmp dword [esp + 0xa8], 0
mov byte [ebp], al
je 0x6fc9a96f
movzx eax, byte [esp + 0x9c]
mov ebp, dword [esp + 0x44]
mov byte [ebp], al
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a4e0
movzx eax, byte [esp + 0x8c]
mov ebp, dword [esp + 0x6c]
mov ecx, dword [esp + 0x48]
test ebp, ebp
mov byte [ecx], al
je 0x6fc9a4c0
movzx eax, byte [esp + 0x68]
mov ecx, dword [esp + 0x30]
mov byte [ecx], al
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a480
movzx eax, byte [esp + 0x91]
mov ecx, dword [esp + 0x34]
mov byte [ecx], al
mov eax, dword [esp + 0x78]
test eax, eax
je 0x6fc9a463
movzx eax, byte [esp + 0x92]
mov ebx, dword [esp + 0x38]
mov ecx, dword [esp + 0x4c]
test ebx, ebx
mov byte [ecx], al
je 0x6fc9a4a0
movzx eax, byte [esp + 0x93]
mov edi, dword [esp + 0x50]
test edx, edx
movzx ecx, byte [esp + 0x88]
mov byte [edi], al
jne 0x6fc97528
mov eax, dword [esp + 0x38]
test eax, eax
jne 0x6fc9a960
mov eax, dword [esp + 0xc]
mov edi, dword [esp + 0x14]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x24]
shr ecx, 2
mov eax, dword [esp + 0x40]
mov byte [eax], cl
add esp, 0xb0
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x54]
mov ebp, dword [esp + 4]
mov esi, dword [esp + 8]
mov ebx, eax
sar ebx, 0x1f
and ebx, eax
mov eax, dword [esp]
sub ebx, dword [esp + 0xc]
add ebx, edi
mov edx, ebx
sar edx, 0x1f
and edx, ebx
mov ebx, eax
sub edx, edi
add ebx, edx
mov edx, ebx
sar edx, 0x1f
and edx, ebx
sub edx, eax
lea ebx, [ebp + edx]
mov edx, ebx
sar edx, 0x1f
and edx, ebx
mov ebx, esi
sub edx, ebp
add ebx, edx
mov edx, ebx
sar edx, 0x1f
and edx, ebx
mov ebx, dword [esp + 0x14]
sub edx, esi
add edx, ecx
mov eax, edx
sar eax, 0x1f
mov esi, eax
mov eax, dword [esp + 0xc]
and esi, edx
sub esi, ecx
add esi, dword [esp + 0x10]
sub ebx, eax
mov edx, ebx
sar edx, 0x1f
and edx, ebx
add edx, eax
sub edx, edi
mov eax, edx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, edx
add ebx, edi
sub ebx, eax
mov edx, ebx
sar edx, 0x1f
and edx, ebx
add edx, eax
sub edx, ebp
mov eax, edx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp + 8]
and ebx, edx
add ebx, ebp
mov ebp, dword [esp + 0x10]
sub ebx, eax
mov edx, ebx
sar edx, 0x1f
and edx, ebx
add edx, eax
sub edx, ecx
mov eax, edx
sar eax, 0x1f
mov ebx, eax
and ebx, edx
mov edx, esi
add ebx, ecx
sub ebx, ebp
mov eax, ebx
sar eax, 0x1f
sar edx, 0x1f
and edx, esi
mov esi, eax
mov eax, dword [esp + 0xd0]
and esi, ebx
neg edx
sub edx, esi
lea ebx, [eax + eax]
cmp edx, ebx
jge 0x6fc9752e
mov ebx, dword [esp + 0x18]
mov edx, ebp
mov eax, dword [esp + 0xc4]
mov esi, dword [esp + 0x14]
sub edx, ebx
movzx edx, byte [eax + edx + 0x2fe]
cmp dword [esp + 0xd0], edx
mov edx, ebx
cmovle edx, ebp
mov ebp, dword [esp + 0x24]
mov ebx, edx
mov edx, esi
mov dword [esp + 0x18], ebx
sub edx, ebp
movzx eax, byte [eax + edx + 0x2fe]
cmp dword [esp + 0xd0], eax
mov eax, ebp
mov edx, dword [esp + 0x10]
mov ebp, dword [esp + 0x28]
cmovle eax, esi
mov dword [esp + 0x24], eax
mov eax, ebx
add eax, eax
lea ebx, [eax + ebx]
shl edx, 2
lea edx, [edx + ebx*2]
mov ebx, dword [esp]
add edx, dword [esp + 0x2c]
add edx, ebp
add edx, dword [esp + 4]
lea edx, [ebx + edx + 8]
mov ebx, dword [esp + 0x58]
sar edx, 4
mov byte [ebx], dl
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x18]
add edx, edx
lea ebx, [edx + ebx*4]
add eax, edx
lea ecx, [ebx + ecx*4]
mov ebx, dword [esp + 0x44]
add ecx, ebp
mov ebp, dword [esp + 0x1c]
add eax, dword [esp + 0x2c]
lea edx, [edi + edi]
add ecx, ebp
add ecx, dword [esp]
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [ebx], cl
mov ebx, dword [esp + 8]
mov ecx, dword [esp + 0xc]
lea eax, [eax + ebx*4]
mov ebx, dword [esp + 0x48]
add eax, ebp
mov ebp, dword [esp + 0x20]
add eax, ebp
add eax, edi
lea eax, [ecx + eax + 8]
sar eax, 4
mov byte [ebx], al
mov ebx, dword [esp + 4]
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x18]
add eax, dword [esp + 0x2c]
add eax, dword [esp + 0x28]
lea eax, [eax + ebx*4]
mov ebx, dword [esp + 0x30]
add eax, ebp
add eax, edx
add eax, ecx
lea eax, [esi + eax + 8]
sar eax, 4
mov byte [ebx], al
lea ebx, [ecx + ecx]
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x28]
add eax, dword [esp + 0x2c]
mov ebp, dword [esp]
add eax, ecx
add eax, dword [esp + 0x1c]
lea eax, [eax + ebp*4]
mov ebp, esi
add eax, edx
add eax, ebx
add eax, esi
mov esi, dword [esp + 0x24]
lea eax, [esi + eax + 8]
mov esi, dword [esp + 0x34]
sar eax, 4
mov byte [esi], al
mov eax, dword [esp + 0x60]
lea esi, [ebp + ebp]
add eax, ecx
mov ecx, dword [esp + 0x1c]
add ecx, eax
add ecx, dword [esp + 0x20]
lea eax, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add eax, ebx
add eax, esi
lea ecx, [edi + edi]
mov edi, dword [esp + 0x4c]
lea eax, [eax + ecx + 8]
sar eax, 4
mov byte [edi], al
mov eax, dword [esp + 0x64]
mov edi, dword [esp + 0xc]
add eax, dword [esp + 0x1c]
add eax, dword [esp + 0x20]
add eax, edx
lea eax, [eax + edi*4]
mov edi, dword [esp + 0x24]
add esi, eax
lea eax, [esi + edi*4 + 8]
mov esi, dword [esp + 0x50]
add ecx, edi
sar eax, 4
mov edi, dword [esp + 0x40]
mov byte [esi], al
mov eax, dword [esp + 0x3c]
add eax, dword [esp + 0x20]
add edx, eax
add ebx, edx
lea eax, [ebx + ebp*4]
lea eax, [eax + ecx*2 + 8]
sar eax, 4
mov byte [edi], al
add esp, 0xb0
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x18]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x10]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x10]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc96f2f
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
cmovle esi, ebx
mov dword [esp + 0x14], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, edx
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
cmovle ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
lea esi, [ecx + ecx]
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x58]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x14]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0xc]
add esi, edx
mov edx, dword [esp + 0x48]
add esi, dword [esp + 0x20]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x34]
mov byte [edx], cl
mov edx, dword [esp + 0x4c]
add esi, ebx
mov ebx, dword [esp]
mov ecx, esi
mov esi, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x18]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc]
add ecx, dword [esp + 0x20]
add ecx, esi
add ecx, ebx
add ebx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx], cl
mov edx, esi
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov dword [esp], edx
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x28]
add ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x24]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
add ecx, esi
mov esi, dword [esp + 0xc]
add ecx, edx
add ebp, ebp
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x50]
add ecx, dword [esp]
add ecx, edi
lea ecx, [ecx + ebp + 8]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x54]
add ecx, edx
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x28]
add edi, ecx
lea ecx, [edi + eax*4 + 8]
mov edi, dword [esp + 8]
add ebp, eax
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x3c]
add ecx, edx
add ecx, ebx
add ecx, dword [esp]
lea ebx, [ecx + edi*4]
mov edi, dword [esp + 0x44]
lea ecx, [ebx + ebp*2 + 8]
sar ecx, 4
mov byte [edi], cl
jmp 0x6fc96f2f
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x18]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x10]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x10]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc96bca
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
cmovle esi, ebx
mov dword [esp + 0x14], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, edx
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x20]
cmovle ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
lea esi, [ecx + ecx]
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x58]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x14]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0xc]
add esi, edx
mov edx, dword [esp + 0x48]
add esi, dword [esp + 0x1c]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x34]
mov byte [edx], cl
mov edx, dword [esp + 0x4c]
add esi, ebx
mov ebx, dword [esp]
mov ecx, esi
mov esi, dword [esp + 0x2c]
add ecx, eax
mov eax, dword [esp + 0x18]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc]
add ecx, dword [esp + 0x1c]
add ecx, esi
add ecx, ebx
add ebx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x38]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx], cl
mov edx, esi
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x1c]
add ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x20]
mov dword [esp], edx
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x28]
add ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x24]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x2c]
add ecx, esi
mov esi, dword [esp + 0xc]
add ecx, edx
add ebp, ebp
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x50]
add ecx, dword [esp]
add ecx, edi
lea ecx, [ecx + ebp + 8]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0x54]
add ecx, edx
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x28]
add edi, ecx
lea ecx, [edi + eax*4 + 8]
mov edi, dword [esp + 8]
add ebp, eax
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x3c]
add ecx, edx
add ecx, ebx
add ecx, dword [esp]
lea ebx, [ecx + edi*4]
mov edi, dword [esp + 0x44]
lea ecx, [ebx + ebp*2 + 8]
sar ecx, 4
mov byte [edi], cl
jmp 0x6fc96bca
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x18]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x10]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x10]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc96867
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
cmovle esi, ebx
mov dword [esp + 0x14], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, edx
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
cmovle ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
lea esi, [ecx + ecx]
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x58]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x14]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0xc]
add esi, edx
mov edx, dword [esp + 0x48]
add esi, dword [esp + 0x20]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x34]
mov byte [edx], cl
mov edx, dword [esp + 0x4c]
add esi, ebx
mov ebx, dword [esp]
mov ecx, esi
mov esi, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x18]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc]
add ecx, dword [esp + 0x20]
add ecx, esi
add ecx, ebx
add ebx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx], cl
mov edx, esi
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov dword [esp], edx
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x28]
add ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x24]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
add ecx, esi
mov esi, dword [esp + 0xc]
add ecx, edx
add ebp, ebp
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x50]
add ecx, dword [esp]
add ecx, edi
lea ecx, [ecx + ebp + 8]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x54]
add ecx, edx
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x28]
add edi, ecx
lea ecx, [edi + eax*4 + 8]
mov edi, dword [esp + 8]
add ebp, eax
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x3c]
add ecx, edx
add ecx, ebx
add ecx, dword [esp]
lea ebx, [ecx + edi*4]
mov edi, dword [esp + 0x44]
lea ecx, [ebx + ebp*2 + 8]
sar ecx, 4
mov byte [edi], cl
jmp 0x6fc96867
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x18]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x10]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x10]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc96500
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
cmovle esi, ebx
mov dword [esp + 0x14], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, edx
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
cmovle ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
lea esi, [ecx + ecx]
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x58]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x14]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0xc]
add esi, edx
mov edx, dword [esp + 0x48]
add esi, dword [esp + 0x20]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x34]
mov byte [edx], cl
mov edx, dword [esp + 0x4c]
add esi, ebx
mov ebx, dword [esp]
mov ecx, esi
mov esi, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x18]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc]
add ecx, dword [esp + 0x20]
add ecx, esi
add ecx, ebx
add ebx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx], cl
mov edx, esi
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov dword [esp], edx
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x28]
add ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x24]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
add ecx, esi
mov esi, dword [esp + 0xc]
add ecx, edx
add ebp, ebp
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x50]
add ecx, dword [esp]
add ecx, edi
lea ecx, [ecx + ebp + 8]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x54]
add ecx, edx
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x28]
add edi, ecx
lea ecx, [edi + eax*4 + 8]
mov edi, dword [esp + 8]
add ebp, eax
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x3c]
add ecx, edx
add ecx, ebx
add ecx, dword [esp]
lea ebx, [ecx + edi*4]
mov edi, dword [esp + 0x44]
lea ecx, [ebx + ebp*2 + 8]
sar ecx, 4
mov byte [edi], cl
jmp 0x6fc96500
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x18]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x10]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x10]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc9619d
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0x10]
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
cmovle esi, ebx
mov dword [esp + 0x14], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, edx
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
cmovle ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x14]
lea esi, [ecx + ecx]
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x58]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x14]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0xc]
add esi, edx
mov edx, dword [esp + 0x48]
add esi, dword [esp + 0x20]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x34]
mov byte [edx], cl
mov edx, dword [esp + 0x4c]
add esi, ebx
mov ebx, dword [esp]
mov ecx, esi
mov esi, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x18]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc]
add ecx, dword [esp + 0x20]
add ecx, esi
add ecx, ebx
add ebx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx], cl
mov edx, esi
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov dword [esp], edx
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x28]
add ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x24]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
add ecx, esi
mov esi, dword [esp + 0xc]
add ecx, edx
add ebp, ebp
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x50]
add ecx, dword [esp]
add ecx, edi
lea ecx, [ecx + ebp + 8]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x54]
add ecx, edx
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x28]
add edi, ecx
lea ecx, [edi + eax*4 + 8]
mov edi, dword [esp + 8]
add ebp, eax
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x3c]
add ecx, edx
add ecx, ebx
add ecx, dword [esp]
lea ebx, [ecx + edi*4]
mov edi, dword [esp + 0x44]
lea ecx, [ebx + ebp*2 + 8]
sar ecx, 4
mov byte [edi], cl
jmp 0x6fc9619d
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x14]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x18]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x18]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc95e3a
mov eax, dword [esp + 0xc8]
mov ebx, dword [esp + 0x18]
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x28]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
cmovle esi, ebx
mov dword [esp + 0x10], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, edx
mov eax, dword [esp + 0x2c]
mov edx, dword [esp + 0x1c]
cmovle ecx, esi
mov dword [esp + 0x28], ecx
mov ecx, dword [esp + 0x10]
lea esi, [ecx + ecx]
mov dword [esp + 0x34], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x58]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x10]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0xc]
add esi, edx
mov edx, dword [esp + 0x48]
add esi, dword [esp + 0x20]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x34]
mov byte [edx], cl
mov edx, dword [esp + 0x4c]
add esi, ebx
mov ebx, dword [esp]
mov ecx, esi
mov esi, dword [esp + 0x30]
add ecx, eax
mov eax, dword [esp + 0x14]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc]
add ecx, dword [esp + 0x20]
add ecx, esi
add ecx, ebx
add ebx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x18]
add ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x38]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx], cl
mov edx, esi
mov ecx, dword [esp + 0x60]
mov esi, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, dword [esp + 0x1c]
mov dword [esp], edx
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x28]
add ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x24]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x30]
add ecx, esi
mov esi, dword [esp + 0xc]
add ecx, edx
add ebp, ebp
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x50]
add ecx, dword [esp]
add ecx, edi
lea ecx, [ecx + ebp + 8]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov esi, dword [esp + 0x54]
add ecx, edx
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0x28]
add edi, ecx
lea ecx, [edi + eax*4 + 8]
mov edi, dword [esp + 8]
add ebp, eax
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x3c]
add ecx, edx
add ecx, ebx
add ecx, dword [esp]
lea ebx, [ecx + edi*4]
mov edi, dword [esp + 0x44]
lea ecx, [ebx + ebp*2 + 8]
sar ecx, 4
mov byte [edi], cl
jmp 0x6fc95e3a
mov eax, dword [esp + 0x38]
mov esi, dword [esp + 0xc]
mov ebx, eax
sar ebx, 0x1f
mov edx, esi
and ebx, eax
mov eax, dword [esp + 0x10]
sub ebx, eax
add ebx, esi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
mov esi, dword [esp]
lea ebx, [ebp + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, ebp
lea ebx, [edi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edi
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 4]
sub ecx, esi
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
mov ecx, dword [esp + 8]
sub esi, ebx
add esi, dword [esp + 0x14]
sub ecx, eax
mov ebx, ecx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
sub ecx, edx
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
and ebx, ecx
add ebx, edx
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov eax, ecx
sar eax, 0x1f
mov ebx, eax
mov eax, dword [esp]
and ebx, ecx
add ebx, edi
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 4]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, eax
mov eax, dword [esp + 0xd0]
sub ebx, dword [esp + 0x14]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [eax + eax]
cmp ecx, ebx
jge 0x6fc95aa6
mov ebx, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0xc4]
mov edx, dword [esp + 0xc4]
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov eax, dword [esp + 0x2c]
cmovle esi, ebx
mov dword [esp + 0x24], esi
mov esi, dword [esp + 8]
mov ecx, esi
sub ecx, eax
movzx ecx, byte [edx + ecx + 0x2fe]
cmp dword [esp + 0xd0], ecx
mov ecx, eax
mov edx, dword [esp + 0x18]
cmovle ecx, esi
mov dword [esp + 0x2c], ecx
mov ecx, dword [esp + 0x24]
lea eax, [ecx + ecx]
lea esi, [eax + ecx]
mov ecx, ebx
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x28]
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0xc8]
add ebx, eax
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi - 4], bl
mov esi, dword [esp + 0x24]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 4]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
add esi, edx
mov edx, dword [esp + 0xc]
add esi, dword [esp + 0x20]
add esi, ebp
lea esi, [edx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0xc8]
mov dword [esp + 4], edx
mov byte [esi - 3], cl
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x1c]
add ecx, ebx
mov ebx, dword [esp]
add ecx, eax
mov eax, dword [esp + 0x10]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0xc8]
add ecx, dword [esp + 0x20]
add ecx, esi
add ecx, edx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [ebx - 2], cl
mov ecx, dword [esp + 0x14]
mov ebx, edx
add ecx, dword [esp + 0x24]
add ebx, ebx
add ecx, dword [esp + 0x28]
add ecx, dword [esp + 0x18]
mov edx, dword [esp + 0xc8]
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 8]
add ecx, esi
add ecx, ebx
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
lea esi, [eax + eax]
mov byte [edx - 1], cl
mov ecx, dword [esp + 0x44]
mov dword [esp], esi
mov esi, dword [esp + 0x20]
add ecx, dword [esp + 0x28]
add ecx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x2c]
add ecx, ebx
add ecx, dword [esp]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [edx], cl
mov ecx, dword [esp + 0x48]
mov edx, ebp
add ecx, dword [esp + 0x18]
add ecx, esi
mov esi, dword [esp + 4]
add ecx, dword [esp + 0x1c]
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0xc8]
add ecx, dword [esp]
add ebp, ebp
add ecx, edi
lea ecx, [ecx + ebp + 8]
add ebp, edx
sar ecx, 4
mov byte [esi + 1], cl
mov ecx, dword [esp + 0x4c]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x1c]
add ecx, ebx
lea ecx, [ecx + eax*4]
mov eax, dword [esp + 0xc8]
add edi, ecx
lea ecx, [edi + edx*4 + 8]
mov edi, dword [esp + 8]
sar ecx, 4
mov byte [eax + 2], cl
mov ecx, dword [esp + 0x34]
add ecx, dword [esp + 0x1c]
add ecx, ebx
add ecx, dword [esp]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov byte [eax + 3], cl
jmp 0x6fc95aa6
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x70]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0xac], al
cmp ecx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
mov eax, dword [esp + 0x74]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x78]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x6c]
or byte [esp + 0x6c], bl
movzx esi, byte [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x34]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x6c]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x34]
or byte [esp + 0x34], bl
movzx esi, byte [esp + 0x34]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x80]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x34]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x84]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x78], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x18]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc99ab2
mov eax, dword [esp + 0x58]
movzx ecx, byte [esp + 0xa8]
cmp dword [esp + 0x88], 0
mov byte [eax], cl
je 0x6fc9a9ff
lea esi, [esi]
movzx ecx, byte [esp + 0xa0]
mov eax, dword [esp + 0x48]
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a5c0
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0x4c]
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a5a0
movzx ecx, byte [esp + 0x5c]
mov eax, dword [esp + 0x38]
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a580
movzx ecx, byte [esp + 0x92]
mov eax, dword [esp + 0x24]
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc9a560
movzx ecx, byte [esp + 0x93]
mov edi, dword [esp + 0x78]
mov eax, dword [esp + 0x50]
test edi, edi
mov byte [eax], cl
je 0x6fc9a500
movzx ecx, byte [esp + 0x94]
mov eax, dword [esp + 0x54]
test ebx, ebx
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jne 0x6fc98c07
mov ecx, dword [esp + 0x78]
test ecx, ecx
jne 0x6fc9aa10
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x28]
shr ecx, 2
mov eax, dword [esp + 0x44]
mov byte [eax], cl
jmp 0x6fc96f2f
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x70]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0xac], al
cmp ecx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
mov eax, dword [esp + 0x74]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x78]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x6c]
or byte [esp + 0x6c], bl
movzx esi, byte [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x34]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x6c]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x34]
or byte [esp + 0x34], bl
movzx esi, byte [esp + 0x34]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x80]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x34]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x84]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x78], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x18]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc99c90
mov eax, dword [esp + 0x58]
movzx ecx, byte [esp + 0xa8]
cmp dword [esp + 0x88], 0
mov byte [eax], cl
je 0x6fc9aa3f
nop
movzx ecx, byte [esp + 0xa0]
mov eax, dword [esp + 0x48]
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a880
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0x4c]
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a860
movzx ecx, byte [esp + 0x5c]
mov eax, dword [esp + 0x38]
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a840
movzx ecx, byte [esp + 0x92]
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x24]
test edi, edi
mov byte [eax], cl
je 0x6fc9a820
movzx ecx, byte [esp + 0x93]
mov eax, dword [esp + 0x50]
mov byte [eax], cl
mov eax, dword [esp + 0x78]
test eax, eax
je 0x6fc9a540
movzx ecx, byte [esp + 0x94]
mov eax, dword [esp + 0x54]
test ebx, ebx
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jne 0x6fc98e27
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9aa50
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x28]
shr ecx, 2
mov eax, dword [esp + 0x44]
mov byte [eax], cl
jmp 0x6fc96bca
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x70]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0xac], al
cmp ecx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
mov eax, dword [esp + 0x74]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x78]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x6c]
or byte [esp + 0x6c], bl
movzx esi, byte [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x34]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x6c]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x34]
or byte [esp + 0x34], bl
movzx esi, byte [esp + 0x34]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x80]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x34]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x84]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x78], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x18]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc999c4
mov eax, dword [esp + 0x58]
movzx ecx, byte [esp + 0xa8]
cmp dword [esp + 0x88], 0
mov byte [eax], cl
je 0x6fc9a9df
nop
movzx ecx, byte [esp + 0xa0]
mov eax, dword [esp + 0x48]
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a900
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0x4c]
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a8e0
movzx ecx, byte [esp + 0x5c]
mov eax, dword [esp + 0x38]
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a940
movzx ecx, byte [esp + 0x92]
mov eax, dword [esp + 0x24]
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc9a920
movzx ecx, byte [esp + 0x93]
mov esi, dword [esp + 0x78]
mov eax, dword [esp + 0x50]
test esi, esi
mov byte [eax], cl
je 0x6fc9a520
movzx ecx, byte [esp + 0x94]
mov eax, dword [esp + 0x54]
test ebx, ebx
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jne 0x6fc99047
mov edx, dword [esp + 0x78]
test edx, edx
jne 0x6fc9a9f0
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x28]
shr ecx, 2
mov eax, dword [esp + 0x44]
mov byte [eax], cl
jmp 0x6fc96867
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x70]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0xac], al
cmp ecx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
mov eax, dword [esp + 0x74]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x78]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x6c]
or byte [esp + 0x6c], bl
movzx esi, byte [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x34]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x6c]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x34]
or byte [esp + 0x34], bl
movzx esi, byte [esp + 0x34]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x80]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x34]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x84]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x78], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x18]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc99ba0
mov eax, dword [esp + 0x58]
movzx ecx, byte [esp + 0xa8]
cmp dword [esp + 0x88], 0
mov byte [eax], cl
je 0x6fc9a9bf
nop
movzx ecx, byte [esp + 0xa0]
mov eax, dword [esp + 0x48]
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a640
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0x4c]
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a620
movzx ecx, byte [esp + 0x5c]
mov eax, dword [esp + 0x38]
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a600
movzx ecx, byte [esp + 0x92]
mov eax, dword [esp + 0x24]
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc9a5e0
movzx ecx, byte [esp + 0x93]
mov ebp, dword [esp + 0x78]
mov eax, dword [esp + 0x50]
test ebp, ebp
mov byte [eax], cl
je 0x6fc9a6c0
movzx ecx, byte [esp + 0x94]
mov eax, dword [esp + 0x54]
test ebx, ebx
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jne 0x6fc99267
mov esi, dword [esp + 0x78]
test esi, esi
jne 0x6fc9a9d0
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x28]
shr ecx, 2
mov eax, dword [esp + 0x44]
mov byte [eax], cl
jmp 0x6fc96500
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x70]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0xac], al
cmp ecx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
mov eax, dword [esp + 0x74]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x78]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x6c]
or byte [esp + 0x6c], bl
movzx esi, byte [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x34]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x6c]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x34]
or byte [esp + 0x34], bl
movzx esi, byte [esp + 0x34]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x80]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x34]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x84]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x78], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x18]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc99f74
mov eax, dword [esp + 0x58]
movzx ecx, byte [esp + 0xa8]
cmp dword [esp + 0x88], 0
mov byte [eax], cl
je 0x6fc9a99f
nop
movzx ecx, byte [esp + 0xa0]
mov eax, dword [esp + 0x48]
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a7c0
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0x4c]
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a7a0
movzx ecx, byte [esp + 0x5c]
mov eax, dword [esp + 0x38]
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a800
movzx ecx, byte [esp + 0x92]
mov edi, dword [esp + 0x34]
mov eax, dword [esp + 0x24]
test edi, edi
mov byte [eax], cl
je 0x6fc9a7e0
movzx ecx, byte [esp + 0x93]
mov eax, dword [esp + 0x50]
mov byte [eax], cl
mov eax, dword [esp + 0x78]
test eax, eax
je 0x6fc9a6a0
movzx ecx, byte [esp + 0x94]
mov eax, dword [esp + 0x54]
test ebx, ebx
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jne 0x6fc99487
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9a9b0
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x28]
shr ecx, 2
mov eax, dword [esp + 0x44]
mov byte [eax], cl
jmp 0x6fc9619d
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x70]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x6c]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0xac], al
cmp ecx, ebx
setl byte [esp + 0x6c]
or byte [esp + 0x6c], al
mov eax, dword [esp + 0x74]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x6c]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x88], ebx
mov ebx, dword [esp + 0x78]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x6c]
or byte [esp + 0x6c], bl
movzx esi, byte [esp + 0x6c]
mov dword [esp + 0x70], esi
mov esi, dword [esp + 0x34]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x6c]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x34]
or byte [esp + 0x34], bl
movzx esi, byte [esp + 0x34]
mov dword [esp + 0x74], esi
mov esi, dword [esp + 0x80]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x34]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x34], ebx
mov ebx, dword [esp + 0x84]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x78], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x28]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x14]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc99e86
mov eax, dword [esp + 0x58]
movzx ecx, byte [esp + 0xa8]
cmp dword [esp + 0x88], 0
mov byte [eax], cl
je 0x6fc9aa1f
nop
movzx ecx, byte [esp + 0xa0]
mov eax, dword [esp + 0x48]
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc9a780
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0x4c]
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a760
movzx ecx, byte [esp + 0x5c]
mov eax, dword [esp + 0x38]
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc9a740
movzx ecx, byte [esp + 0x92]
mov eax, dword [esp + 0x24]
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc9a720
movzx ecx, byte [esp + 0x93]
mov esi, dword [esp + 0x78]
mov eax, dword [esp + 0x50]
test esi, esi
mov byte [eax], cl
je 0x6fc9a680
movzx ecx, byte [esp + 0x94]
mov eax, dword [esp + 0x54]
test ebx, ebx
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jne 0x6fc996a7
mov edx, dword [esp + 0x78]
test edx, edx
jne 0x6fc9aa30
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x28]
shr ecx, 2
mov eax, dword [esp + 0x44]
mov byte [eax], cl
jmp 0x6fc95e3a
mov eax, dword [esp + 0xd0]
mov edx, dword [esp + 0xc4]
mov esi, dword [esp + 0x54]
lea ecx, [eax + 2]
mov eax, dword [esp + 0x50]
movzx ebx, byte [edx + eax + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [edx + esi + 0x1ff]
setg al
mov byte [esp + 0x92], al
cmp ecx, ebx
setl byte [esp + 0x50]
or byte [esp + 0x50], al
mov eax, dword [esp + 0x58]
movzx ebx, byte [edx + eax + 0x1ff]
movzx eax, byte [esp + 0x50]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, eax
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0x5c]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x50]
or byte [esp + 0x50], bl
movzx esi, byte [esp + 0x50]
mov dword [esp + 0x54], esi
mov esi, dword [esp + 0x30]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x50]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x50], ebx
mov ebx, dword [esp + 0x60]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl byte [esp + 0x30]
or byte [esp + 0x30], bl
movzx esi, byte [esp + 0x30]
mov dword [esp + 0x58], esi
mov esi, dword [esp + 0x64]
movzx esi, byte [edx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
movzx ebx, byte [esp + 0x30]
or esi, ebx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x68]
movzx ebx, byte [edx + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x5c], esi
mov esi, dword [esp + 8]
sub esi, dword [esp + 0x2c]
movzx esi, byte [edx + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0xc]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x10]
add esi, esi
add ecx, ecx
test al, al
mov edx, ecx
je 0x6fc99d80
movzx ecx, byte [esp + 0x91]
mov eax, dword [esp + 0xc8]
cmp dword [esp + 0x6c], 0
mov byte [eax - 4], cl
je 0x6fc9a97e
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0xc8]
mov byte [eax - 3], cl
mov eax, dword [esp + 0x54]
test eax, eax
je 0x6fc9a700
movzx ecx, byte [esp + 0x74]
mov eax, dword [esp + 0xc8]
mov byte [eax - 2], cl
mov eax, dword [esp + 0x50]
test eax, eax
je 0x6fc9a6e0
movzx ecx, byte [esp + 0x3c]
mov eax, dword [esp + 0xc8]
mov byte [eax - 1], cl
mov eax, dword [esp + 0x58]
test eax, eax
je 0x6fc9a8c0
movzx ecx, byte [esp + 0x40]
mov eax, dword [esp + 0xc8]
mov byte [eax], cl
mov eax, dword [esp + 0x30]
test eax, eax
je 0x6fc9a8a0
movzx ecx, byte [esp + 0x78]
mov ebp, dword [esp + 0x5c]
mov eax, dword [esp + 0xc8]
test ebp, ebp
mov byte [eax + 1], cl
je 0x6fc9a660
movzx ecx, byte [esp + 0x7c]
mov eax, dword [esp + 0xc8]
test ebx, ebx
mov byte [eax + 2], cl
movzx ecx, byte [esp + 0x70]
jne 0x6fc998c5
mov esi, dword [esp + 0x5c]
test esi, esi
jne 0x6fc9a990
mov eax, dword [esp + 0x10]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
add ecx, dword [esp + 0x2c]
shr ecx, 2
mov eax, dword [esp + 0xc8]
mov byte [eax + 3], cl
jmp 0x6fc95aa6
cmp byte [esp + 0xac], 0
jne 0x6fc9a110
mov eax, dword [esp + 0xa8]
test eax, eax
jne 0x6fc9a261
mov ebp, ebx
mov eax, dword [esp + 0x18]
mov ebx, dword [esp + 0x10]
lea eax, [eax + ebx*2]
mov ebx, dword [esp + 0x58]
add eax, ecx
sar eax, 2
mov byte [ebx], al
mov ebx, ebp
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a244
mov eax, dword [esp + 0x10]
add eax, dword [esp + 0x2c]
mov ebp, dword [esp + 0x44]
add eax, dword [esp + 8]
sar eax, 2
mov byte [ebp], al
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x6fc9aae0
add ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x48]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x6fc9aac0
mov eax, dword [esp + 8]
add eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
add eax, dword [esp]
sar eax, 2
mov byte [ecx], al
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9aaa0
mov eax, dword [esp + 4]
add eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
add eax, edi
sar eax, 2
mov byte [ecx], al
mov ebp, dword [esp + 0x38]
test ebp, ebp
jne 0x6fc9aa80
mov eax, dword [esp]
mov ecx, dword [esp + 0x4c]
add eax, ebx
add eax, dword [esp + 0xc]
sar eax, 2
mov byte [ecx], al
test edx, edx
jne 0x6fc9aa60
lea eax, [edi + esi]
mov edi, dword [esp + 0x50]
add eax, dword [esp + 0x14]
sar eax, 2
mov byte [edi], al
jmp 0x6fc97516
cmp byte [esp + 0xac], 0
jne 0x6fc9a160
mov ecx, dword [esp + 0x88]
test ecx, ecx
jne 0x6fc9a440
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a320
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x6fc9aec0
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
add ecx, edi
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x6fc9aea0
mov ecx, dword [esp]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
add ecx, ebp
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x6fc9ae80
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov edi, dword [esp + 0x78]
test edi, edi
jne 0x6fc9ae60
lea ecx, [ebp + esi]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x18]
sar ecx, 2
mov byte [eax], cl
test ebx, ebx
jne 0x6fc9ab40
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax], cl
jmp 0x6fc99035
cmp byte [esp + 0xac], 0
jne 0x6fc9a220
mov eax, dword [esp + 0x88]
test eax, eax
jne 0x6fc9a416
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a300
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x6fc9abc0
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
add ecx, edi
sar ecx, 2
mov byte [eax], cl
mov ecx, dword [esp + 0x74]
test ecx, ecx
jne 0x6fc9aba0
mov ecx, dword [esp]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
add ecx, ebp
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x6fc9ab80
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9ab60
lea ecx, [ebp + esi]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x18]
sar ecx, 2
mov byte [eax], cl
test ebx, ebx
jne 0x6fc9ad60
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax], cl
jmp 0x6fc98bf5
cmp byte [esp + 0xac], 0
jne 0x6fc9a184
mov eax, dword [esp + 0x88]
test eax, eax
jne 0x6fc9a3f3
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a2e0
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x6fc9ad40
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
add ecx, edi
sar ecx, 2
mov byte [eax], cl
mov ecx, dword [esp + 0x74]
test ecx, ecx
jne 0x6fc9ad20
mov ecx, dword [esp]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
add ecx, ebp
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x6fc9ad00
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9ace0
lea ecx, [ebp + esi]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x18]
sar ecx, 2
mov byte [eax], cl
test ebx, ebx
jne 0x6fc9ada0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax], cl
jmp 0x6fc99255
cmp byte [esp + 0xac], 0
jne 0x6fc9a1a8
mov eax, dword [esp + 0x88]
test eax, eax
jne 0x6fc9a3d0
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a2c3
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x48]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax], cl
mov ecx, dword [esp + 0x6c]
test ecx, ecx
jne 0x6fc9af40
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x4c]
add ecx, edi
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x6fc9af20
mov ecx, dword [esp + 0x1c]
add ecx, dword [esp]
mov eax, dword [esp + 0x38]
add ecx, ebp
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x6fc9af00
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9aee0
lea ecx, [ebp + esi]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x18]
sar ecx, 2
mov byte [eax], cl
test ebx, ebx
jne 0x6fc9ab00
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax], cl
jmp 0x6fc98e15
cmp byte [esp + 0x92], 0
jne 0x6fc9a1f4
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x6fc9a3a6
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0xc8]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax - 4], cl
mov eax, dword [esp + 0x54]
test eax, eax
jne 0x6fc9a288
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x28]
mov eax, dword [esp + 0xc8]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax - 3], cl
mov eax, dword [esp + 0x50]
test eax, eax
jne 0x6fc9acc0
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x18]
mov eax, dword [esp + 0xc8]
add ecx, edi
sar ecx, 2
mov byte [eax - 2], cl
mov ecx, dword [esp + 0x58]
test ecx, ecx
jne 0x6fc9aca0
mov ecx, dword [esp]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0xc8]
add ecx, ebp
sar ecx, 2
mov byte [eax - 1], cl
mov eax, dword [esp + 0x30]
test eax, eax
jne 0x6fc9ac80
mov ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0xc8]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc9ac60
lea ecx, [ebp + esi]
mov eax, dword [esp + 0xc8]
add ecx, dword [esp + 0x10]
sar ecx, 2
mov byte [eax + 1], cl
test ebx, ebx
jne 0x6fc9ad80
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0xc8]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax + 2], cl
jmp 0x6fc998b3
cmp byte [esp + 0xac], 0
jne 0x6fc9a1d0
mov ecx, dword [esp + 0x88]
test ecx, ecx
jne 0x6fc9a383
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x10]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a2a6
mov ecx, dword [esp + 0x18]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x6c]
test eax, eax
jne 0x6fc9ac40
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
add ecx, edi
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x6fc9ac20
mov ecx, dword [esp]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
add ecx, ebp
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x6fc9ac00
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov edi, dword [esp + 0x78]
test edi, edi
jne 0x6fc9abe0
lea ecx, [ebp + esi]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x14]
sar ecx, 2
mov byte [eax], cl
test ebx, ebx
jne 0x6fc9ab20
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax], cl
jmp 0x6fc99695
cmp byte [esp + 0xac], 0
jne 0x6fc9a135
mov eax, dword [esp + 0x88]
test eax, eax
jne 0x6fc9a360
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
add ecx, dword [esp + 4]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x70]
test eax, eax
jne 0x6fc9a340
mov ecx, dword [esp + 0x10]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
add ecx, dword [esp]
sar ecx, 2
mov byte [eax], cl
mov ecx, dword [esp + 0x6c]
test ecx, ecx
jne 0x6fc9ae40
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
add ecx, edi
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x74]
test eax, eax
jne 0x6fc9ae20
mov ecx, dword [esp]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
add ecx, ebp
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x34]
test eax, eax
jne 0x6fc9ae00
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
add ecx, edi
add ecx, dword [esp + 0xc]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x78]
test eax, eax
jne 0x6fc9ade0
lea ecx, [ebp + esi]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x18]
sar ecx, 2
mov byte [eax], cl
test ebx, ebx
jne 0x6fc9adc0
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x54]
add ecx, edx
add ecx, dword [esp + 8]
sar ecx, 2
mov byte [eax], cl
jmp 0x6fc99475
test ebx, ebx
jg 0x6fc96179
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc96179
test ebx, ebx
jg 0x6fc96843
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc96843
test ebx, ebx
jg 0x6fc95e16
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc95e16
test ebx, ebx
jg 0x6fc964dc
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc964dc
test ebx, ebx
jg 0x6fc95a73
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc95a73
test ebx, ebx
jg 0x6fc96ba6
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc96ba6
test ebx, ebx
jg 0x6fc972bc
cmp ebx, edx
cmovge edx, ebx
mov esi, edx
jmp 0x6fc972bc
test ebx, ebx
jg 0x6fc96f0b
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc96f0b
mov eax, dword [esp + 0x5c]
add eax, dword [esp + 0x2c]
mov ebp, dword [esp + 0x58]
sar eax, 1
mov byte [ebp], al
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x6fc9990b
jmp 0x6fc97470
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99fa9
jmp 0x6fc993d0
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc999f9
jmp 0x6fc98f90
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
mov ecx, dword [esp + 0x88]
test ecx, ecx
je 0x6fc99bd5
jmp 0x6fc991b0
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99cc5
jmp 0x6fc98d70
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99ebb
jmp 0x6fc995f0
mov ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x28]
mov eax, dword [esp + 0xc8]
sar ecx, 1
mov byte [eax - 4], cl
mov ecx, dword [esp + 0x6c]
test ecx, ecx
je 0x6fc99db6
jmp 0x6fc99806
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
mov ecx, dword [esp + 0x88]
test ecx, ecx
je 0x6fc99ae7
jmp 0x6fc98b50
mov eax, dword [esp + 0x5c]
add eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x44]
sar eax, 1
mov byte [ecx], al
movzx eax, byte [esp + 0x8c]
jmp 0x6fc97493
mov ebp, ecx
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x10]
lea eax, [eax + ecx*2]
mov ecx, dword [esp + 0x58]
sar eax, 1
mov byte [ecx], al
movzx eax, byte [esp + 0x9c]
mov ecx, ebp
jmp 0x6fc97478
mov ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x28]
mov eax, dword [esp + 0xc8]
sar ecx, 1
mov byte [eax - 3], cl
movzx ecx, byte [esp + 0x74]
jmp 0x6fc99829
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x91]
jmp 0x6fc99612
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x48]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x91]
jmp 0x6fc98d92
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x91]
jmp 0x6fc991d2
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x91]
jmp 0x6fc98b72
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x91]
jmp 0x6fc98fb2
mov ecx, dword [esp + 0x60]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x48]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x91]
jmp 0x6fc993f2
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xa0]
jmp 0x6fc993d8
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0xa4]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xa0]
jmp 0x6fc995f8
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0x14]
lea ecx, [eax + ecx*2]
mov eax, dword [esp + 0xc8]
sar ecx, 1
mov byte [eax - 4], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc9980e
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xa0]
jmp 0x6fc98d78
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xa0]
jmp 0x6fc991b8
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xa0]
jmp 0x6fc98b58
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0xa4]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x58]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xa0]
jmp 0x6fc98f98
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc99989
mov eax, dword [esp + 0x98]
add eax, esi
shr eax, 1
jmp 0x6fc974de
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9996a
mov eax, dword [esp + 0x94]
add eax, ebx
shr eax, 1
jmp 0x6fc974c4
mov ecx, dword [esp + 0x78]
test ecx, ecx
je 0x6fc999a7
mov eax, dword [esp + 0x54]
mov edi, dword [esp + 0x14]
lea eax, [eax + edi*2]
shr eax, 1
jmp 0x6fc974f8
mov ecx, dword [esp + 0x70]
test ecx, ecx
je 0x6fc9994a
mov eax, dword [esp + 0x3c]
add eax, dword [esp + 0x20]
shr eax, 1
jmp 0x6fc974aa
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x6fc9992d
mov eax, dword [esp + 0x64]
add eax, dword [esp + 0x1c]
shr eax, 1
jmp 0x6fc97493
mov esi, dword [esp + 0x34]
test esi, esi
je 0x6fc99b80
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc98bd7
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc99a92
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc99017
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc99d5e
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc98df7
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc99b63
mov ecx, dword [esp + 0x9c]
add ecx, edx
shr ecx, 1
jmp 0x6fc98bbd
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc99b44
mov eax, dword [esp + 0x98]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc98ba3
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc99b26
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
shr ecx, 1
jmp 0x6fc98b89
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99b07
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc98b72
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc99c51
mov ecx, dword [esp + 0x9c]
add ecx, edx
shr ecx, 1
jmp 0x6fc9921d
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc99c32
mov eax, dword [esp + 0x98]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc99203
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc99c14
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
shr ecx, 1
jmp 0x6fc991e9
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99bf5
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc991d2
mov edi, dword [esp + 0x30]
test edi, edi
je 0x6fc99e62
mov eax, dword [esp + 0x38]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc99894
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc99f54
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc99677
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc9a042
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc99457
mov edi, dword [esp + 0x34]
test edi, edi
je 0x6fc99c6e
mov eax, dword [esp + 0x40]
mov edi, dword [esp + 8]
lea ecx, [eax + edi*2]
shr ecx, 1
jmp 0x6fc99237
mov eax, dword [esp + 0x54]
test eax, eax
je 0x6fc99dfd
mov ecx, dword [esp + 0x34]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc99844
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc99dda
mov ecx, dword [esp + 0x4c]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc99829
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc99f37
mov ecx, dword [esp + 0x9c]
add ecx, edx
shr ecx, 1
jmp 0x6fc9965d
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc99f18
mov eax, dword [esp + 0x98]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc99643
mov ecx, dword [esp + 0x70]
test ecx, ecx
je 0x6fc99efa
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
shr ecx, 1
jmp 0x6fc99629
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99edb
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc99612
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc99fe8
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
shr ecx, 1
jmp 0x6fc99409
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99fc9
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc993f2
mov ecx, dword [esp + 0x74]
test ecx, ecx
je 0x6fc9a025
mov ecx, dword [esp + 0x9c]
add ecx, edx
shr ecx, 1
jmp 0x6fc9943d
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc9a006
mov eax, dword [esp + 0x98]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc99423
mov ecx, dword [esp + 0x74]
test ecx, ecx
je 0x6fc99d41
mov ecx, dword [esp + 0x9c]
add ecx, edx
shr ecx, 1
jmp 0x6fc98ddd
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc99d22
mov eax, dword [esp + 0x98]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc98dc3
mov eax, dword [esp + 0x70]
test eax, eax
je 0x6fc99d04
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x2c]
shr ecx, 1
jmp 0x6fc98da9
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99ce5
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc98d92
mov eax, dword [esp + 0x58]
test eax, eax
je 0x6fc99e41
mov ecx, dword [esp + 0x84]
add ecx, edx
shr ecx, 1
jmp 0x6fc99879
mov eax, dword [esp + 0x50]
test eax, eax
je 0x6fc99e1f
mov eax, dword [esp + 0x80]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc9985f
mov ecx, dword [esp + 0x70]
test ecx, ecx
je 0x6fc99a38
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
shr ecx, 1
jmp 0x6fc98fc9
mov eax, dword [esp + 0x88]
test eax, eax
je 0x6fc99a19
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc98fb2
mov eax, dword [esp + 0x74]
test eax, eax
je 0x6fc99a75
mov ecx, dword [esp + 0x9c]
add ecx, edx
shr ecx, 1
jmp 0x6fc98ffd
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc99a56
mov eax, dword [esp + 0x98]
lea ecx, [eax + esi]
shr ecx, 1
jmp 0x6fc98fe3
mov ecx, dword [esp + 0x14]
add ecx, dword [esp + 0x24]
shr ecx, 1
jmp 0x6fc97528
mov eax, dword [esp + 0x60]
add eax, dword [esp + 0x28]
shr eax, 1
jmp 0x6fc97478
mov ecx, dword [esp + 0x48]
add ecx, dword [esp + 0x18]
shr ecx, 1
jmp 0x6fc9980e
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x2c]
shr ecx, 1
jmp 0x6fc998c5
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc993d8
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x28]
shr ecx, 1
jmp 0x6fc99487
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc991b8
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x28]
shr ecx, 1
jmp 0x6fc99267
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc98f98
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x28]
shr ecx, 1
jmp 0x6fc99047
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc98b58
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x28]
shr ecx, 1
jmp 0x6fc98c07
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
shr ecx, 1
jmp 0x6fc995f8
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x28]
shr ecx, 1
jmp 0x6fc996a7
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x20]
shr ecx, 1
jmp 0x6fc98d78
mov ecx, dword [esp + 8]
add ecx, dword [esp + 0x28]
shr ecx, 1
jmp 0x6fc98e27
mov eax, dword [esp + 0x98]
mov edi, dword [esp + 0x50]
movzx ecx, byte [esp + 0x88]
add eax, esi
sar eax, 1
mov byte [edi], al
jmp 0x6fc97528
mov eax, dword [esp + 0x94]
mov edi, dword [esp + 0x4c]
add eax, ebx
sar eax, 1
mov byte [edi], al
movzx eax, byte [esp + 0x93]
jmp 0x6fc974f8
mov eax, dword [esp + 0x3c]
add eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x34]
sar eax, 1
mov byte [ecx], al
movzx eax, byte [esp + 0x92]
jmp 0x6fc974de
mov eax, dword [esp + 0x64]
add eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x30]
sar eax, 1
mov byte [ecx], al
movzx eax, byte [esp + 0x91]
jmp 0x6fc974c4
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x48]
add ecx, dword [esp + 0x28]
sar ecx, 1
mov byte [eax], cl
movzx eax, byte [esp + 0x68]
jmp 0x6fc974aa
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x54]
add ecx, edx
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jmp 0x6fc98e27
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x54]
add ecx, edx
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jmp 0x6fc996a7
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x54]
add ecx, edx
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jmp 0x6fc99047
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x50]
add ecx, esi
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x94]
jmp 0x6fc98bd7
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x93]
jmp 0x6fc98bbd
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x92]
jmp 0x6fc98ba3
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x5c]
jmp 0x6fc98b89
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x50]
add ecx, esi
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x94]
jmp 0x6fc99677
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x93]
jmp 0x6fc9965d
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x92]
jmp 0x6fc99643
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x5c]
jmp 0x6fc99629
mov ecx, dword [esp + 0x80]
mov eax, dword [esp + 0xc8]
add ecx, esi
sar ecx, 1
mov byte [eax + 1], cl
movzx ecx, byte [esp + 0x7c]
jmp 0x6fc99894
mov ecx, dword [esp + 0x34]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0xc8]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x78]
jmp 0x6fc99879
mov ecx, dword [esp + 0x4c]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0xc8]
sar ecx, 1
mov byte [eax - 1], cl
movzx ecx, byte [esp + 0x40]
jmp 0x6fc9985f
mov ecx, dword [esp + 0x48]
add ecx, dword [esp + 0x18]
mov eax, dword [esp + 0xc8]
sar ecx, 1
mov byte [eax - 2], cl
movzx ecx, byte [esp + 0x3c]
jmp 0x6fc99844
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x50]
add ecx, esi
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x94]
jmp 0x6fc99237
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x93]
jmp 0x6fc9921d
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x92]
jmp 0x6fc99203
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x5c]
jmp 0x6fc991e9
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x54]
add ecx, edx
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jmp 0x6fc98c07
mov ecx, dword [esp + 0x84]
mov eax, dword [esp + 0xc8]
add ecx, edx
sar ecx, 1
mov byte [eax + 2], cl
movzx ecx, byte [esp + 0x70]
jmp 0x6fc998c5
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x54]
add ecx, edx
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jmp 0x6fc99267
mov ecx, dword [esp + 0x9c]
mov eax, dword [esp + 0x54]
add ecx, edx
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x8c]
jmp 0x6fc99487
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x50]
add ecx, esi
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x94]
jmp 0x6fc99457
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x93]
jmp 0x6fc9943d
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x92]
jmp 0x6fc99423
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x5c]
jmp 0x6fc99409
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x50]
add ecx, esi
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x94]
jmp 0x6fc99017
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x24]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x93]
jmp 0x6fc98ffd
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x38]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x92]
jmp 0x6fc98fe3
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x4c]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x5c]
jmp 0x6fc98fc9
mov ecx, dword [esp + 0x98]
mov eax, dword [esp + 0x50]
add ecx, esi
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x94]
jmp 0x6fc98df7
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x24]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x93]
jmp 0x6fc98ddd
mov ecx, dword [esp + 0x68]
add ecx, dword [esp + 0x1c]
mov eax, dword [esp + 0x38]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x92]
jmp 0x6fc98dc3
mov ecx, dword [esp + 0x64]
add ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x4c]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x5c]
jmp 0x6fc98da9