Function at 0x6c407040
Capabilities:
Enumerate pe sections

Disassembly:
push ebp
mov ebp, eax
push edi
push esi
push ebx
sub esp, 0x28
mov ebx, dword [esp + 0x40]
lea eax, [ebx + ebx]
sub ecx, eax
movzx eax, byte [ecx - 2]
movzx esi, byte [ecx + 3]
movzx edi, byte [ecx]
add esi, eax
movzx eax, byte [ecx + 1]
add eax, edi
movzx edi, byte [ecx - 1]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movzx esi, byte [ecx + 2]
add esi, edi
lea esi, [esi + esi*4]
sub eax, esi
mov word [edx], ax
movzx eax, byte [ecx - 1]
movzx esi, byte [ecx + 4]
movzx edi, byte [ecx + 1]
add esi, eax
movzx eax, byte [ecx + 2]
add eax, edi
movzx edi, byte [ecx]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movzx esi, byte [ecx + 3]
add esi, edi
lea esi, [esi + esi*4]
sub eax, esi
mov word [edx + 2], ax
movzx eax, byte [ecx]
movzx esi, byte [ecx + 5]
movzx edi, byte [ecx + 2]
add esi, eax
movzx eax, byte [ecx + 3]
add eax, edi
movzx edi, byte [ecx + 1]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movzx esi, byte [ecx + 4]
add esi, edi
lea esi, [esi + esi*4]
sub eax, esi
mov word [edx + 4], ax
movzx eax, byte [ecx + 1]
movzx esi, byte [ecx + 6]
movzx edi, byte [ecx + 3]
add esi, eax
movzx eax, byte [ecx + 4]
add eax, edi
movzx edi, byte [ecx + 2]
lea eax, [eax + eax*4]
lea eax, [esi + eax*4]
movzx esi, byte [ecx + 5]
add esi, edi
lea esi, [esi + esi*4]
sub eax, esi
mov word [edx + 6], ax
lea eax, [ecx + ebx]
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 8], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0xa], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0xc], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
add eax, ebx
mov word [edx + 0xe], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x10], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x12], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x14], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add eax, ebx
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x16], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x18], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x1a], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x1c], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add esi, edi
add eax, ebx
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x1e], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x20], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x22], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x24], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add eax, ebx
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x26], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x28], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x2a], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x2c], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add eax, ebx
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x2e], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x30], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x32], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x34], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add eax, ebx
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x36], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx edi, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, edi
movzx edi, byte [eax - 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 2]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x38], cx
movzx ecx, byte [eax - 1]
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x3a], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x3c], cx
movzx ecx, byte [eax + 1]
movzx esi, byte [eax + 6]
movzx edi, byte [eax + 3]
add esi, ecx
movzx ecx, byte [eax + 4]
add ecx, edi
movzx edi, byte [eax + 2]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 5]
add eax, ebx
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x3e], cx
movzx ecx, byte [eax - 2]
movzx esi, byte [eax + 3]
movzx ebx, byte [eax]
add esi, ecx
movzx ecx, byte [eax + 1]
add ecx, ebx
lea ecx, [ecx + ecx*4]
lea ebx, [esi + ecx*4]
movzx esi, byte [eax - 1]
movzx ecx, byte [eax + 2]
add ecx, esi
lea ecx, [ecx + ecx*4]
sub ebx, ecx
mov word [edx + 0x40], bx
movzx ecx, byte [eax - 1]
movsx ebx, bx
movzx esi, byte [eax + 4]
movzx edi, byte [eax + 1]
add esi, ecx
movzx ecx, byte [eax + 2]
add ecx, edi
movzx edi, byte [eax]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 3]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x42], cx
movzx ecx, byte [eax]
movzx esi, byte [eax + 5]
movzx edi, byte [eax + 2]
mov dword [esp + 0x14], ebx
add esi, ecx
movzx ecx, byte [eax + 3]
add ecx, edi
movzx edi, byte [eax + 1]
lea ecx, [ecx + ecx*4]
lea ecx, [esi + ecx*4]
movzx esi, byte [eax + 4]
add esi, edi
lea esi, [esi + esi*4]
sub ecx, esi
mov word [edx + 0x44], cx
movzx esi, byte [eax + 6]
movzx ecx, byte [eax + 1]
movzx edi, byte [eax + 3]
add ecx, esi
movzx esi, byte [eax + 4]
add esi, edi
movsx edi, word [edx + 0x10]
lea esi, [esi + esi*4]
lea ecx, [ecx + esi*4]
movzx esi, byte [eax + 2]
movzx eax, byte [eax + 5]
mov dword [esp + 8], edi
movsx edi, word [edx + 0x30]
mov ebx, dword [esp + 8]
add eax, esi
movsx esi, word [edx + 8]
lea eax, [eax + eax*4]
sub ecx, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0xc], edi
movsx edi, word [edx + 0x38]
mov word [edx + 0x46], cx
movsx ecx, word [edx + 0x28]
add eax, eax
mov dword [esp + 0x1c], eax
add eax, dword [esp + 0x3c]
mov dword [esp + 0x10], edi
mov dword [esp + 0x20], eax
movsx eax, word [edx + 0x18]
mov dword [esp + 4], eax
movsx eax, word [edx + 0x20]
add ebx, dword [esp + 4]
lea edi, [ebx + ebx*4]
lea ebx, [esi + eax]
lea ebx, [ebx + ebx*4]
neg ebx
lea edi, [ebx + edi*4]
movsx ebx, word [edx]
add ebx, ecx
lea ebx, [edi + ebx + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c407712
neg ebx
sar ebx, 0x1f
mov byte [ebp], bl
mov ebx, dword [esp + 0x3c]
add esi, dword [esp + 0xc]
add ebx, ebp
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 4]
add ebx, eax
lea ebx, [ebx + ebx*4]
mov dword [esp + 0x18], ebx
mov ebx, dword [esp + 8]
mov edi, dword [esp + 0x18]
add ebx, ecx
lea ebx, [ebx + ebx*4]
neg ebx
lea ebx, [ebx + edi*4]
lea ebx, [ebx + esi + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c407759
neg ebx
sar ebx, 0x1f
mov esi, dword [esp + 0x24]
mov byte [esi], bl
lea ebx, [eax + ecx]
mov esi, dword [esp + 0x1c]
lea edi, [ebx + ebx*4]
mov ebx, dword [esp + 4]
add ebx, dword [esp + 0xc]
add esi, ebp
lea ebx, [ebx + ebx*4]
neg ebx
lea ebx, [ebx + edi*4]
mov edi, dword [esp + 8]
add edi, dword [esp + 0x10]
lea ebx, [ebx + edi + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c40779a
neg ebx
sar ebx, 0x1f
add eax, dword [esp + 0x10]
add ecx, dword [esp + 0xc]
mov byte [esi], bl
mov ebx, dword [esp + 4]
add ebx, dword [esp + 0x14]
lea eax, [eax + eax*4]
mov esi, dword [esp + 0x20]
neg eax
lea ecx, [ecx + ecx*4]
lea eax, [eax + ecx*4]
lea eax, [eax + ebx + 0x200]
add esi, ebp
sar eax, 0xa
test eax, 0xffffff00
je 0x6c4077d3
neg eax
sar eax, 0x1f
mov byte [esi], al
movsx ebx, word [edx + 0x1a]
lea edi, [ebp + 1]
movsx eax, word [edx + 0x12]
mov dword [esp + 8], edi
movsx edi, word [edx + 0x32]
movsx esi, word [edx + 0xa]
mov dword [esp + 4], ebx
movsx ebx, word [edx + 0x3a]
mov dword [esp + 0xc], eax
movsx eax, word [edx + 0x22]
mov dword [esp + 0x10], edi
movsx edi, word [edx + 0x42]
movsx ecx, word [edx + 0x2a]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xc]
add ebx, dword [esp + 4]
mov dword [esp + 0x18], edi
lea edi, [ebx + ebx*4]
lea ebx, [esi + eax]
lea ebx, [ebx + ebx*4]
neg ebx
lea edi, [ebx + edi*4]
movsx ebx, word [edx + 2]
add ebx, ecx
lea ebx, [edi + ebx + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c407843
neg ebx
sar ebx, 0x1f
mov byte [ebp + 1], bl
mov ebx, dword [esp + 8]
add ebx, dword [esp + 0x3c]
add esi, dword [esp + 0x10]
mov dword [esp], ebx
mov ebx, dword [esp + 4]
add ebx, eax
lea ebx, [ebx + ebx*4]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0xc]
mov edi, dword [esp + 0x24]
add ebx, ecx
lea ebx, [ebx + ebx*4]
neg ebx
lea ebx, [ebx + edi*4]
lea ebx, [ebx + esi + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c40788b
neg ebx
sar ebx, 0x1f
mov esi, dword [esp]
mov byte [esi], bl
lea ebx, [eax + ecx]
mov esi, dword [esp + 8]
lea edi, [ebx + ebx*4]
mov ebx, dword [esp + 4]
add ebx, dword [esp + 0x10]
add esi, dword [esp + 0x1c]
lea ebx, [ebx + ebx*4]
neg ebx
lea ebx, [ebx + edi*4]
mov edi, dword [esp + 0xc]
add edi, dword [esp + 0x14]
lea ebx, [ebx + edi + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c4078cd
neg ebx
sar ebx, 0x1f
add eax, dword [esp + 0x14]
add ecx, dword [esp + 0x10]
mov byte [esi], bl
mov ebx, dword [esp + 8]
lea eax, [eax + eax*4]
lea ecx, [ecx + ecx*4]
neg eax
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x18]
add ebx, dword [esp + 0x20]
lea eax, [eax + ecx + 0x200]
sar eax, 0xa
test eax, 0xffffff00
je 0x6c407908
neg eax
sar eax, 0x1f
mov byte [ebx], al
movsx ebx, word [edx + 0x1c]
lea edi, [ebp + 2]
movsx eax, word [edx + 0x14]
mov dword [esp + 8], edi
movsx edi, word [edx + 0x34]
movsx esi, word [edx + 0xc]
mov dword [esp + 4], ebx
movsx ebx, word [edx + 0x3c]
mov dword [esp + 0xc], eax
movsx eax, word [edx + 0x24]
mov dword [esp + 0x10], edi
movsx edi, word [edx + 0x44]
movsx ecx, word [edx + 0x2c]
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 0xc]
add ebx, dword [esp + 4]
mov dword [esp + 0x18], edi
lea edi, [ebx + ebx*4]
lea ebx, [esi + eax]
lea ebx, [ebx + ebx*4]
neg ebx
lea edi, [ebx + edi*4]
movsx ebx, word [edx + 4]
add ebx, ecx
lea ebx, [edi + ebx + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c407978
neg ebx
sar ebx, 0x1f
mov byte [ebp + 2], bl
mov ebx, dword [esp + 8]
add ebx, dword [esp + 0x3c]
add esi, dword [esp + 0x10]
mov dword [esp], ebx
mov ebx, dword [esp + 4]
add ebx, eax
lea ebx, [ebx + ebx*4]
mov dword [esp + 0x24], ebx
mov ebx, dword [esp + 0xc]
mov edi, dword [esp + 0x24]
add ebx, ecx
lea ebx, [ebx + ebx*4]
neg ebx
lea ebx, [ebx + edi*4]
lea ebx, [ebx + esi + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c4079c0
neg ebx
sar ebx, 0x1f
mov esi, dword [esp]
mov byte [esi], bl
lea ebx, [eax + ecx]
mov esi, dword [esp + 8]
lea edi, [ebx + ebx*4]
mov ebx, dword [esp + 4]
add ebx, dword [esp + 0x10]
add esi, dword [esp + 0x1c]
lea ebx, [ebx + ebx*4]
neg ebx
lea ebx, [ebx + edi*4]
mov edi, dword [esp + 0xc]
add edi, dword [esp + 0x14]
lea ebx, [ebx + edi + 0x200]
sar ebx, 0xa
test ebx, 0xffffff00
je 0x6c407a02
neg ebx
sar ebx, 0x1f
add eax, dword [esp + 0x14]
add ecx, dword [esp + 0x10]
mov byte [esi], bl
mov ebx, dword [esp + 8]
lea eax, [eax + eax*4]
lea ecx, [ecx + ecx*4]
neg eax
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 4]
add ecx, dword [esp + 0x18]
add ebx, dword [esp + 0x20]
lea eax, [eax + ecx + 0x200]
sar eax, 0xa
test eax, 0xffffff00
je 0x6c407a3d
neg eax
sar eax, 0x1f
mov byte [ebx], al
movsx esi, word [edx + 0x36]
lea edi, [ebp + 3]
movsx eax, word [edx + 0xe]
movsx ebx, word [edx + 0x16]
mov dword [esp + 0xc], edi
movsx edi, word [edx + 0x3e]
mov dword [esp + 8], esi
movsx esi, word [edx + 0x46]
mov dword [esp], eax
movsx eax, word [edx + 0x1e]
mov dword [esp + 4], ebx
movsx ecx, word [edx + 0x26]
movsx ebx, word [edx + 0x2e]
mov dword [esp + 0x14], esi
mov esi, dword [esp + 4]
mov dword [esp + 0x10], edi
movsx edx, word [edx + 6]
add esi, eax
lea esi, [esi + esi*4]
add edx, ebx
mov dword [esp + 0x18], esi
mov esi, dword [esp]
mov edi, dword [esp + 0x18]
add esi, ecx
lea esi, [esi + esi*4]
neg esi
lea edi, [esi + edi*4]
lea edx, [edi + edx + 0x200]
sar edx, 0xa
test edx, 0xffffff00
mov esi, edx
je 0x6c407ab8
neg edx
mov esi, edx
sar esi, 0x1f
mov edx, esi
mov edi, dword [esp]
mov byte [ebp + 3], dl
lea edx, [eax + ecx]
mov esi, dword [esp + 0xc]
lea ebp, [edx + edx*4]
mov edx, dword [esp + 4]
add edi, dword [esp + 8]
add esi, dword [esp + 0x3c]
add edx, ebx
lea edx, [edx + edx*4]
neg edx
lea edx, [edx + ebp*4]
lea edx, [edx + edi + 0x200]
sar edx, 0xa
test edx, 0xffffff00
mov edi, edx
je 0x6c407afb
neg edx
mov edi, edx
sar edi, 0x1f
mov edx, edi
mov byte [esi], dl
lea edx, [ecx + ebx]
mov esi, dword [esp + 0xc]
lea edi, [edx + edx*4]
mov edx, dword [esp + 8]
add esi, dword [esp + 0x1c]
add edx, eax
lea edx, [edx + edx*4]
neg edx
lea edx, [edx + edi*4]
mov edi, dword [esp + 4]
add edi, dword [esp + 0x10]
lea edx, [edx + edi + 0x200]
sar edx, 0xa
test edx, 0xffffff00
mov edi, edx
je 0x6c407b3e
neg edx
mov edi, edx
sar edi, 0x1f
add ecx, dword [esp + 0x10]
mov edx, edi
add ebx, dword [esp + 8]
add eax, dword [esp + 0x14]
lea ecx, [ecx + ecx*4]
neg ecx
lea ebx, [ebx + ebx*4]
lea ecx, [ecx + ebx*4]
lea eax, [ecx + eax + 0x200]
sar eax, 0xa
mov byte [esi], dl
mov edx, dword [esp + 0xc]
mov ecx, eax
add edx, dword [esp + 0x20]
test eax, 0xffffff00
je 0x6c407b7b
neg eax
mov ecx, eax
sar ecx, 0x1f
mov byte [edx], cl
add esp, 0x28
pop ebx
pop esi
pop edi
pop ebp
ret