Function at 0x6658b0
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 8
mov eax, dword [esp + 0x14]
push ebx
push esi
mov esi, dword [esp + 0x18]
mov dx, word [eax]
mov cx, word [eax + 6]
mov word [esi], dx
mov dx, word [eax + 8]
mov word [esi + 2], dx
mov edx, ecx
and edx, 0xffff
push edi
mov dword [esi + 4], edx
mov edx, dword [eax + 8]
dec edx
mov dword [esp + 0x20], ecx
cmp edx, 0xc
ja case.default.0x6658ec
jmp dword [edx*4 + 0x665ef4]
mov dl, byte [eax + 0xf]
test dl, dl
je 0x66596a
cmp cx, 0xfffd
jne 0x665933
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x18]
push ecx
push esi
push edi
call fcn.00666320
jmp 0x665edf
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
add esp, 0x10
and eax, 0xffff
mov dword [esi + 4], eax
push ecx
push esi
push edi
call fcn.00666320
jmp 0x665edf
cmp cx, 1
jne 0x6659f6
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
add esp, 0xc
cmp word [edi + 0x1c8], 0x4d4d
jne 0x6659cc
mov edx, dword [edi + 0x1d4]
mov ebx, dword [esp + 0x18]
xor ecx, ecx
and ebx, 0xffff
mov cx, word [esi + 2]
shl ecx, 2
mov eax, dword [edx + ecx]
mov edx, dword [edi + 0x1d0]
and eax, ebx
pop edi
mov ecx, dword [edx + ecx]
shl eax, cl
mov dword [esi + 8], eax
pop esi
mov eax, 1
pop ebx
add esp, 8
ret
mov ecx, dword [edi + 0x1d4]
mov edx, dword [esp + 0x18]
xor eax, eax
and edx, 0xffff
mov ax, word [esi + 2]
mov eax, dword [ecx + eax*4]
and eax, edx
mov dword [esi + 8], eax
pop edi
pop esi
mov eax, 1
pop ebx
add esp, 8
ret
mov edx, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
push ecx
push edx
push edi
call fcn.0064da10
mov eax, dword [esp + 0x24]
push eax
push esi
push edi
call fcn.00666320
add esp, 0x18
jmp 0x665ee2
mov dl, byte [eax + 0xf]
test dl, dl
je 0x665a93
cmp cx, 0xfffd
jne 0x665a5c
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x18]
push ecx
push esi
push edi
call fcn.006663a0
jmp 0x665edf
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
add esp, 0x10
and eax, 0xffff
mov dword [esi + 4], eax
push ecx
push esi
push edi
call fcn.006663a0
jmp 0x665edf
cmp cx, 1
jne 0x665ab9
mov edx, dword [eax]
mov eax, dword [esp + 0x18]
add esi, 8
push esi
push edx
push eax
call fcn.0064da10
add esp, 0xc
mov eax, 1
pop edi
pop esi
pop ebx
add esp, 8
ret
mov edx, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
push ecx
push edx
push edi
call fcn.0064da10
mov eax, dword [esp + 0x24]
push eax
push esi
push edi
call fcn.006663a0
add esp, 0x18
jmp 0x665ee2
mov dl, byte [eax + 0xf]
test dl, dl
je 0x665b56
cmp cx, 0xfffd
jne 0x665b1f
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x18]
push ecx
push esi
push edi
call fcn.006663d0
jmp 0x665edf
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
add esp, 0x10
and eax, 0xffff
mov dword [esi + 4], eax
push ecx
push esi
push edi
call fcn.006663d0
jmp 0x665edf
cmp cx, 1
jne 0x665b82
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
lea ecx, [esp + 0x24]
push ecx
push esi
push edi
call fcn.006663d0
add esp, 0x18
jmp 0x665ee2
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x24]
push ecx
push esi
push edi
call fcn.006663d0
add esp, 0x18
jmp 0x665ee2
mov dl, byte [eax + 0xf]
test dl, dl
je 0x665c20
cmp cx, 0xfffd
jne 0x665be8
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x20]
push ecx
push edx
push edi
call fcn.0064da10
mov edx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], eax
push edx
push esi
push edi
call fcn.006664d0
jmp 0x665edf
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x20]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
add esp, 0x10
and ecx, 0xffff
mov dword [esi + 4], ecx
push edx
push esi
push edi
call fcn.006664d0
jmp 0x665edf
cmp cx, 1
jne 0x665c4c
mov edx, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
push ecx
push edx
push edi
call fcn.0064da10
lea eax, [esp + 0x24]
push eax
push esi
push edi
call fcn.006664d0
add esp, 0x18
jmp 0x665ee2
mov edx, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
push ecx
push edx
push edi
call fcn.0064da10
mov eax, dword [esp + 0x24]
push eax
push esi
push edi
call fcn.006664d0
add esp, 0x18
jmp 0x665ee2
mov dl, byte [eax + 0xf]
test dl, dl
je 0x665ce9
cmp cx, 0xfffd
jne 0x665cb2
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x18]
push ecx
push esi
push edi
call fcn.00666500
jmp 0x665edf
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x30]
add esp, 0x10
and eax, 0xffff
mov dword [esi + 4], eax
push ecx
push esi
push edi
call fcn.00666500
jmp 0x665edf
cmp cx, 1
jne 0x665d15
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0xc]
push edx
push eax
push edi
call fcn.0064da10
lea ecx, [esp + 0x18]
push ecx
push esi
push edi
call fcn.00666500
add esp, 0x18
jmp 0x665ee2
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x24]
push ecx
push esi
push edi
call fcn.00666500
add esp, 0x18
jmp 0x665ee2
mov dl, byte [eax + 0xf]
test dl, dl
je 0x665d81
cmp cx, 0xfffd
jne 0x665d65
mov ebx, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x20]
push ecx
push edx
push ebx
call fcn.0064da10
add esp, 0x10
jmp 0x665d96
mov eax, dword [eax]
mov ebx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x20]
push ecx
push edx
push eax
push ebx
call fcn.0064da10
add esp, 0x10
jmp 0x665d96
mov edx, dword [eax]
mov ebx, dword [esp + 0x18]
lea ecx, [esp + 0x18]
push ecx
push edx
push ebx
call fcn.0064da10
add esp, 0xc
mov edx, dword [esp + 0x18]
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
push edx
push esi
mov dword [esi + 4], ecx
push ebx
jmp 0x665eda
mov dl, byte [eax + 0xf]
test dl, dl
je 0x665e17
cmp cx, 0xfffd
jne 0x665de8
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x18]
jmp 0x665ed7
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.0064da10
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x28]
add esp, 0x10
and eax, 0xffff
mov dword [esi + 4], eax
jmp 0x665ed7
cmp cx, 1
jne 0x665e35
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
lea ecx, [esp + 0x24]
jmp 0x665e4b
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x24]
push ecx
push esi
push edi
call fcn.00666250
add esp, 0x18
test eax, eax
jne case.default.0x6658ec
pop edi
pop esi
pop ebx
add esp, 8
ret
cmp cx, 0xffff
jne 0x665e94
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
mov edx, dword [eax]
lea ecx, [esp + 0x24]
push ecx
push edx
push edi
call fcn.0064da10
mov eax, dword [esp + 0x30]
add esp, 0x10
and eax, 0xffff
mov dword [esi + 4], eax
jmp 0x665ed3
cmp cx, 0xfffd
jne 0x665ebe
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea ecx, [esp + 0x18]
lea edx, [esp + 0x1c]
push ecx
push edx
push eax
push edi
call fcn.0064da10
mov ecx, dword [esp + 0x2c]
add esp, 0x10
mov dword [esi + 4], ecx
jmp 0x665ed3
mov eax, dword [eax]
mov edi, dword [esp + 0x18]
lea edx, [esp + 0x18]
push edx
push eax
push edi
call fcn.0064da10
add esp, 0xc
mov ecx, dword [esp + 0x18]
push ecx
push esi
push edi
call fcn.00666250
add esp, 0xc
test eax, eax
jne case.default.0x6658ec
pop edi
pop esi
pop ebx
add esp, 8
ret