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

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x1ec
mov eax, dword [esp + 0x200]
mov eax, dword [eax + 0x10]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x200]
mov edi, dword [eax + 0x28]
test edi, 4
je 0x6fc92908
mov eax, edi
and eax, 0x40
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x200]
cmp dword [eax + 0x20], 1
jle 0x6fc92908
mov ebp, dword [esp + 0x60]
mov eax, ebp
mov ecx, ebp
shl eax, 2
neg ecx
lea edx, [eax + ebp]
mov edi, ebp
mov dword [esp + 0x104], edx
lea edx, [ebp + ebp]
neg dword [esp + 0x104]
add edi, edx
mov esi, dword [esp + 0x104]
lea ebx, [esi + 1]
mov dword [esp + 0x10c], ebx
lea ebx, [ecx*4]
add ecx, ecx
mov dword [esp + 0x14], ebx
add ebx, 1
mov dword [esp + 0x110], ebx
mov ebx, edi
neg ebx
lea ebp, [ebx + 1]
mov dword [esp + 0x114], ebp
lea ebp, [ecx + 1]
mov dword [esp + 0x118], ebp
lea ebp, [edx + 1]
mov dword [esp + 0x11c], ebp
lea ebp, [edi + 1]
mov dword [esp + 0x120], ebp
lea ebp, [eax + 1]
mov dword [esp + 0x124], ebp
mov ebp, esi
lea esi, [esi + 2]
mov dword [esp + 0x128], esi
mov esi, dword [esp + 0x14]
add esi, 2
mov dword [esp + 0x12c], esi
lea esi, [ebx + 2]
mov dword [esp + 0x130], esi
lea esi, [ecx + 2]
mov dword [esp + 0x134], esi
lea esi, [edx + 2]
mov dword [esp + 0x138], esi
lea esi, [edi + 2]
mov dword [esp + 0x13c], esi
lea esi, [eax + 2]
mov dword [esp + 0x140], esi
lea esi, [ebp + 3]
mov dword [esp + 0x144], esi
mov esi, dword [esp + 0x14]
add esi, 3
mov dword [esp + 0x148], esi
lea esi, [ebx + 3]
mov dword [esp + 0x14c], esi
lea esi, [ecx + 3]
mov dword [esp + 0x150], esi
lea esi, [edx + 3]
mov dword [esp + 0x154], esi
lea esi, [edi + 3]
mov dword [esp + 0x158], esi
lea esi, [eax + 3]
mov dword [esp + 0x15c], esi
lea esi, [ebp + 4]
mov dword [esp + 0x160], esi
mov esi, dword [esp + 0x14]
add esi, 4
mov dword [esp + 0x164], esi
lea esi, [ebx + 4]
mov dword [esp + 0x168], esi
lea esi, [ecx + 4]
mov dword [esp + 0x16c], esi
lea esi, [edx + 4]
mov dword [esp + 0x170], esi
lea esi, [edi + 4]
mov dword [esp + 0x174], esi
lea esi, [eax + 4]
mov dword [esp + 0x178], esi
lea esi, [ebp + 5]
mov dword [esp + 0x17c], esi
mov esi, dword [esp + 0x14]
add esi, 5
mov dword [esp + 0x180], esi
lea esi, [ebx + 5]
mov dword [esp + 0x184], esi
lea esi, [ecx + 5]
mov dword [esp + 0x188], esi
lea esi, [edx + 5]
mov dword [esp + 0x18c], esi
lea esi, [edi + 5]
mov dword [esp + 0x190], esi
lea esi, [eax + 5]
mov dword [esp + 0x194], esi
lea esi, [ebp + 6]
mov dword [esp + 0x198], esi
mov esi, dword [esp + 0x14]
add esi, 6
mov dword [esp + 0x19c], esi
lea esi, [ebx + 6]
mov dword [esp + 0x1a0], esi
lea esi, [ecx + 6]
mov dword [esp + 0x1a4], esi
lea esi, [edx + 6]
add edx, 7
mov dword [esp + 0x1a8], esi
lea esi, [edi + 6]
mov dword [esp + 0x1ac], esi
lea esi, [eax + 6]
add eax, 7
mov dword [esp + 0x1b0], esi
lea esi, [ebp + 7]
mov dword [esp + 0x1c4], edx
lea edx, [edi + 7]
mov edi, dword [esp + 0x60]
mov dword [esp + 0x1b4], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0x1cc], eax
mov dword [esp + 0x1c8], edx
lea eax, [edi*8]
add esi, 7
mov dword [esp + 0x1e8], eax
mov dword [esp + 0x1e4], eax
mov eax, 1
mov dword [esp + 0x1b8], esi
lea esi, [ebx + 7]
mov dword [esp + 0x1e0], eax
sub eax, edi
mov dword [esp + 0x1bc], esi
lea esi, [ecx + 7]
mov dword [esp + 0x1d0], eax
lea eax, [edi + 1]
mov dword [esp + 0x1c0], esi
mov dword [esp + 0x1d4], eax
mov dword [esp + 0x108], 2
sub dword [esp + 0x108], edi
mov eax, dword [esp + 0x200]
mov edi, dword [esp + 0x200]
mov eax, dword [eax + 0x14]
cmp eax, dword [edi + 0x18]
mov dword [esp + 0x4c], eax
jge 0x6fc928d1
mov eax, dword [esp + 0x1e0]
mov dword [esp + 0xc0], 3
mov dword [esp + 0xc4], 4
mov dword [esp + 0xc8], 5
sar eax, 1
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0x60]
sub dword [esp + 0xc0], eax
sub dword [esp + 0xc4], eax
sub dword [esp + 0xc8], eax
lea edi, [eax + 2]
mov dword [esp + 0xe8], edi
lea edi, [eax + 3]
mov dword [esp + 0xec], edi
lea edi, [eax + 4]
mov dword [esp + 0xf0], edi
lea edi, [eax + 5]
mov dword [esp + 0xf4], edi
lea edi, [eax + 6]
mov dword [esp + 0xcc], 6
mov dword [esp + 0xd0], 7
sub dword [esp + 0xcc], eax
sub dword [esp + 0xd0], eax
add eax, 7
mov dword [esp + 0xf8], edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x1e4]
lea eax, [eax + edi*8]
mov dword [esp + 0x64], eax
nop
mov edi, dword [esp + 0x4c]
mov eax, dword [esp + 0x200]
mov edx, dword [esp + 0xe4]
mov esi, dword [esp + 0x60]
imul edx, dword [eax + 0x24]
mov eax, edi
shr eax, 0x1f
add eax, edi
mov edi, dword [esp + 0x200]
sar eax, 1
add eax, edx
mov edx, dword [esp + 0x64]
imul eax, eax, 0x1e8
add eax, dword [edi + 0xc]
mov eax, dword [eax + 0xf0]
mov dword [esp + 0x1c], eax
mov eax, dword [edi + 8]
add edx, dword [eax]
mov eax, dword [edi + 4]
mov edi, dword [esp + 0x104]
mov dword [esp + 0x18], edx
mov dword [esp + 0x14], eax
lea ecx, [edx + edi]
movzx edi, byte [ecx]
add ecx, esi
movzx ebx, byte [ecx]
mov dword [esp + 0x84], ecx
add ecx, esi
mov dword [esp + 0x74], ecx
mov dword [esp + 0x38], edi
mov byte [esp + 0x1da], bl
movzx edi, bl
movzx ebx, byte [ecx]
add ecx, esi
mov dword [esp + 0x30], edi
mov dword [esp + 0x78], ecx
movzx edi, bl
mov byte [esp + 0xdc], bl
movzx ebx, byte [ecx]
add ecx, esi
mov dword [esp + 0x20], edi
mov dword [esp + 0x68], ecx
mov byte [esp + 0xb8], bl
mov dword [esp + 0x3c], ebx
movzx ebx, byte [ecx]
mov ecx, esi
add esi, edx
mov eax, ecx
movzx edi, bl
mov byte [esp + 0x88], bl
movzx ebx, byte [edx]
mov byte [esp + 0xbf], bl
movzx ebp, bl
movzx ebx, byte [esi]
mov dword [esp + 0x7c], esi
add esi, ecx
mov dword [esp + 0x80], esi
mov byte [esp + 0x1d8], bl
mov dword [esp + 0x28], ebx
movzx ebx, byte [esi]
mov byte [esp + 0x1d9], bl
mov dword [esp + 0x2c], ebx
mov ebx, esi
add ebx, ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x70], ebx
movzx ebx, byte [ebx]
movzx edx, bl
mov byte [esp + 0xb4], bl
mov ebx, esi
mov esi, dword [esp + 0x20]
mov dword [esp + 0x24], edx
movzx edx, byte [ebx + eax*2]
mov ebx, dword [esp + 0x38]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], edx
sub ebx, ecx
sub ecx, esi
lea edx, [ebx + 0xff]
mov dword [esp + 0xe0], ebx
movsx ebx, byte [eax + ebx + 0xff]
mov dword [esp + 0x98], edx
lea edx, [ecx + 0xff]
mov dword [esp + 0x8c], ecx
movsx ecx, byte [eax + ecx + 0xff]
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x9c], edx
add ebx, ecx
sub esi, eax
lea edx, [esi + 0xff]
mov ecx, esi
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0xa0], edx
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xd4], edx
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xd8], ecx
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x44], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x48], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x50], esi
lea esi, [edi + edi]
mov dword [esp + 0x40], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x54], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc939f0
mov edx, dword [esp + 0x5c]
movzx ecx, byte [eax + edx + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc8fee2
mov ebx, dword [esp + 0x50]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x3c]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x54]
sub esi, dword [esp + 0x40]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94940
test ebx, ebx
js 0x6fc8feca
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax], bl
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc90138
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x58]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc94710
mov eax, dword [esp + 0x100]
mov edx, dword [esp + 0x84]
movzx ecx, byte [esp + 0x1da]
test eax, eax
mov byte [edx], cl
jne 0x6fc94e9b
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x50]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc94c02
movzx ecx, byte [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
test eax, eax
mov byte [edx], cl
je 0x6fc94c30
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94c95
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94c71
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov edi, dword [esp + 0xa4]
test edi, edi
je 0x6fc94c50
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc93c80
mov ebx, dword [esp + 0xa4]
test ebx, ebx
je 0x6fc94812
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x58]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x10c]
movzx edi, byte [eax + edi]
mov edx, edi
mov dword [esp + 0x44], edi
mov edi, dword [esp + 0x110]
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x84], edi
movzx edi, bl
mov ecx, edi
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x114]
sub edx, ecx
mov byte [esp + 0x1da], bl
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x74], edi
movzx edi, bl
mov esi, edi
mov edi, dword [esp + 0x118]
mov byte [esp + 0xdc], bl
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x78], edi
mov byte [esp + 0xb8], bl
movzx edi, bl
mov ebx, dword [esp + 0x1d0]
mov dword [esp + 0x38], edi
add ebx, eax
mov dword [esp + 0x68], ebx
movzx ebx, byte [ebx]
movzx edi, bl
mov byte [esp + 0x88], bl
movzx ebx, byte [eax + 1]
movzx ebp, bl
mov byte [esp + 0xbf], bl
mov ebx, dword [esp + 0x1d4]
add ebx, eax
mov dword [esp + 0x7c], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d8], bl
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x11c]
add ebx, eax
mov dword [esp + 0x80], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d9], bl
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x120]
mov dword [esp + 0x20], esi
mov dword [esp + 0xe0], edx
add ebx, eax
mov dword [esp + 0x70], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0xb4], bl
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x124]
movzx ebx, byte [eax + ebx]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], ebx
mov ebx, ecx
sub ebx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0x98], ecx
mov ecx, ebx
mov dword [esp + 0x8c], ebx
add ebx, 0xff
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + edx + 0xff]
mov eax, dword [esp + 0x38]
add ebx, ecx
sub esi, eax
lea edx, [esi + 0xff]
mov ecx, esi
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0xa0], edx
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xd4], edx
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xd8], ecx
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x48], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x50], esi
lea esi, [edi + edi]
mov dword [esp + 0x3c], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x54], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc93750
mov edx, dword [esp + 0x5c]
movzx ecx, byte [eax + edx + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc90479
mov ebx, dword [esp + 0x50]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x38]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x54]
sub esi, dword [esp + 0x3c]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94954
test ebx, ebx
js 0x6fc90460
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax + 1], bl
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc906d0
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x58]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc943b0
mov eax, dword [esp + 0x100]
mov edx, dword [esp + 0x84]
movzx ecx, byte [esp + 0x1da]
test eax, eax
mov byte [edx], cl
jne 0x6fc94e69
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x50]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc94cb2
movzx ecx, byte [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
test eax, eax
mov byte [edx], cl
je 0x6fc94ce0
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94d45
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax + 1], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94d21
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov edi, dword [esp + 0xa4]
test edi, edi
je 0x6fc94d00
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc939e2
mov ebx, dword [esp + 0xa4]
test ebx, ebx
je 0x6fc944b3
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x58]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x128]
movzx edx, byte [eax + edi]
mov edi, dword [esp + 0x12c]
mov dword [esp + 0x44], edx
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x84], edi
movzx edi, bl
mov ecx, edi
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x130]
sub edx, ecx
mov byte [esp + 0x1da], bl
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x74], edi
movzx edi, bl
mov esi, edi
mov edi, dword [esp + 0x134]
mov byte [esp + 0xdc], bl
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x78], edi
mov byte [esp + 0xb8], bl
movzx edi, bl
mov ebx, dword [esp + 0x108]
mov dword [esp + 0x38], edi
add ebx, eax
mov dword [esp + 0x68], ebx
movzx ebx, byte [ebx]
movzx edi, bl
mov byte [esp + 0x88], bl
movzx ebx, byte [eax + 2]
movzx ebp, bl
mov byte [esp + 0xbf], bl
mov ebx, dword [esp + 0xe8]
add ebx, eax
mov dword [esp + 0x7c], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d8], bl
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x138]
add ebx, eax
mov dword [esp + 0x80], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d9], bl
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x13c]
mov dword [esp + 0x20], esi
mov dword [esp + 0xe0], edx
add ebx, eax
mov dword [esp + 0x70], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0xb4], bl
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x140]
movzx ebx, byte [eax + ebx]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], ebx
mov ebx, ecx
sub ebx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0x98], ecx
mov ecx, ebx
mov dword [esp + 0x8c], ebx
add ebx, 0xff
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + edx + 0xff]
mov eax, dword [esp + 0x38]
add ebx, ecx
sub esi, eax
lea edx, [esi + 0xff]
mov ecx, esi
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0xa0], edx
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xd4], edx
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xd8], ecx
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x48], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x50], esi
lea esi, [edi + edi]
mov dword [esp + 0x3c], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x54], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc93c90
mov edx, dword [esp + 0x5c]
movzx ecx, byte [eax + edx + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc90a0f
mov ebx, dword [esp + 0x50]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x38]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x54]
sub esi, dword [esp + 0x3c]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94926
test ebx, ebx
js 0x6fc909f6
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax + 2], bl
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc90c66
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x58]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc944d0
mov eax, dword [esp + 0x100]
mov edx, dword [esp + 0x84]
movzx ecx, byte [esp + 0x1da]
test eax, eax
mov byte [edx], cl
jne 0x6fc94fe9
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x50]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc94d62
movzx ecx, byte [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
test eax, eax
mov byte [edx], cl
je 0x6fc94d90
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94df5
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax + 2], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94dd1
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov edi, dword [esp + 0xa4]
test edi, edi
je 0x6fc94db0
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc93f22
mov ebx, dword [esp + 0xa4]
test ebx, ebx
je 0x6fc945d3
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x58]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
mov eax, dword [esp + 0x18]
mov edi, dword [esp + 0x144]
movzx edx, byte [eax + edi]
mov edi, dword [esp + 0x148]
mov dword [esp + 0x44], edx
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x84], edi
movzx edi, bl
mov ecx, edi
mov dword [esp + 0x30], edi
mov edi, dword [esp + 0x14c]
sub edx, ecx
mov byte [esp + 0x1da], bl
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x74], edi
movzx edi, bl
mov esi, edi
mov edi, dword [esp + 0x150]
mov byte [esp + 0xdc], bl
add edi, eax
movzx ebx, byte [edi]
mov dword [esp + 0x78], edi
mov byte [esp + 0xb8], bl
movzx edi, bl
mov ebx, dword [esp + 0xc0]
mov dword [esp + 0x38], edi
add ebx, eax
mov dword [esp + 0x68], ebx
movzx ebx, byte [ebx]
movzx edi, bl
mov byte [esp + 0x88], bl
movzx ebx, byte [eax + 3]
movzx ebp, bl
mov byte [esp + 0xbf], bl
mov ebx, dword [esp + 0xec]
add ebx, eax
mov dword [esp + 0x7c], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d8], bl
mov dword [esp + 0x28], ebx
mov ebx, dword [esp + 0x154]
add ebx, eax
mov dword [esp + 0x80], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d9], bl
mov dword [esp + 0x2c], ebx
mov ebx, dword [esp + 0x158]
mov dword [esp + 0x20], esi
mov dword [esp + 0xe0], edx
add ebx, eax
mov dword [esp + 0x70], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0xb4], bl
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0x15c]
movzx ebx, byte [eax + ebx]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], ebx
mov ebx, ecx
sub ebx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0x98], ecx
mov ecx, ebx
mov dword [esp + 0x8c], ebx
add ebx, 0xff
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x9c], ebx
movsx ebx, byte [eax + edx + 0xff]
mov eax, dword [esp + 0x38]
add ebx, ecx
sub esi, eax
lea edx, [esi + 0xff]
mov ecx, esi
mov dword [esp + 0x90], esi
mov esi, dword [esp + 0x14]
mov dword [esp + 0xa0], edx
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xd4], edx
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xd8], ecx
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x50], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x48], esi
lea esi, [edi + edi]
mov dword [esp + 0x3c], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x54], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc934b0
mov edx, dword [esp + 0x5c]
movzx ecx, byte [eax + edx + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc90fa5
mov ebx, dword [esp + 0x48]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x38]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x54]
sub esi, dword [esp + 0x3c]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc949a8
test ebx, ebx
js 0x6fc90f8c
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax + 3], bl
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc91200
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x58]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc94170
mov eax, dword [esp + 0x100]
mov edx, dword [esp + 0x84]
movzx ecx, byte [esp + 0x1da]
test eax, eax
mov byte [edx], cl
jne 0x6fc94b47
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc949c0
movzx ecx, byte [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
test eax, eax
mov byte [edx], cl
je 0x6fc949ee
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94a55
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax + 3], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94a31
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov edi, dword [esp + 0xa4]
test edi, edi
je 0x6fc94a10
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc93741
mov ebx, dword [esp + 0xa4]
test ebx, ebx
je 0x6fc94273
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x58]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
lea esi, [esi]
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x160]
mov esi, dword [esp + 0x168]
movzx edx, byte [ebp + edi]
mov edi, dword [esp + 0x164]
add esi, ebp
movzx ebx, byte [esi]
mov dword [esp + 0x74], esi
mov dword [esp + 0x40], edx
add edi, ebp
movzx ecx, byte [edi]
mov dword [esp + 0x84], edi
mov byte [esp + 0xdc], bl
movzx edi, cl
mov byte [esp + 0x1da], cl
mov ecx, dword [esp + 0x16c]
mov dword [esp + 0x30], edi
movzx edi, bl
mov ebx, ebp
mov esi, edi
add ecx, ebp
mov ebp, dword [esp + 0xc4]
mov dword [esp + 0x78], ecx
movzx ecx, byte [ecx]
add ebp, ebx
movzx edi, cl
mov byte [esp + 0xb8], cl
mov ecx, ebx
movzx ebx, byte [ebp]
mov eax, edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x68], ebp
movzx edi, bl
mov byte [esp + 0x88], bl
mov ebx, ecx
movzx ecx, byte [ecx + 4]
movzx ebp, cl
mov byte [esp + 0xbf], cl
mov ecx, dword [esp + 0xf0]
add ecx, ebx
movzx ebx, byte [ecx]
mov dword [esp + 0x7c], ecx
mov byte [esp + 0x1d8], bl
movzx ecx, bl
mov ebx, dword [esp + 0x170]
add ebx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
movzx ecx, byte [ebx]
mov dword [esp + 0x80], ebx
mov byte [esp + 0x1d9], cl
movzx ebx, cl
mov ecx, dword [esp + 0x174]
add ecx, dword [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], esi
movzx ebx, byte [ecx]
mov dword [esp + 0x70], ecx
movzx ecx, bl
mov byte [esp + 0xb4], bl
mov ebx, dword [esp + 0x178]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x18]
movzx ebx, byte [ecx + ebx]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x30]
sub edx, ebx
sub ebx, esi
lea ecx, [edx + 0xff]
sub esi, eax
mov dword [esp + 0x98], ecx
mov ecx, ebx
mov dword [esp + 0x8c], ebx
add ebx, 0xff
mov dword [esp + 0x9c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xe0], edx
mov dword [esp + 0x90], esi
movsx ebx, byte [ebx + edx + 0xff]
mov edx, dword [esp + 0x14]
movsx ecx, byte [edx + ecx + 0xff]
lea edx, [esi + 0xff]
mov dword [esp + 0xa0], edx
mov edx, dword [esp + 0x14]
add ebx, ecx
movsx ecx, byte [edx + esi + 0xff]
mov esi, dword [esp + 0x14]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xd8], ecx
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x44], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x48], esi
lea esi, [edi + edi]
mov dword [esp + 0x38], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x50], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc93210
mov edx, dword [esp + 0x5c]
movzx ecx, byte [eax + edx + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc9155c
mov ebx, dword [esp + 0x48]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x58]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x50]
sub esi, dword [esp + 0x38]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94980
test ebx, ebx
js 0x6fc91543
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax + 4], bl
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc917b3
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x54]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc94290
mov eax, dword [esp + 0x100]
mov edx, dword [esp + 0x84]
movzx ecx, byte [esp + 0x1da]
test eax, eax
mov byte [edx], cl
jne 0x6fc94fb7
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc94a72
movzx ecx, byte [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
test eax, eax
mov byte [edx], cl
je 0x6fc94aa0
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94b05
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax + 4], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94ae1
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov edi, dword [esp + 0xa4]
test edi, edi
je 0x6fc94ac0
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc934a2
mov ebx, dword [esp + 0xa4]
test ebx, ebx
je 0x6fc94393
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x54]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x17c]
mov esi, dword [esp + 0x184]
movzx edx, byte [ebp + edi]
mov edi, dword [esp + 0x180]
add esi, ebp
movzx ebx, byte [esi]
mov dword [esp + 0x74], esi
mov dword [esp + 0x40], edx
add edi, ebp
movzx ecx, byte [edi]
mov dword [esp + 0x84], edi
mov byte [esp + 0xdc], bl
movzx edi, cl
mov byte [esp + 0x1da], cl
mov ecx, dword [esp + 0x188]
mov dword [esp + 0x30], edi
movzx edi, bl
mov ebx, ebp
mov esi, edi
add ecx, ebp
mov ebp, dword [esp + 0xc8]
mov dword [esp + 0x78], ecx
movzx ecx, byte [ecx]
add ebp, ebx
movzx edi, cl
mov byte [esp + 0xb8], cl
mov ecx, ebx
movzx ebx, byte [ebp]
mov eax, edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x68], ebp
movzx edi, bl
mov byte [esp + 0x88], bl
mov ebx, ecx
movzx ecx, byte [ecx + 5]
movzx ebp, cl
mov byte [esp + 0xbf], cl
mov ecx, dword [esp + 0xf4]
add ecx, ebx
movzx ebx, byte [ecx]
mov dword [esp + 0x7c], ecx
mov byte [esp + 0x1d8], bl
movzx ecx, bl
mov ebx, dword [esp + 0x18c]
add ebx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
movzx ecx, byte [ebx]
mov dword [esp + 0x80], ebx
mov byte [esp + 0x1d9], cl
movzx ebx, cl
mov ecx, dword [esp + 0x190]
add ecx, dword [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], esi
movzx ebx, byte [ecx]
mov dword [esp + 0x70], ecx
movzx ecx, bl
mov byte [esp + 0xb4], bl
mov ebx, dword [esp + 0x194]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x18]
movzx ebx, byte [ecx + ebx]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x30]
sub edx, ebx
sub ebx, esi
lea ecx, [edx + 0xff]
sub esi, eax
mov dword [esp + 0x98], ecx
mov ecx, ebx
mov dword [esp + 0x8c], ebx
add ebx, 0xff
mov dword [esp + 0x9c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xe0], edx
mov dword [esp + 0x90], esi
movsx ebx, byte [ebx + edx + 0xff]
mov edx, dword [esp + 0x14]
movsx ecx, byte [edx + ecx + 0xff]
lea edx, [esi + 0xff]
mov dword [esp + 0xa0], edx
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x14]
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xd8], ecx
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x50], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x48], esi
lea esi, [edi + edi]
mov dword [esp + 0x38], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x44], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc92f70
mov esi, dword [esp + 0x5c]
movzx ecx, byte [eax + esi + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc91b0d
mov ebx, dword [esp + 0x48]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x58]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x44]
sub esi, dword [esp + 0x38]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94968
test ebx, ebx
js 0x6fc91af4
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax + 5], bl
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x6fc91d64
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x54]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc945f0
movzx ecx, byte [esp + 0x1da]
mov edx, dword [esp + 0x84]
mov byte [edx], cl
mov ecx, dword [esp + 0x100]
test ecx, ecx
jne 0x6fc94e37
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc94b54
movzx ecx, byte [esp + 0xb8]
mov eax, dword [esp + 0x5c]
mov edx, dword [esp + 0x78]
test eax, eax
mov byte [edx], cl
je 0x6fc94b82
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94be5
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax + 5], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94bc1
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov edi, dword [esp + 0xa4]
test edi, edi
je 0x6fc94ba0
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc93201
mov ecx, dword [esp + 0xa4]
test ecx, ecx
je 0x6fc946f2
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x54]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x198]
mov esi, dword [esp + 0x1a0]
movzx edx, byte [ebp + edi]
mov edi, dword [esp + 0x19c]
add esi, ebp
movzx ebx, byte [esi]
mov dword [esp + 0x74], esi
mov dword [esp + 0x40], edx
add edi, ebp
movzx ecx, byte [edi]
mov dword [esp + 0x84], edi
mov byte [esp + 0xdc], bl
movzx edi, cl
mov byte [esp + 0x1da], cl
mov ecx, dword [esp + 0x1a4]
mov dword [esp + 0x30], edi
movzx edi, bl
mov ebx, ebp
mov esi, edi
add ecx, ebp
mov ebp, dword [esp + 0xcc]
mov dword [esp + 0x78], ecx
movzx ecx, byte [ecx]
add ebp, ebx
movzx edi, cl
mov byte [esp + 0xb8], cl
mov ecx, ebx
movzx ebx, byte [ebp]
mov eax, edi
mov dword [esp + 0x58], edi
mov dword [esp + 0x68], ebp
movzx edi, bl
mov byte [esp + 0x88], bl
mov ebx, ecx
movzx ecx, byte [ecx + 6]
movzx ebp, cl
mov byte [esp + 0xbf], cl
mov ecx, dword [esp + 0xf8]
add ecx, ebx
movzx ebx, byte [ecx]
mov dword [esp + 0x7c], ecx
mov byte [esp + 0x1d8], bl
movzx ecx, bl
mov ebx, dword [esp + 0x1a8]
add ebx, dword [esp + 0x18]
mov dword [esp + 0x28], ecx
movzx ecx, byte [ebx]
mov dword [esp + 0x80], ebx
mov byte [esp + 0x1d9], cl
movzx ebx, cl
mov ecx, dword [esp + 0x1ac]
add ecx, dword [esp + 0x18]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x20], esi
movzx ebx, byte [ecx]
mov dword [esp + 0x70], ecx
movzx ecx, bl
mov byte [esp + 0xb4], bl
mov ebx, dword [esp + 0x1b0]
mov dword [esp + 0x24], ecx
mov ecx, dword [esp + 0x18]
movzx ebx, byte [ecx + ebx]
mov dword [esp + 0x54], ebx
mov ebx, dword [esp + 0x30]
sub edx, ebx
sub ebx, esi
lea ecx, [edx + 0xff]
sub esi, eax
mov dword [esp + 0x98], ecx
mov ecx, ebx
mov dword [esp + 0x8c], ebx
add ebx, 0xff
mov dword [esp + 0x9c], ebx
mov ebx, dword [esp + 0x14]
mov dword [esp + 0xe0], edx
mov dword [esp + 0x90], esi
movsx ebx, byte [ebx + edx + 0xff]
mov edx, dword [esp + 0x14]
movsx ecx, byte [edx + ecx + 0xff]
lea edx, [esi + 0xff]
mov dword [esp + 0xa0], edx
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x14]
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, eax
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x94], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xa4], edx
mov edx, edi
sub edx, ebp
mov dword [esp + 0x6c], edx
add ebx, ecx
lea ecx, [edx + 0xff]
mov dword [esp + 0x5c], ecx
movsx ecx, byte [esi + edx + 0xff]
mov edx, ebp
mov esi, dword [esp + 0x28]
add ebx, ecx
sub edx, esi
lea ecx, [edx + 0xff]
mov dword [esp + 0xd4], edx
mov dword [esp + 0xa8], ecx
mov ecx, dword [esp + 0x14]
movsx ecx, byte [ecx + edx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x2c]
sub ecx, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0xac], edx
mov edx, dword [esp + 0x14]
mov dword [esp + 0xd8], ecx
movsx ecx, byte [edx + ecx + 0xff]
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x20]
sub ecx, dword [esp + 0x24]
add esi, esi
lea edx, [ecx + 0xff]
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp + 0x44], esi
lea esi, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x48], esi
lea esi, [edi + edi]
mov dword [esp + 0x38], esi
lea esi, [ebp + ebp]
mov dword [esp + 0xb0], edx
movsx ecx, byte [eax + ecx + 0xff]
mov dword [esp + 0x50], esi
add ecx, ebx
cmp ecx, 5
jg 0x6fc92cd2
mov esi, dword [esp + 0x5c]
movzx ecx, byte [eax + esi + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc920be
mov ebx, dword [esp + 0x48]
lea ecx, [edi + edi*4]
mov esi, dword [esp + 0x20]
sub ebx, ecx
lea ecx, [ebp + ebp*4]
lea eax, [ecx + ebx]
mov ecx, dword [esp + 0x28]
lea ebx, [ecx + ecx]
sub eax, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x30]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x58]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [ecx + ecx*4]
mov ecx, dword [esp + 0x50]
sub esi, dword [esp + 0x38]
sub ecx, ebx
mov ebx, dword [esp + 0x2c]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x24]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test eax, eax
setg cl
lea ecx, [ecx + ecx - 1]
mov edx, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x6c]
imul ebx, edx
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94912
test ebx, ebx
js 0x6fc920a5
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x88]
mov ebx, esi
mov edx, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edx], cl
add byte [eax + 6], bl
mov edx, dword [esp + 0x34]
test edx, edx
je 0x6fc92315
mov edx, dword [esp + 0x1c]
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x9c]
lea ecx, [edx + 2]
mov edx, dword [esp + 0x98]
movzx ebx, byte [eax + edx + 0x1ff]
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov esi, dword [esp + 0x14]
mov byte [esp + 0x1db], dl
cmp ecx, ebx
mov ebx, edx
mov edx, dword [esp + 0xa0]
setl al
or eax, ebx
movzx ebx, byte [esi + edx + 0x1ff]
mov edx, eax
mov eax, dword [esp + 0x14]
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x100], ebx
mov ebx, dword [esp + 0xa4]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x5c]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x5c], ebx
mov ebx, dword [esp + 0xa8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
mov ebx, esi
setl al
or eax, ebx
mov ebx, dword [esp + 0x14]
movzx esi, al
mov dword [esp + 0x9c], esi
mov esi, dword [esp + 0xac]
movzx esi, byte [ebx + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, eax
mov eax, dword [esp + 0x14]
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa0], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0x24]
sub esi, dword [esp + 0x54]
movzx esi, byte [eax + esi + 0x2fe]
cmp ecx, esi
mov esi, dword [esp + 0x28]
setl cl
or ecx, ebx
movzx ebx, cl
mov ecx, dword [esp + 0x2c]
add esi, esi
add ecx, ecx
test dl, dl
mov dword [esp + 0xa8], ecx
je 0x6fc94050
mov edx, dword [esp + 0x84]
movzx ecx, byte [esp + 0x1da]
mov byte [edx], cl
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc94f85
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
shr ecx, 1
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x74]
test eax, eax
mov byte [edx], cl
je 0x6fc94ea8
movzx ecx, byte [esp + 0xb8]
mov edx, dword [esp + 0x78]
mov byte [edx], cl
mov ecx, dword [esp + 0x5c]
test ecx, ecx
je 0x6fc94ed6
movzx ecx, byte [esp + 0x88]
mov eax, dword [esp + 0x9c]
mov edx, dword [esp + 0x68]
test eax, eax
mov byte [edx], cl
je 0x6fc94f40
movzx ecx, byte [esp + 0xbf]
mov eax, dword [esp + 0x18]
mov byte [eax + 6], cl
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94f15
movzx ecx, byte [esp + 0x1d8]
mov edi, dword [esp + 0x7c]
mov byte [edi], cl
mov ecx, dword [esp + 0xa4]
test ecx, ecx
je 0x6fc94ef4
movzx ecx, byte [esp + 0x1d9]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jne 0x6fc92f63
mov eax, dword [esp + 0xa4]
test eax, eax
je 0x6fc94153
mov ecx, dword [esp + 0x24]
add ecx, dword [esp + 0x54]
mov edi, dword [esp + 0x70]
shr ecx, 1
mov byte [edi], cl
mov ebp, dword [esp + 0x18]
mov edi, dword [esp + 0x1b4]
mov esi, dword [esp + 0x1bc]
movzx edi, byte [ebp + edi]
add esi, ebp
movzx ebx, byte [esi]
mov dword [esp + 0x78], esi
mov edx, edi
mov dword [esp + 0x5c], edi
mov edi, dword [esp + 0x1b8]
mov byte [esp + 0x1da], bl
add edi, ebp
movzx ecx, byte [edi]
mov dword [esp + 0x8c], edi
movzx edi, cl
mov dword [esp + 0x3c], edi
movzx edi, bl
mov ebx, dword [esp + 0x1c0]
mov byte [esp + 0x1db], cl
mov esi, edi
add ebx, ebp
movzx ecx, byte [ebx]
mov dword [esp + 0x7c], ebx
mov ebx, dword [esp + 0xd0]
movzx edi, cl
add ebx, ebp
mov dword [esp + 0x68], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0x1d8], cl
movzx ecx, byte [ebp + 7]
mov byte [esp + 0x9c], bl
mov dword [esp + 0x20], ebx
mov ebx, ebp
mov ebp, dword [esp + 0xfc]
movzx eax, cl
mov byte [esp + 0x1d9], cl
mov ecx, ebx
mov dword [esp + 0x2c], eax
add ebx, ebp
mov ebp, dword [esp + 0x1c4]
mov dword [esp + 0x80], ebx
movzx ebx, byte [ebx]
mov byte [esp + 0xd4], bl
mov dword [esp + 0x28], ebx
mov ebx, ecx
add ebx, ebp
movzx ecx, byte [ebx]
mov dword [esp + 0x84], ebx
movzx ebx, cl
mov byte [esp + 0xd8], cl
mov ebp, dword [esp + 0x1c8]
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x54], esi
mov dword [esp + 0x24], edi
lea ecx, [ebx + ebp]
mov ebp, dword [esp + 0x1cc]
movzx ebx, byte [ecx]
mov dword [esp + 0x74], ecx
mov byte [esp + 0xbf], bl
movzx ecx, bl
mov ebx, dword [esp + 0x18]
mov dword [esp + 0x40], ecx
mov ecx, dword [esp + 0x3c]
movzx ebp, byte [ebx + ebp]
mov ebx, dword [esp + 0x14]
sub edx, ecx
sub ecx, esi
mov dword [esp + 0x100], edx
sub esi, edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x50], ebp
lea ebp, [edx + 0xff]
movsx ebx, byte [ebx + edx + 0xff]
mov edx, dword [esp + 0x14]
mov dword [esp + 0xa0], ebp
lea ebp, [ecx + 0xff]
mov dword [esp + 0x94], esi
mov dword [esp + 0xa4], ebp
movsx ecx, byte [edx + ecx + 0xff]
lea edx, [esi + 0xff]
mov dword [esp + 0xa8], edx
add ebx, ecx
mov ecx, esi
mov esi, dword [esp + 0x14]
movsx ecx, byte [esi + ecx + 0xff]
add ebx, ecx
mov ecx, edi
mov edi, dword [esp + 0x20]
sub ecx, edi
lea edx, [ecx + 0xff]
mov dword [esp + 0x98], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov dword [esp + 0xac], edx
add ebx, ecx
mov ecx, edi
sub ecx, eax
lea edx, [ecx + 0xff]
mov dword [esp + 0x70], ecx
movsx ecx, byte [esi + ecx + 0xff]
mov esi, dword [esp + 0x28]
mov dword [esp + 0x6c], edx
mov edx, eax
add ebx, ecx
sub edx, esi
mov dword [esp + 0xdc], edx
mov ecx, dword [esp + 0x14]
lea ebp, [edx + 0xff]
mov dword [esp + 0xb0], ebp
movsx ecx, byte [ecx + edx + 0xff]
mov edx, esi
mov esi, dword [esp + 0x30]
add ebx, ecx
mov ecx, dword [esp + 0x14]
sub edx, esi
sub esi, dword [esp + 0x40]
lea ebp, [edx + 0xff]
movsx ecx, byte [ecx + edx + 0xff]
mov dword [esp + 0xe0], edx
lea edx, [esi + 0xff]
mov dword [esp + 0xb4], ebp
mov ebp, esi
mov dword [esp + 0x88], esi
mov esi, dword [esp + 0x54]
add ebx, ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xb8], edx
lea edx, [esi + esi]
mov dword [esp + 0x58], edx
lea edx, [ecx + ecx]
mov dword [esp + 0x44], edx
lea edx, [edi + edi]
mov dword [esp + 0x38], edx
lea edx, [eax + eax]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x48], edx
movsx ecx, byte [eax + ebp + 0xff]
add ecx, ebx
cmp ecx, 5
jg 0x6fc92a37
mov esi, dword [esp + 0x6c]
movzx ecx, byte [eax + esi + 0x1ff]
cmp dword [esp + 0x1c], ecx
jle 0x6fc9267e
mov eax, dword [esp + 0x2c]
lea ecx, [edi + edi*4]
mov ebx, dword [esp + 0x44]
mov esi, dword [esp + 0x54]
sub ebx, ecx
lea ecx, [eax + eax*4]
lea eax, [ecx + ebx]
mov ecx, edx
mov edi, eax
mov eax, dword [esp + 0x28]
lea ebx, [eax + eax]
sub edi, ebx
lea ebx, [esi + esi*4]
mov esi, dword [esp + 0x3c]
neg ebx
lea esi, [ebx + esi*2]
mov ebx, dword [esp + 0x24]
lea ebx, [ebx + ebx*4]
add esi, ebx
lea ebx, [eax + eax*4]
mov eax, edi
sub ecx, ebx
mov ebx, dword [esp + 0x30]
sub esi, dword [esp + 0x38]
lea ebx, [ebx + ebx*4]
add ebx, ecx
mov ecx, dword [esp + 0x40]
add ecx, ecx
sub ebx, ecx
xor ecx, ecx
test edi, edi
setg cl
lea ecx, [ecx + ecx - 1]
mov edi, ecx
mov ecx, esi
sar ecx, 0x1f
xor ecx, esi
shr esi, 0x1f
add esi, ecx
mov ecx, esi
mov esi, ebx
sar esi, 0x1f
xor esi, ebx
shr ebx, 0x1f
add ebx, esi
mov esi, eax
cmp ecx, ebx
cmovle ebx, ecx
mov ecx, eax
sar esi, 0x1f
shr ecx, 0x1f
xor esi, eax
add esi, ecx
cmp ebx, esi
cmovg ebx, esi
mov esi, dword [esp + 0x70]
imul ebx, edi
mov ecx, esi
shr ecx, 0x1f
sub ebx, eax
add ecx, esi
xor esi, esi
lea ebx, [ebx + ebx*4 + 0x20]
sar ecx, 1
sar ebx, 6
test ecx, ecx
jle 0x6fc94994
test ebx, ebx
js 0x6fc92665
cmp ebx, ecx
cmovle ecx, ebx
mov esi, ecx
movzx ecx, byte [esp + 0x9c]
mov ebx, esi
mov edi, dword [esp + 0x68]
mov eax, dword [esp + 0x18]
sub ecx, ebx
mov byte [edi], cl
add byte [eax + 7], bl
mov eax, dword [esp + 0x34]
test eax, eax
je 0x6fc928b3
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0xa0]
mov ecx, dword [esp + 0x1c]
mov esi, dword [esp + 0xa4]
movzx ebx, byte [eax + edx + 0x1ff]
add ecx, 2
cmp ebx, ecx
movzx ebx, byte [eax + esi + 0x1ff]
setg dl
mov ebp, edx
cmp ecx, ebx
setl bl
mov edi, ebx
mov ebx, edx
mov edx, dword [esp + 0xa8]
or edi, ebx
movzx ebx, byte [eax + edx + 0x1ff]
mov edx, edi
cmp ecx, ebx
setl bl
mov esi, ebx
or esi, edx
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x1dc], ebx
mov ebx, dword [esp + 0xac]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
mov edi, ebx
or edi, esi
mov ebx, edi
movzx esi, bl
mov dword [esp + 0xa0], esi
mov esi, dword [esp + 0x6c]
movzx esi, byte [eax + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, edi
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0x6c], ebx
mov ebx, dword [esp + 0xb0]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
mov edi, ebx
or edi, esi
mov ebx, edi
movzx esi, bl
mov dword [esp + 0xa4], esi
mov esi, dword [esp + 0xb4]
movzx esi, byte [eax + esi + 0x1ff]
cmp ecx, esi
setl bl
mov esi, ebx
or esi, edi
mov ebx, esi
movzx ebx, bl
mov dword [esp + 0xa8], ebx
mov ebx, dword [esp + 0xb8]
movzx ebx, byte [eax + ebx + 0x1ff]
cmp ecx, ebx
setl bl
or ebx, esi
movzx esi, bl
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x40]
sub esi, dword [esp + 0x50]
movzx eax, byte [eax + esi + 0x2fe]
cmp ecx, eax
setl al
or eax, ebx
test dl, dl
movzx ecx, al
mov eax, dword [esp + 0x28]
lea ebx, [eax + eax]
mov eax, dword [esp + 0x30]
lea esi, [eax + eax]
je 0x6fc93f30
movzx eax, byte [esp + 0x1db]
mov edi, dword [esp + 0x8c]
mov byte [edi], al
mov eax, dword [esp + 0x1dc]
test eax, eax
jne 0x6fc94905
mov eax, dword [esp + 0x94]
add eax, dword [esp + 0x44]
shr eax, 1
mov edi, dword [esp + 0x78]
mov byte [edi], al
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc94830
movzx eax, byte [esp + 0x1d8]
mov edx, dword [esp + 0x6c]
mov edi, dword [esp + 0x7c]
test edx, edx
mov byte [edi], al
je 0x6fc9485e
movzx eax, byte [esp + 0x9c]
mov edi, dword [esp + 0x68]
mov byte [edi], al
mov eax, dword [esp + 0xa4]
test eax, eax
je 0x6fc948c3
movzx eax, byte [esp + 0x1d9]
mov edi, dword [esp + 0x18]
mov byte [edi + 7], al
mov eax, dword [esp + 0xa8]
test eax, eax
je 0x6fc948a4
movzx eax, byte [esp + 0xd4]
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x80]
test ebx, ebx
mov byte [edi], al
je 0x6fc94880
movzx eax, byte [esp + 0xd8]
mov edi, dword [esp + 0x84]
test ecx, ecx
mov byte [edi], al
movzx eax, byte [esp + 0xbf]
jne 0x6fc92cc7
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x6fc94032
mov eax, dword [esp + 0x40]
add eax, dword [esp + 0x50]
mov edi, dword [esp + 0x74]
shr eax, 1
mov byte [edi], al
mov eax, dword [esp + 0x200]
add dword [esp + 0x4c], 1
mov edi, dword [esp + 0x4c]
add dword [esp + 0x64], 8
cmp dword [eax + 0x18], edi
jg 0x6fc8fb80
mov eax, dword [esp + 0x1e8]
add dword [esp + 0x1e4], eax
mov eax, dword [esp + 0x200]
add dword [esp + 0x1e0], 1
mov edi, dword [esp + 0x1e0]
cmp dword [eax + 0x20], edi
jg 0x6fc8faa4
mov eax, dword [esp + 0x200]
mov edi, dword [eax + 0x28]
test edi, 8
je 0x6fc92a2c
mov eax, dword [esp + 0x200]
and edi, 0x20
cmp dword [eax + 0x20], 3
jle 0x6fc92a2c
mov eax, dword [esp + 0x60]
mov dword [esp + 0x1c], 1
mov esi, eax
shr esi, 0x1f
add esi, eax
sar esi, 1
lea eax, [esi*8]
mov dword [esp + 0x24], eax
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x200]
mov ecx, dword [eax + 0x18]
mov ebx, eax
mov eax, dword [ebx + 0x14]
mov ebp, dword [esp + 0x20]
mov edx, eax
shr edx, 0x1f
add eax, edx
mov edx, ecx
shr edx, 0x1f
add edx, ecx
sar eax, 1
sar edx, 1
cmp eax, edx
lea ebp, [ebp + eax*8]
jge 0x6fc92a09
lea esi, [esi]
mov edx, dword [esp + 0x1c]
imul edx, dword [ebx + 0x24]
mov dword [esp + 0x18], eax
add edx, eax
imul edx, edx, 0x1e8
add edx, dword [ebx + 0xc]
mov edx, dword [edx + 0xf0]
mov dword [esp + 0x10], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov ecx, dword [ebx + 8]
mov dword [esp + 0x14], edx
mov eax, dword [ecx + 4]
add eax, ebp
mov dword [esp + 4], eax
mov ecx, dword [ebx + 4]
mov dword [esp], ecx
call fcn.6fc89ca0
mov edx, dword [esp + 0x14]
mov dword [esp + 0x10], edi
mov dword [esp + 8], esi
mov dword [esp + 0xc], edx
mov edx, dword [ebx + 8]
mov eax, dword [edx + 8]
add eax, ebp
add ebp, 8
mov dword [esp + 4], eax
mov edx, dword [ebx + 4]
mov dword [esp], edx
call fcn.6fc89ca0
mov ecx, dword [ebx + 0x18]
mov eax, dword [esp + 0x18]
mov edx, ecx
shr edx, 0x1f
add eax, 1
add edx, ecx
sar edx, 1
cmp edx, eax
jg 0x6fc92980
mov eax, dword [esp + 0x24]
add dword [esp + 0x20], eax
mov eax, dword [ebx + 0x20]
add dword [esp + 0x1c], 1
mov edx, eax
shr edx, 0x1f
add eax, edx
sar eax, 1
cmp eax, dword [esp + 0x1c]
jg 0x6fc92958
add esp, 0x1ec
pop ebx
pop esi
pop edi
pop ebp
ret
mov esi, dword [esp + 0x88]
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
mov ebx, esi
mov ebp, dword [esp + 0x54]
sar ebx, 0x1f
and ebx, esi
mov esi, dword [esp + 0x20]
sub ebx, edi
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, edx
sub ecx, eax
add ebx, ecx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edx
mov edx, dword [esp + 0x24]
lea ebx, [esi + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, esi
lea ebx, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, edx
mov edx, dword [esp + 0x40]
add ecx, ebp
mov ebx, ecx
sar ebx, 0x1f
mov esi, ebx
mov ebx, edx
sub ebx, edi
and esi, ecx
mov ecx, ebx
sub esi, ebp
sar ecx, 0x1f
and ecx, ebx
add ecx, edi
mov edi, dword [esp + 0x20]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
mov eax, dword [esp + 0x2c]
add esi, dword [esp + 0x3c]
sub ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, eax
mov eax, dword [esp + 0x3c]
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
mov edi, dword [esp + 0x24]
sub ebx, edi
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edi
mov edi, dword [esp + 0x1c]
sub ecx, ebp
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, ebp
sub ebx, eax
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
sar esi, 0x1f
neg ecx
and esi, ebx
sub ecx, esi
lea ebx, [edi + edi]
cmp ecx, ebx
jge 0x6fc928b3
mov ebx, dword [esp + 0x5c]
mov ecx, eax
mov esi, dword [esp + 0x14]
sub ecx, ebx
movzx ecx, byte [esi + ecx + 0x2fe]
mov esi, edx
cmp edi, ecx
mov ecx, edx
mov edx, dword [esp + 0x50]
cmovle ebx, eax
mov edi, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x5c], ebx
sub ecx, edx
movzx eax, byte [eax + ecx + 0x2fe]
mov ecx, edi
cmp dword [esp + 0x1c], eax
mov eax, edx
mov edx, edi
mov edi, dword [esp + 0x44]
cmovle eax, esi
mov dword [esp + 0x50], eax
mov eax, ebx
add eax, eax
add ebx, eax
shl ecx, 2
lea ecx, [ecx + ebx*2]
mov ebx, dword [esp + 0x2c]
add ecx, dword [esp + 0x58]
add ecx, edi
add ecx, dword [esp + 0x20]
lea ecx, [ebx + ecx + 8]
mov ebx, dword [esp + 0x8c]
sar ecx, 4
mov byte [ebx], cl
mov ebx, dword [esp + 0x5c]
mov ecx, edx
add ecx, ecx
add eax, ecx
add eax, dword [esp + 0x58]
lea ebx, [ecx + ebx*4]
mov ecx, dword [esp + 0x24]
lea ebx, [ebx + ebp*4]
mov ebp, dword [esp + 0x38]
add ebx, edi
mov edi, dword [esp + 0x28]
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x28]
add ebx, ebp
add eax, ebp
mov ebp, dword [esp + 0x48]
add ebx, dword [esp + 0x2c]
lea ebx, [edi + ebx + 8]
mov edi, dword [esp + 0x78]
add eax, ebp
sar ebx, 4
add eax, ecx
lea ecx, [ecx + ecx]
mov byte [edi], bl
mov ebx, dword [esp + 0x30]
mov edi, dword [esp + 0x7c]
lea eax, [ebx + eax + 8]
sar eax, 4
mov byte [edi], al
mov eax, dword [esp + 0x5c]
mov edi, dword [esp + 0x68]
add eax, edx
mov edx, dword [esp + 0x20]
add eax, dword [esp + 0x58]
add eax, dword [esp + 0x44]
lea eax, [eax + edx*4]
mov edx, ebx
add eax, ebp
mov ebp, esi
add eax, ecx
add eax, ebx
mov ebx, edx
lea eax, [esi + eax + 8]
add ebx, ebx
sar eax, 4
mov byte [edi], al
mov edx, dword [esp + 0x90]
mov eax, dword [esp + 0x44]
add edx, dword [esp + 0x58]
mov edi, dword [esp + 0x38]
add eax, edx
mov edx, dword [esp + 0x2c]
add eax, edi
lea eax, [eax + edx*4]
mov edx, dword [esp + 0x18]
add eax, ecx
add eax, ebx
add eax, esi
mov esi, dword [esp + 0x50]
lea eax, [esi + eax + 8]
sar eax, 4
mov byte [edx + 7], al
mov eax, dword [esp + 0x94]
lea edx, [ebp + ebp]
add eax, dword [esp + 0x44]
add esi, esi
add eax, edi
mov edi, dword [esp + 0x28]
add eax, dword [esp + 0x48]
lea eax, [eax + edi*4]
mov edi, dword [esp + 0x80]
add eax, ebx
add eax, edx
lea eax, [eax + esi + 8]
sar eax, 4
mov byte [edi], al
mov eax, dword [esp + 0x98]
mov edi, dword [esp + 0x30]
add eax, dword [esp + 0x38]
add eax, dword [esp + 0x48]
add eax, ecx
lea eax, [eax + edi*4]
mov edi, dword [esp + 0x50]
add edx, eax
lea eax, [edx + edi*4 + 8]
mov edx, dword [esp + 0x84]
add esi, edi
sar eax, 4
mov byte [edx], al
mov eax, dword [esp + 0x70]
add eax, dword [esp + 0x48]
add eax, ecx
add eax, ebx
lea eax, [eax + ebp*4]
lea eax, [eax + esi*2 + 8]
sar eax, 4
mov edi, dword [esp + 0x74]
mov byte [edi], al
jmp 0x6fc928b3
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x58]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc92315
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x54]
cmovle esi, ebx
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x44]
mov edx, dword [esp + 0x48]
cmovle ecx, esi
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x40]
lea esi, [ecx + ecx]
mov dword [esp + 0x3c], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
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 + 0x40]
lea ebx, [ecx + ecx]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x38]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x50]
mov byte [edx], cl
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x58]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x38]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x40]
add ecx, dword [esp + 0x44]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x38]
mov edx, ebx
add ecx, dword [esp + 0x44]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x54]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx + 6], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x50]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ebp, ebp
add ecx, edi
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc92315
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x58]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc91d64
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x54]
cmovle esi, ebx
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x48]
cmovle ecx, esi
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x40]
lea esi, [ecx + ecx]
mov dword [esp + 0x3c], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
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 + 0x40]
lea ebx, [ecx + ecx]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x38]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x44]
mov byte [edx], cl
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x58]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x38]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x40]
add ecx, dword [esp + 0x50]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x38]
mov edx, ebx
add ecx, dword [esp + 0x50]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x54]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx + 5], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x44]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ebp, ebp
add ecx, edi
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc91d64
mov esi, dword [esp + 0x3c]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x58]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc917b3
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x54]
cmovle esi, ebx
mov dword [esp + 0x40], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x44]
cmovle ecx, esi
mov dword [esp + 0x54], ecx
mov ecx, dword [esp + 0x40]
lea edx, [ecx + ecx]
lea esi, [edx + ecx]
mov ecx, ebx
mov dword [esp + 0x3c], edx
mov edx, dword [esp + 0x48]
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
add ebx, eax
mov dword [esp + 0x30], ecx
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x40]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x38]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x50]
mov byte [edx], cl
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x58]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x38]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x40]
add ecx, dword [esp + 0x44]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x38]
mov edx, ebx
add ecx, dword [esp + 0x44]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x54]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx + 4], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x50]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ecx, edi
add ebp, ebp
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc917b3
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc91200
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x44]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x58]
cmovle esi, ebx
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x48]
cmovle ecx, esi
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x44]
lea esi, [ecx + ecx]
mov dword [esp + 0x40], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
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 + 0x44]
lea ebx, [ecx + ecx]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x3c]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x54]
mov byte [edx], cl
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x38]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x3c]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x50]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x3c]
mov edx, ebx
add ecx, dword [esp + 0x50]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x58]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx + 3], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x54]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ebp, ebp
add ecx, edi
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc91200
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc906d0
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x44]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x58]
cmovle esi, ebx
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x48]
cmovle ecx, esi
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x44]
lea edx, [ecx + ecx]
lea esi, [edx + ecx]
mov ecx, ebx
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x50]
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
add ebx, eax
mov dword [esp + 0x30], ecx
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x44]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x3c]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x54]
mov byte [edx], cl
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x38]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x3c]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x50]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x48]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x3c]
mov edx, ebx
add ecx, dword [esp + 0x48]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x58]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx + 1], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x54]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ecx, edi
add ebp, ebp
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc906d0
mov esi, dword [esp + 0x44]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x3c]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc90138
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x38]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x58]
cmovle esi, ebx
mov dword [esp + 0x38], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x50]
cmovle ecx, esi
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x38]
lea esi, [ecx + ecx]
mov dword [esp + 0x44], esi
add esi, ecx
mov ecx, ebx
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
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 + 0x38]
lea ebx, [ecx + ecx]
mov dword [esp + 0x30], ecx
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x40]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x54]
mov byte [edx], cl
mov ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x3c]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x40]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x50]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x48]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x40]
mov edx, ebx
add ecx, dword [esp + 0x48]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x58]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x54]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ebp, ebp
add ecx, edi
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x40]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc90138
mov esi, dword [esp + 0x40]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x38]
mov ebx, esi
sar ebx, 0x1f
and ebx, esi
sub ebx, dword [esp + 0x2c]
add ebx, eax
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
sub ecx, eax
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, [edx + ecx]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
mov ebx, dword [esp + 0x20]
sub ecx, edx
add ecx, ebx
mov esi, ecx
sar esi, 0x1f
and esi, ecx
sub esi, ebx
mov ebx, dword [esp + 0x24]
sub ebx, dword [esp + 0x2c]
add esi, dword [esp + 0x30]
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, dword [esp + 0x2c]
sub ecx, eax
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, eax
sub ebx, ebp
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, ebp
sub ecx, edi
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
add ebx, edi
sub ebx, edx
mov ecx, ebx
sar ecx, 0x1f
and ecx, ebx
add ecx, edx
mov edx, dword [esp + 0x20]
sub ecx, edx
mov ebx, ecx
sar ebx, 0x1f
and ebx, ecx
mov ecx, esi
add ebx, edx
mov edx, dword [esp + 0x1c]
sub ebx, dword [esp + 0x30]
sar ecx, 0x1f
and ecx, esi
mov esi, ebx
neg ecx
sar esi, 0x1f
and esi, ebx
sub ecx, esi
lea ebx, [edx + edx]
cmp ecx, ebx
jge 0x6fc90c66
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x44]
mov eax, dword [esp + 0x14]
mov dword [esp + 0x30], edx
mov ecx, ebx
sub ecx, esi
movzx ecx, byte [eax + ecx + 0x2fe]
mov eax, dword [esp + 0x14]
cmp edx, ecx
mov edx, dword [esp + 0x58]
cmovle esi, ebx
mov dword [esp + 0x44], esi
mov esi, dword [esp + 0x24]
mov ecx, esi
sub ecx, edx
movzx ecx, byte [eax + ecx + 0x2fe]
cmp dword [esp + 0x30], ecx
mov ecx, edx
mov eax, dword [esp + 0x48]
cmovle ecx, esi
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x44]
lea edx, [ecx + ecx]
lea esi, [edx + ecx]
mov ecx, ebx
mov dword [esp + 0x40], edx
mov edx, dword [esp + 0x50]
lea ebx, [ebx*4]
lea ebx, [ebx + esi*2]
mov esi, dword [esp + 0x84]
add ebx, eax
mov dword [esp + 0x30], ecx
add ebx, edx
add ebx, edi
lea ebx, [ebp + ebx + 8]
sar ebx, 4
mov byte [esi], bl
mov esi, dword [esp + 0x44]
lea ebx, [ecx + ecx]
mov ecx, dword [esp + 0x20]
lea esi, [ebx + esi*4]
lea esi, [esi + ecx*4]
mov ecx, dword [esp + 0x28]
add esi, edx
mov edx, dword [esp + 0x74]
add esi, dword [esp + 0x3c]
add esi, ebp
lea esi, [ecx + esi + 8]
sar esi, 4
mov ecx, esi
mov esi, dword [esp + 0x54]
mov byte [edx], cl
mov ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x78]
add ecx, ebx
mov ebx, dword [esp + 0x38]
add ecx, eax
mov eax, dword [esp + 0x2c]
lea ecx, [ecx + ebx*4]
mov ebx, dword [esp + 0x28]
add ecx, dword [esp + 0x3c]
add ecx, esi
add ecx, ebx
lea ecx, [eax + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea edx, [ebx + ebx]
mov dword [esp + 0x20], edx
mov ebx, dword [esp + 0x50]
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x48]
add ecx, ebx
lea ecx, [ecx + edi*4]
mov edi, dword [esp + 0x24]
add ecx, esi
add ecx, edx
mov edx, dword [esp + 0x68]
add ecx, eax
lea ecx, [edi + ecx + 8]
sar ecx, 4
mov byte [edx], cl
lea esi, [eax + eax]
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x2c], esi
mov esi, dword [esp + 0x3c]
mov edx, ebx
add ecx, dword [esp + 0x48]
add ecx, ebx
mov ebx, dword [esp + 0x18]
add ecx, esi
lea ecx, [ecx + ebp*4]
mov ebp, dword [esp + 0x58]
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
add ecx, edi
add edi, edi
lea ecx, [ebp + ecx + 8]
sar ecx, 4
mov byte [ebx + 2], cl
mov ecx, dword [esp + 0x90]
mov ebx, ebp
add ecx, edx
mov edx, dword [esp + 0x54]
add ecx, esi
mov esi, dword [esp + 0x28]
add ecx, edx
lea ecx, [ecx + esi*4]
mov esi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
add ecx, edi
add ebp, ebp
lea ecx, [ecx + ebp + 8]
add ebp, ebx
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x3c]
mov esi, dword [esp + 0x80]
add ecx, edx
add ecx, dword [esp + 0x20]
lea ecx, [ecx + eax*4]
add edi, ecx
lea ecx, [edi + ebx*4 + 8]
mov edi, dword [esp + 0x24]
sar ecx, 4
mov byte [esi], cl
mov ecx, dword [esp + 0x6c]
add ecx, edx
add ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x2c]
lea ecx, [ecx + edi*4]
lea ecx, [ecx + ebp*2 + 8]
sar ecx, 4
mov edi, dword [esp + 0x70]
mov byte [edi], cl
jmp 0x6fc90c66
mov eax, ebp
test al, al
jne 0x6fc948e0
mov eax, dword [esp + 0x1dc]
test eax, eax
jne 0x6fc94ff6
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x5c]
lea eax, [eax + edx*2]
mov edx, dword [esp + 0x8c]
add eax, dword [esp + 0x54]
sar eax, 2
mov byte [edx], al
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95040
mov eax, dword [esp + 0x58]
add eax, dword [esp + 0x3c]
mov edi, dword [esp + 0x78]
add eax, dword [esp + 0x24]
sar eax, 2
mov byte [edi], al
mov edi, dword [esp + 0x6c]
test edi, edi
jne 0x6fc95020
mov eax, dword [esp + 0x54]
add eax, dword [esp + 0x44]
mov edi, dword [esp + 0x7c]
add eax, dword [esp + 0x20]
sar eax, 2
mov byte [edi], al
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc950c0
mov eax, dword [esp + 0x24]
add eax, dword [esp + 0x38]
mov edi, dword [esp + 0x68]
add eax, dword [esp + 0x2c]
sar eax, 2
mov byte [edi], al
mov eax, dword [esp + 0xa8]
test eax, eax
jne 0x6fc950a2
mov eax, dword [esp + 0x20]
add eax, dword [esp + 0x48]
mov edi, dword [esp + 0x18]
add eax, dword [esp + 0x28]
sar eax, 2
mov byte [edi + 7], al
mov edi, dword [esp + 0x1c]
test edi, edi
jne 0x6fc95081
mov eax, dword [esp + 0x2c]
mov edi, dword [esp + 0x80]
add eax, ebx
add eax, dword [esp + 0x30]
sar eax, 2
mov byte [edi], al
test ecx, ecx
jne 0x6fc95060
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x84]
add eax, esi
add eax, dword [esp + 0x40]
sar eax, 2
mov byte [edi], al
mov eax, dword [esp + 0x30]
mov edi, dword [esp + 0x40]
lea eax, [eax + edi*2]
add eax, dword [esp + 0x50]
shr eax, 2
jmp 0x6fc92cc7
cmp byte [esp + 0x1db], 0
jne 0x6fc94f60
mov eax, dword [esp + 0x100]
test eax, eax
jne 0x6fc955e2
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x40]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc95628
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x58]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc95608
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x9c]
test eax, eax
jne 0x6fc95732
mov ecx, dword [esp + 0x58]
add ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95714
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax + 6], cl
mov edi, dword [esp + 0xa4]
test edi, edi
jne 0x6fc956f6
lea ecx, [ebp + esi]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc956d0
mov ecx, dword [esp + 0xa8]
add ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x54]
shr ecx, 2
jmp 0x6fc92f63
cmp byte [esp + 0x1db], 0
jne 0x6fc94b22
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc95232
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x44]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc95582
mov ecx, dword [esp + 0x50]
add ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x38]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc95562
mov ecx, dword [esp + 0x48]
add ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x6fc953a4
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95386
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax + 3], cl
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc95368
lea ecx, [ebp + esi]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc95342
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x58]
shr ecx, 2
jmp 0x6fc93741
cmp byte [esp + 0x1db], 0
jne 0x6fc94f92
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc95450
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x40]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc95150
mov ecx, dword [esp + 0x44]
add ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x58]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc95130
mov ecx, dword [esp + 0x48]
add ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x6fc95430
mov ecx, dword [esp + 0x58]
add ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95410
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax + 4], cl
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc953f0
lea ecx, [ebp + esi]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc953c4
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x54]
shr ecx, 2
jmp 0x6fc934a2
cmp byte [esp + 0x1db], 0
jne 0x6fc94e44
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc95476
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x44]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc954c0
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x38]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc954a0
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x6fc95542
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95524
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax + 1], cl
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc95506
lea ecx, [ebp + esi]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc954e0
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x58]
shr ecx, 2
jmp 0x6fc939e2
cmp byte [esp + 0x1db], 0
jne 0x6fc94fc4
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc950e0
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x44]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc95190
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x38]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc95170
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x6fc95212
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc951f4
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax + 2], cl
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc951d6
lea ecx, [ebp + esi]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc951b0
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x58]
shr ecx, 2
jmp 0x6fc93f22
cmp byte [esp + 0x1db], 0
jne 0x6fc94e12
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc95258
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x40]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc952a0
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x58]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc95280
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x6fc95322
mov ecx, dword [esp + 0x38]
add ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95304
mov ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax + 5], cl
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc952e6
lea ecx, [esi + ebp]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc952c0
mov ecx, dword [esp + 0xa8]
add ecx, dword [esp + 0x28]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x54]
shr ecx, 2
jmp 0x6fc93201
cmp byte [esp + 0x1db], 0
jne 0x6fc94e76
mov edx, dword [esp + 0x100]
test edx, edx
jne 0x6fc95106
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
add ecx, dword [esp + 0x20]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0x98]
test eax, eax
jne 0x6fc955c2
mov ecx, dword [esp + 0x30]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x74]
add ecx, dword [esp + 0x3c]
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x6fc955a2
mov ecx, dword [esp + 0x20]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
add ecx, edi
sar ecx, 2
mov byte [edx], cl
mov edx, dword [esp + 0x9c]
test edx, edx
jne 0x6fc956b0
mov ecx, dword [esp + 0x3c]
add ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x68]
add ecx, ebp
sar ecx, 2
mov byte [edx], cl
mov eax, dword [esp + 0xa0]
test eax, eax
jne 0x6fc95690
mov ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
add ecx, edi
add ecx, dword [esp + 0x28]
sar ecx, 2
mov byte [eax], cl
mov eax, dword [esp + 0xa4]
test eax, eax
jne 0x6fc95670
lea ecx, [ebp + esi]
mov edi, dword [esp + 0x7c]
add ecx, dword [esp + 0x2c]
sar ecx, 2
mov byte [edi], cl
test ebx, ebx
jne 0x6fc95648
mov ecx, dword [esp + 0x28]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
add ecx, dword [esp + 0x24]
sar ecx, 2
mov byte [edi], cl
mov edi, dword [esp + 0x2c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
add ecx, dword [esp + 0x58]
shr ecx, 2
jmp 0x6fc93c80
mov ebp, dword [esp + 0x1dc]
test ebp, ebp
je 0x6fc93f88
mov eax, dword [esp + 0x98]
mov edx, dword [esp + 0x6c]
add eax, dword [esp + 0x38]
mov edi, dword [esp + 0x7c]
shr eax, 1
test edx, edx
mov byte [edi], al
jne 0x6fc9281e
mov eax, dword [esp + 0xa0]
test eax, eax
je 0x6fc93fa9
mov eax, dword [esp + 0x70]
add eax, dword [esp + 0x48]
shr eax, 1
jmp 0x6fc92826
mov edx, dword [esp + 0xa8]
test edx, edx
je 0x6fc94014
mov eax, dword [esp + 0x88]
mov edi, dword [esp + 0x40]
lea eax, [eax + edi*2]
shr eax, 1
jmp 0x6fc9287e
mov ebp, dword [esp + 0xa4]
test ebp, ebp
je 0x6fc93ff2
mov eax, dword [esp + 0xe0]
add eax, esi
shr eax, 1
jmp 0x6fc92861
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x6fc93fcd
mov eax, dword [esp + 0xdc]
add eax, ebx
shr eax, 1
jmp 0x6fc92843
mov eax, dword [esp + 0x90]
add eax, dword [esp + 0x58]
mov edi, dword [esp + 0x8c]
sar eax, 1
mov byte [edi], al
mov eax, dword [esp + 0x1dc]
test eax, eax
je 0x6fc93f64
movzx eax, byte [esp + 0x1da]
jmp 0x6fc927ef
test ebx, ebx
jg 0x6fc920a5
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc920a5
test ebx, ebx
jg 0x6fc909f6
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc909f6
test ebx, ebx
jg 0x6fc8feca
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc8feca
test ebx, ebx
jg 0x6fc90460
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc90460
test ebx, ebx
jg 0x6fc91af4
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc91af4
test ebx, ebx
jg 0x6fc91543
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc91543
test ebx, ebx
jg 0x6fc92665
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc92665
test ebx, ebx
jg 0x6fc90f8c
cmp ebx, ecx
cmovge ecx, ebx
mov esi, ecx
jmp 0x6fc90f8c
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc941cc
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x5c]
add ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x78]
shr ecx, 1
test eax, eax
mov byte [edx], cl
jne 0x6fc91164
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x6fc941eb
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
shr ecx, 1
jmp 0x6fc9116c
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x6fc94250
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc911c4
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc94230
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc911a7
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc9420d
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc91189
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc942ec
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x5c]
add ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x78]
shr ecx, 1
test eax, eax
mov byte [edx], cl
jne 0x6fc9171b
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x6fc9430b
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x50]
shr ecx, 1
jmp 0x6fc91723
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x6fc94370
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc9177b
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc94350
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc9175e
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc9432d
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc91740
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc941a8
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc91135
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc9464c
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x5c]
add ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x78]
shr ecx, 1
test eax, eax
mov byte [edx], cl
jne 0x6fc91ccc
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x6fc9466b
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x44]
shr ecx, 1
jmp 0x6fc91cd4
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x6fc946cf
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc91d2c
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc946b0
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc91d0f
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc9468d
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc91cf1
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc9476c
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x5c]
add ecx, dword [esp + 0x40]
mov edx, dword [esp + 0x78]
shr ecx, 1
test eax, eax
mov byte [edx], cl
jne 0x6fc900a1
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x6fc9478b
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
shr ecx, 1
jmp 0x6fc900a9
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x6fc947ef
mov edi, dword [esp + 0x44]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc90100
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc947cf
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc900e3
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc947ad
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc900c6
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc9440c
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x5c]
add ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x78]
shr ecx, 1
test eax, eax
mov byte [edx], cl
jne 0x6fc90638
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x6fc9442b
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
shr ecx, 1
jmp 0x6fc90640
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x6fc94490
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc90698
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc94470
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc9067b
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc9444d
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc9065d
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc9452c
mov ecx, dword [esp + 0x94]
mov eax, dword [esp + 0x5c]
add ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x78]
shr ecx, 1
test eax, eax
mov byte [edx], cl
jne 0x6fc90bce
mov ecx, dword [esp + 0x98]
test ecx, ecx
je 0x6fc9454b
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
shr ecx, 1
jmp 0x6fc90bd6
mov esi, dword [esp + 0xa0]
test esi, esi
je 0x6fc945b0
mov edi, dword [esp + 0x40]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc90c2e
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc94590
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc90c11
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc9456d
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc90bf3
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc94628
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc91c9d
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc943e8
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc90609
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc94748
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc90072
mov eax, dword [esp + 0x100]
test eax, eax
je 0x6fc940ac
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov edx, dword [esp + 0x78]
shr ecx, 1
mov byte [edx], cl
mov ecx, dword [esp + 0x5c]
test ecx, ecx
jne 0x6fc9227d
mov edx, dword [esp + 0x98]
test edx, edx
je 0x6fc940cb
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x50]
shr ecx, 1
jmp 0x6fc92285
mov edx, dword [esp + 0xa0]
test edx, edx
je 0x6fc94130
mov edi, dword [esp + 0x3c]
mov edx, dword [esp + 0x24]
lea ecx, [edi + edx*2]
shr ecx, 1
jmp 0x6fc922dd
mov eax, dword [esp + 0x9c]
test eax, eax
je 0x6fc94110
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
shr ecx, 1
jmp 0x6fc922c0
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x6fc940ed
mov edi, dword [esp + 0xd4]
lea ecx, [edi + esi]
shr ecx, 1
jmp 0x6fc922a2
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc94088
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc9224e
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc942c8
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc916ec
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x100]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x84]
sar ecx, 1
test eax, eax
mov byte [edx], cl
je 0x6fc94508
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc90b9f
mov edx, dword [esp + 0x3c]
mov eax, dword [esp + 0x100]
lea eax, [eax + edx*2]
mov edx, dword [esp + 0x8c]
sar eax, 1
mov byte [edx], al
movzx eax, byte [esp + 0x1da]
jmp 0x6fc927ef
mov eax, dword [esp + 0x94]
add eax, dword [esp + 0x44]
mov edi, dword [esp + 0x7c]
sar eax, 1
mov byte [edi], al
movzx eax, byte [esp + 0x9c]
jmp 0x6fc92826
mov eax, dword [esp + 0x90]
add eax, dword [esp + 0x58]
mov edi, dword [esp + 0x78]
sar eax, 1
mov byte [edi], al
movzx eax, byte [esp + 0x1d8]
jmp 0x6fc9280c
mov eax, dword [esp + 0xe0]
mov edi, dword [esp + 0x84]
add eax, esi
sar eax, 1
mov byte [edi], al
movzx eax, byte [esp + 0xbf]
jmp 0x6fc92cc7
mov eax, dword [esp + 0xdc]
mov edi, dword [esp + 0x80]
add eax, ebx
sar eax, 1
mov byte [edi], al
movzx eax, byte [esp + 0xd8]
jmp 0x6fc9287e
mov eax, dword [esp + 0x70]
add eax, dword [esp + 0x48]
mov edi, dword [esp + 0x18]
sar eax, 1
mov byte [edi + 7], al
movzx eax, byte [esp + 0xd4]
jmp 0x6fc92861
mov eax, dword [esp + 0x98]
add eax, dword [esp + 0x38]
mov edi, dword [esp + 0x68]
sar eax, 1
mov byte [edi], al
movzx eax, byte [esp + 0x1d9]
jmp 0x6fc92843
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc90b9f
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc90072
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc91723
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc91709
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc90bd6
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc90bbc
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc93f22
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc90c2e
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax + 2], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc90c11
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc90bf3
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc91135
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc91c9d
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc91cd4
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc91cba
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc93201
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc91d2c
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x44]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax + 5], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc91d0f
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc91cf1
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc93741
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc911c4
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax + 3], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc911a7
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc91189
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc934a2
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc9177b
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax + 4], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc9175e
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc91740
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc916ec
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc90609
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc90640
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc90626
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc939e2
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc90698
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax + 1], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc9067b
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc9065d
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc9116c
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc91152
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc900a9
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc9008f
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0xe0]
lea ecx, [ecx + eax*2]
mov eax, dword [esp + 0x84]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0xdc]
jmp 0x6fc9224e
mov ecx, dword [esp + 0x90]
add ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x78]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0x88]
jmp 0x6fc92285
mov ecx, dword [esp + 0x8c]
add ecx, dword [esp + 0x44]
mov edx, dword [esp + 0x74]
sar ecx, 1
mov byte [edx], cl
movzx ecx, byte [esp + 0xb8]
jmp 0x6fc9226b
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc93c80
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc90100
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x54]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc900e3
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x40]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc900c6
mov ecx, dword [esp + 0xd8]
add ecx, dword [esp + 0xa8]
mov edi, dword [esp + 0x80]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xb4]
jmp 0x6fc92f63
mov ecx, dword [esp + 0xd4]
mov edi, dword [esp + 0x7c]
add ecx, esi
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0x1d9]
jmp 0x6fc922dd
mov ecx, dword [esp + 0x6c]
add ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x18]
sar ecx, 1
mov byte [eax + 6], cl
movzx ecx, byte [esp + 0x1d8]
jmp 0x6fc922c0
mov ecx, dword [esp + 0x94]
add ecx, dword [esp + 0x38]
mov edi, dword [esp + 0x68]
sar ecx, 1
mov byte [edi], cl
movzx ecx, byte [esp + 0xbf]
jmp 0x6fc922a2