Function at 0x37c38
Capabilities:
Enumerate pe sections

Disassembly:
push 0x470
push 0x5a290
call fcn.00055864
mov esi, dword [ebp + 8]
mov edi, dword [ebp + 0xc]
mov dword [ebp - 0x438], edi
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0x458], eax
mov ebx, dword [ebp + 0x18]
mov dword [ebp - 0x460], ebx
mov dword [ebp - 0x440], 0xc0000001
cmp edi, 0x80000000
jbe 0x37f4a
and dword [ebp - 0x444], 0
push edi
push eax
push esi
call fcn.00037bf0
mov dword [ebp - 0x438], eax
test eax, eax
je 0x37f17
push dword [ebp + 0x10]
push edi
call fcn.000253c0
mov dword [ebp - 0x444], eax
test eax, eax
je 0x37f17
push eax
call fcn.000175c8
test al, al
je 0x37f17
push 8
call fcn.00015fd4
mov dword [ebp - 0x42c], eax
test eax, eax
je 0x37f17
mov edi, dword [ebp - 0x444]
push edi
call fcn.00017624
test al, al
je 0x37d0f
mov esi, dword [edi + 0x3c]
add esi, edi
push esi
call dword [0x5909c]
or eax, edx
je 0x37f17
movzx eax, word [esi + 0x14]
lea edi, [eax + esi + 0x18]
push edi
call dword [0x5909c]
or eax, edx
je 0x37f17
jmp 0x37d40
mov eax, edi
mov esi, dword [eax + 0x3c]
add esi, eax
push esi
mov ebx, dword [0x5909c]
call ebx
or eax, edx
je 0x37f17
movzx eax, word [esi + 0x14]
lea edi, [eax + esi + 0x18]
push edi
call ebx
or eax, edx
je 0x37f17
mov ebx, dword [ebp - 0x460]
movzx eax, word [esi + 6]
test eax, eax
jbe 0x37ea1
add edi, 0x24
mov dword [ebp - 0x430], edi
mov dword [ebp - 0x45c], eax
mov ebx, 0x200
mov eax, dword [ebp - 0x430]
mov eax, dword [eax]
test eax, 0x20000000
je 0x37e88
test eax, 0x2000000
jne 0x37e88
mov ecx, dword [ebp - 0x430]
mov eax, dword [ecx - 0x18]
mov ecx, dword [ecx - 0x14]
mov dword [ebp - 0x44c], eax
add ecx, eax
mov dword [ebp - 0x458], ecx
cmp eax, ecx
jae 0x37e88
lea ecx, [ebp - 0x428]
sub eax, ecx
mov dword [ebp - 0x434], eax
mov edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x444]
lea esi, [edx + eax]
mov eax, pe_nt_image_headers32
mov ecx, eax
lea edi, [ebp - 0x428]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x438]
mov esi, dword [ecx + 4]
add esi, edx
mov ecx, eax
lea edi, [ebp - 0x228]
rep movsd dword es:[edi], dword [esi]
push 0
push ebx
lea eax, [ebp - 0x428]
push eax
call fcn.000255c4
test al, al
jne 0x37e6a
push 0
push ebx
lea eax, [ebp - 0x228]
push eax
call fcn.000255c4
test al, al
jne 0x37e6a
mov ecx, pe_nt_image_headers32
lea edi, [ebp - 0x228]
lea esi, [ebp - 0x428]
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
je 0x37e6a
xor edi, edi
lea esi, [ebp + edi - 0x428]
mov al, byte [esi]
cmp al, byte [ebp + edi - 0x228]
je 0x37e65
push 8
push 0
call dword [0x592ec]
test eax, eax
je 0x37e65
mov ecx, dword [ebp - 0x434]
add ecx, esi
mov dword [eax], ecx
mov cl, byte [esi]
mov byte [eax + 4], cl
mov cl, byte [ebp + edi - 0x228]
mov byte [eax + 5], cl
push eax
push dword [ebp - 0x42c]
call fcn.00016054
inc edi
cmp edi, ebx
jb 0x37e20
add dword [ebp - 0x44c], ebx
add dword [ebp - 0x434], ebx
mov eax, dword [ebp - 0x44c]
cmp eax, dword [ebp - 0x458]
jb 0x37dae
add dword [ebp - 0x430], 0x28
dec dword [ebp - 0x45c]
jne 0x37d60
mov ebx, dword [ebp - 0x460]
test ebx, ebx
je 0x37f0c
push dword [ebp - 0x42c]
call fcn.00016104
mov esi, eax
test esi, esi
je 0x37f02
lea edi, [esi*8 + 0xc]
push edi
push 1
call dword [0x592ec]
mov dword [ebx], eax
test eax, eax
je 0x37ef6
push edi
push 0
push eax
call fcn.00055674
add esp, 0xc
mov eax, dword [ebx]
mov dword [eax], esi
mov eax, dword [ebx]
add eax, 4
push eax
push dword [ebp - 0x42c]
call fcn.00016124
and dword [ebp - 0x440], 0
jmp 0x37f0c
mov dword [ebp - 0x440], 0xc000009a
jmp 0x37f0c
mov dword [ebp - 0x440], 0xc0000273
push dword [ebp - 0x42c]
call fcn.00016004
xor esi, esi
cmp dword [ebp - 0x438], esi
je 0x37f2c
push dword [ebp - 0x438]
call fcn.0001ab8e
cmp dword [ebp - 0x444], esi
je 0x382fb
push esi
push dword [ebp - 0x444]
call dword [0x592e4]
jmp 0x382fb
xor ebx, ebx
mov dword [ebp - 0x480], ebx
xor eax, eax
lea edi, [ebp - 0x47c]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
mov dword [ebp - 0x450], ebx
mov dword [ebp - 0x430], ebx
mov dword [ebp - 0x434], ebx
push esi
call dword [0x5916c]
test al, al
je 0x37f86
mov eax, 0xc000010a
jmp 0x38301
lea eax, [ebp - 0x480]
push eax
push esi
call dword [0x591a0]
mov dword [ebp - 4], ebx
lea eax, [ebp - 0x434]
push eax
lea eax, [ebp - 0x430]
push eax
push dword [ebp - 0x458]
call fcn.0001716e
mov dword [ebp - 0x450], eax
cmp eax, ebx
jne 0x37fc6
mov dword [ebp - 4], 0xfffffffe
jmp 0x382bf
push eax
mov edi, dword [ebp - 0x438]
push edi
call fcn.0001778a
test al, al
je 0x37fba
push 8
call fcn.00015fd4
mov dword [ebp - 0x42c], eax
cmp eax, ebx
je 0x37fba
mov dword [ebp - 0x454], ebx
push edi
call fcn.00017624
push edi
test al, al
je 0x3812d
call fcn.00017646
test al, al
je 0x37fba
mov esi, dword [edi + 0x3c]
add esi, edi
push esi
mov edi, dword [0x5909c]
call edi
or eax, edx
je 0x37fba
movzx eax, word [esi + 0x14]
lea eax, [eax + esi + 0x18]
mov dword [ebp - 0x454], eax
push eax
call edi
or eax, edx
je 0x37fba
movzx eax, word [esi + 6]
mov dword [ebp - 0x45c], eax
and dword [ebp - 0x464], 0
mov ebx, 0x200
mov eax, dword [ebp - 0x454]
mov ecx, dword [ebp - 0x464]
cmp ecx, dword [ebp - 0x45c]
jae 0x3822c
mov byte [ebp - 0x28], 0
mov ecx, dword [eax]
mov dword [ebp - 0x28], ecx
mov ecx, dword [eax + 4]
mov dword [ebp - 0x24], ecx
mov ecx, dword [eax + 0x24]
test ecx, 0x20000000
je 0x38218
test ecx, 0x2000000
jne 0x38218
and dword [ebp - 0x448], 0
mov ecx, dword [eax + 0xc]
mov dword [ebp - 0x44c], ecx
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x458], edx
mov esi, ecx
mov dword [ebp - 0x448], esi
mov edx, dword [ebp - 0x458]
add edx, ecx
cmp esi, edx
jae 0x38218
mov byte [ebp - 0x228], 0
mov edi, 0x1ff
push edi
push 0
lea eax, [ebp - 0x227]
push eax
call fcn.00055674
mov byte [ebp - 0x428], 0
push edi
push 0
lea eax, [ebp - 0x427]
push eax
call fcn.00055674
add esp, 0x18
mov eax, 0x2580
mov ecx, dword [0x590a0]
cmp word [ecx], ax
jbe 0x38137
mov ecx, dword [ebp - 0x438]
mov eax, dword [ebp - 0x448]
lea esi, [ecx + eax]
mov edx, pe_nt_image_headers32
mov ecx, edx
lea edi, [ebp - 0x228]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp - 0x450]
lea esi, [eax + ecx]
mov ecx, edx
lea edi, [ebp - 0x428]
rep movsd dword es:[edi], dword [esi]
jmp 0x38163
call fcn.00017646
jmp 0x38002
push ebx
lea eax, [ebp - 0x228]
push eax
mov eax, dword [ebp - 0x438]
add eax, esi
push eax
call fcn.00016c6e
push ebx
lea eax, [ebp - 0x428]
push eax
mov eax, dword [ebp - 0x450]
add esi, eax
push esi
call fcn.00016c6e
push 0
push ebx
lea eax, [ebp - 0x228]
push eax
call fcn.000255c4
test al, al
jne 0x381fb
push 0
push ebx
lea eax, [ebp - 0x428]
push eax
call fcn.000255c4
test al, al
jne 0x381fb
mov ecx, pe_nt_image_headers32
lea edi, [ebp - 0x428]
lea esi, [ebp - 0x228]
xor eax, eax
repe cmpsd dword [esi], dword es:[edi]
je 0x381fb
xor esi, esi
mov dword [ebp - 0x468], esi
cmp esi, ebx
jae 0x381fb
mov al, byte [ebp + esi - 0x228]
cmp al, byte [ebp + esi - 0x428]
je 0x381f8
push 8
push 0
call dword [0x592ec]
test eax, eax
je 0x381f8
mov ecx, dword [ebp - 0x448]
add ecx, esi
mov dword [eax], ecx
mov cl, byte [ebp + esi - 0x228]
mov byte [eax + 4], cl
mov cl, byte [ebp + esi - 0x428]
mov byte [eax + 5], cl
push eax
push dword [ebp - 0x42c]
call fcn.00016054
inc esi
jmp 0x381a6
add dword [ebp - 0x448], ebx
mov eax, dword [ebp - 0x454]
mov esi, dword [ebp - 0x448]
mov ecx, dword [ebp - 0x44c]
jmp 0x380a6
add eax, 0x28
mov dword [ebp - 0x454], eax
inc dword [ebp - 0x464]
jmp 0x38049
mov esi, dword [ebp - 0x460]
test esi, esi
je 0x3829d
push dword [ebp - 0x42c]
call fcn.00016104
mov ebx, eax
test ebx, ebx
je 0x38293
lea edi, [ebx*8 + 0xc]
push edi
push 1
call dword [0x592ec]
mov dword [esi], eax
test eax, eax
je 0x38287
push edi
push 0
push eax
call fcn.00055674
add esp, 0xc
mov eax, dword [esi]
mov dword [eax], ebx
mov eax, dword [esi]
add eax, 4
push eax
push dword [ebp - 0x42c]
call fcn.00016124
and dword [ebp - 0x440], 0
jmp 0x3829d
mov dword [ebp - 0x440], 0xc000009a
jmp 0x3829d
mov dword [ebp - 0x440], 0xc0000273
push dword [ebp - 0x42c]
call fcn.00016004
xor ebx, ebx
jmp 0x37fba
cmp dword [ebp - 0x450], ebx
je 0x382ee
cmp dword [ebp - 0x430], ebx
je 0x382ee
cmp dword [ebp - 0x434], ebx
je 0x382ee
push dword [ebp - 0x434]
push dword [ebp - 0x430]
push dword [ebp - 0x450]
call fcn.000173aa
lea eax, [ebp - 0x480]
push eax
call dword [0x5919c]
mov eax, dword [ebp - 0x440]
call fcn.000558ac
ret 0x14