Function at 0x406640
Capabilities:
Enumerate pe sections

Disassembly:
push ecx
push ebx
push esi
mov esi, dword [esp + 0x18]
push edi
mov edi, dword [esp + 0x18]
push 1
lea eax, [esp + 0x13]
push eax
push esi
mov byte [esp + 0x1b], 0x50
call edi
push 1
lea ecx, [esp + 0x1f]
push ecx
push esi
mov byte [esp + 0x27], 0x4b
call edi
push 1
lea edx, [esp + 0x34]
push edx
push esi
mov byte [esp + 0x3c], 3
call edi
push 1
lea eax, [esp + 0x40]
push eax
push esi
mov byte [esp + 0x48], 4
call edi
mov ebx, dword [esp + 0x44]
mov cl, byte [ebx + 2]
push 1
lea edx, [esp + 0x4c]
push edx
push esi
mov byte [esp + 0x54], cl
call edi
mov al, byte [ebx + 3]
push 1
lea ecx, [esp + 0x58]
push ecx
push esi
mov byte [esp + 0x60], al
call edi
mov dl, byte [ebx + 0x2c]
add esp, 0x48
push 1
lea eax, [esp + 0x1c]
push eax
push esi
mov byte [esp + 0x24], dl
call edi
mov cl, byte [ebx + 0x2d]
push 1
lea edx, [esp + 0x28]
push edx
push esi
mov byte [esp + 0x30], cl
call edi
mov al, byte [ebx + 6]
push 1
lea ecx, [esp + 0x34]
push ecx
push esi
mov byte [esp + 0x3c], al
call edi
mov dl, byte [ebx + 7]
push 1
lea eax, [esp + 0x40]
push eax
push esi
mov byte [esp + 0x48], dl
call edi
mov cl, byte [ebx + 8]
push 1
lea edx, [esp + 0x4c]
push edx
push esi
mov byte [esp + 0x54], cl
call edi
mov al, byte [ebx + 9]
push 1
lea ecx, [esp + 0x58]
push ecx
push esi
mov byte [esp + 0x60], al
call edi
mov dl, byte [ebx + 0xa]
add esp, 0x48
push 1
lea eax, [esp + 0x1c]
push eax
push esi
mov byte [esp + 0x24], dl
call edi
mov cl, byte [ebx + 0xb]
push 1
lea edx, [esp + 0x28]
push edx
push esi
mov byte [esp + 0x30], cl
call edi
mov al, byte [ebx + 0xc]
push 1
lea ecx, [esp + 0x34]
push ecx
push esi
mov byte [esp + 0x3c], al
call edi
mov dl, byte [ebx + 0xd]
push 1
lea eax, [esp + 0x40]
push eax
push esi
mov byte [esp + 0x48], dl
call edi
mov cl, byte [ebx + 0xe]
push 1
lea edx, [esp + 0x4c]
push edx
push esi
mov byte [esp + 0x54], cl
call edi
mov al, byte [ebx + 0xf]
push 1
lea ecx, [esp + 0x58]
push ecx
push esi
mov byte [esp + 0x60], al
call edi
mov dl, byte [ebx + 0x10]
add esp, 0x48
push 1
lea eax, [esp + 0x1c]
push eax
push esi
mov byte [esp + 0x24], dl
call edi
mov cl, byte [ebx + 0x11]
push 1
lea edx, [esp + 0x28]
push edx
push esi
mov byte [esp + 0x30], cl
call edi
mov al, byte [ebx + 0x12]
push 1
lea ecx, [esp + 0x34]
push ecx
push esi
mov byte [esp + 0x3c], al
call edi
mov dl, byte [ebx + 0x13]
push 1
lea eax, [esp + 0x40]
push eax
push esi
mov byte [esp + 0x48], dl
call edi
mov cl, byte [ebx + 0x14]
mov byte [esp + 0x48], cl
push 1
lea edx, [esp + 0x4c]
push edx
push esi
call edi
mov al, byte [ebx + 0x15]
push 1
lea ecx, [esp + 0x58]
push ecx
push esi
mov byte [esp + 0x60], al
call edi
mov dl, byte [ebx + 0x16]
add esp, 0x48
push 1
lea eax, [esp + 0x1c]
push eax
push esi
mov byte [esp + 0x24], dl
call edi
mov cl, byte [ebx + 0x17]
push 1
lea edx, [esp + 0x28]
push edx
push esi
mov byte [esp + 0x30], cl
call edi
mov al, byte [ebx + 0x18]
push 1
lea ecx, [esp + 0x34]
push ecx
push esi
mov byte [esp + 0x3c], al
call edi
mov edx, dword [ebx + 0x18]
push 1
lea eax, [esp + 0x40]
push eax
shr edx, 8
push esi
mov byte [esp + 0x48], dl
call edi
mov cl, byte [ebx + 0x1c]
push 1
lea edx, [esp + 0x4c]
push edx
push esi
mov byte [esp + 0x54], cl
call edi
mov eax, dword [ebx + 0x1c]
push 1
lea ecx, [esp + 0x58]
push ecx
shr eax, 8
push esi
mov byte [esp + 0x60], al
call edi
mov edx, dword [ebx + 0x18]
add esp, 0x48
push edx
lea eax, [ebx + 0x148]
push eax
push esi
call edi
mov ecx, dword [ebx + 0x18]
add esp, 0xc
cmp eax, ecx
jne 0x40688f
mov eax, dword [ebx + 0x1c]
test eax, eax
je 0x406899
mov ecx, dword [ebx + 0x13c]
push eax
push ecx
push esi
call edi
mov ecx, dword [ebx + 0x1c]
add esp, 0xc
cmp eax, ecx
je 0x406899
pop edi
pop esi
mov eax, 0xa
pop ebx
pop ecx
ret
pop edi
pop esi
xor eax, eax
pop ebx
pop ecx
ret