Function at 0x40edb0
Capabilities:
Enumerate pe sections
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x2d4
mov eax, dword [0x433040]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
push esi
push edi
push dword [ebp - 0x234]
mov eax, 0x4d7f
mov dword [ebp - 0x264], edx
push 0x35
push 0x40
xorps xmm0, xmm0
mov word [ebp - 0x268], ax
push 0x3a
lea eax, [ebp - 0x298]
movlpd qword [ebp - 0x260], xmm0
mov esi, ecx
mov dword [ebp - 0x230], 0
movups xmmword [ebp - 0x21c], xmm0
push eax
lea ecx, [ebp - 0x2d4]
movlpd qword [ebp - 0x214], xmm0
mov dword [ebp - 0x22c], 0
mov dword [ebp - 0x228], 0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x298], 0xcb20ef0
mov dword [ebp - 0x294], 0x97788bd8
mov dword [ebp - 0x290], 0x75b300ad
mov dword [ebp - 0x28c], 0x53b09b73
mov dword [ebp - 0x288], 0x3105bdb8
mov dword [ebp - 0x284], 0xacb810d6
mov dword [ebp - 0x280], 0xb546a6ea
mov dword [ebp - 0x27c], 0xb405f5e5
mov dword [ebp - 0x278], 0x3e7f22b9
mov dword [ebp - 0x274], 0xc0e34cfa
mov dword [ebp - 0x270], 0x1f4c7683
mov dword [ebp - 0x26c], 0xd778cb16
call fcn.00408260
cmp dword [0x4ccab8], 0
lea eax, [ebp - 0x2d4]
mov dword [ebp - 0x254], eax
jne 0x40eeec
xor edx, edx
mov ecx, 0x84c05e40
call fcn.0040ddf0
mov edx, 0x38adff8b
mov ecx, eax
call fcn.0040e100
mov dword [0x4ccab8], eax
test eax, eax
je 0x40f1c2
cmp dword [0x4cca88], 0
jne 0x40ef1a
xor edx, edx
mov ecx, 0x84c05e40
call fcn.0040ddf0
mov edx, 0x28ef5847
mov ecx, eax
call fcn.0040e100
mov dword [0x4cca88], eax
test eax, eax
je 0x40f1c2
lea eax, [ebp - 0x238]
mov dword [ebp - 0x238], 0
push eax
push 1
call dword [0x4cca88]
test eax, eax
jne 0x40f1c2
mov ecx, dword [0x4ccab8]
mov word [ebp - 0x208], ax
lea eax, [ebp - 0x208]
mov dword [ebp - 0x210], eax
mov eax, 0x200
mov word [ebp - 0x212], ax
mov eax, dword [ebp - 0x254]
push eax
lea eax, [ebp - 0x214]
push eax
call ecx
push esi
lea eax, [ebp - 0x214]
push eax
call dword [0x4ccab8]
push 0x20
lea eax, [ebp - 0x214]
mov dword [ebp - 0x250], 0x18
mov dword [ebp - 0x248], eax
lea eax, [ebp - 0x224]
push 1
push eax
lea eax, [ebp - 0x250]
mov dword [ebp - 0x24c], 0
push eax
lea eax, [ebp - 0x230]
mov dword [ebp - 0x244], 0x40
push 0x80100000
push eax
mov dword [ebp - 0x240], 0
mov dword [ebp - 0x23c], 0
call fcn.0041063e
add esp, 0x18
test eax, eax
jne 0x40f1c2
push dword [ebp - 0x230]
push 0x8000000
push 2
push eax
push eax
lea eax, [ebp - 0x22c]
push 0xf001f
push eax
call fcn.004105f1
add esp, 0x1c
test eax, eax
jne 0x40f1c2
push 2
push eax
push 1
lea eax, [ebp - 0x20c]
push eax
push 0
push 0
push 0
lea eax, [ebp - 0x228]
push eax
push 0xffffffffffffffff
push dword [ebp - 0x22c]
call fcn.004105fc
add esp, 0x28
test eax, eax
jne 0x40f1c2
mov ecx, dword [ebp - 0x228]
mov eax, 0x8664
mov dword [ebp - 0x258], ecx
mov esi, dword [ecx + 0x3c]
add esi, ecx
cmp word [esi + 4], ax
jne 0x40f1c2
mov eax, 0x5a4d
cmp word [ecx], ax
jne 0x40f1c2
cmp dword [esi], 0x4550
jne 0x40f1c2
xor eax, eax
xor ebx, ebx
cmp ax, word [esi + 6]
jae 0x40f1c2
xor ecx, ecx
mov dword [ebp - 0x254], ecx
movzx edi, word [esi + 0x14]
add edi, ecx
add edi, esi
lea eax, [edi + 0x18]
lea edx, [eax + 1]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x40f0a4
sub eax, edx
lea edx, [edi + 0x18]
lea ecx, [eax - 1]
call fcn.004047d0
not eax
cmp eax, 0xa21c1ea3
je 0x40f0de
mov ecx, dword [ebp - 0x254]
inc ebx
movzx eax, word [esi + 6]
add ecx, 0x28
mov dword [ebp - 0x254], ecx
cmp ebx, eax
jb 0x40f096
jmp 0x40f1c2
mov esi, dword [edi + 0x24]
mov ebx, dword [ebp - 0x258]
mov eax, dword [edi + 0x28]
add ebx, esi
sub esi, dword [edi + 0x2c]
test ebx, ebx
je 0x40f1c2
test eax, eax
je 0x40f1c2
mov eax, ebx
cdq
mov ecx, eax
mov dword [ebp - 0x254], edx
mov eax, dword [ebp - 0x228]
cdq
mov dword [ebp - 0x258], ecx
sub ecx, eax
mov eax, dword [ebp - 0x254]
sbb eax, edx
add ecx, dword [ebp + 8]
mov edx, dword [ebp + 0x14]
adc eax, dword [ebp + 0xc]
sub ebx, esi
mov dword [ebp - 0x29c], ecx
mov dword [ebp - 0x2a0], eax
test edx, edx
je 0x40f15a
test bl, 0xf
je 0x40f15a
mov eax, dword [ebp - 0x264]
add ebx, 0x10
and ebx, 0xfffffff0
movzx ecx, word [eax]
mov eax, dword [edi + 0x28]
add eax, 0xfffffff0
add eax, ebx
jmp 0x40f16f
mov eax, dword [ebp - 0x264]
movzx ecx, word [eax]
mov eax, dword [edi + 0x28]
add eax, 0xfffffffd
add eax, ebx
test edx, edx
je 0x40f181
cmp ebx, eax
jae 0x40f1c2
cmp cx, word [ebx]
je 0x40f191
add ebx, 0x10
cmp ebx, eax
jb 0x40f173
jmp 0x40f1c2
cmp ebx, eax
jae 0x40f1c2
cmp cx, word [ebx]
je 0x40f191
inc ebx
cmp ebx, eax
jb 0x40f185
jmp 0x40f1c2
test ebx, ebx
je 0x40f1c2
xor ecx, ecx
mov eax, ebx
sub esi, dword [ebp - 0x258]
cdq
sbb ecx, dword [ebp - 0x254]
add esi, eax
adc ecx, edx
add esi, dword [ebp - 0x29c]
mov dword [ebp - 0x260], esi
adc ecx, dword [ebp - 0x2a0]
mov dword [ebp - 0x25c], ecx
lea eax, [ebp - 0x234]
mov dword [ebp - 0x234], 0
push eax
push 0
call dword [0x4cca88]
mov eax, dword [ebp - 0x228]
test eax, eax
je 0x40f1f0
push eax
push 0xffffffffffffffff
call fcn.00410607
add esp, 8
mov eax, dword [ebp - 0x22c]
test eax, eax
je 0x40f203
push eax
call fcn.004105a4
add esp, 4
mov eax, dword [ebp - 0x230]
test eax, eax
je 0x40f216
push eax
call fcn.004105a4
add esp, 4
mov ecx, dword [ebp - 4]
mov edx, dword [ebp - 0x25c]
xor ecx, ebp
mov eax, dword [ebp - 0x260]
pop edi
pop esi
pop ebx
call fcn.004107a0
mov esp, ebp
pop ebp
ret