Function at 0x467a90
Capabilities:
Enumerate pe sections

Disassembly:
sub esp, 0x10
push ebp
push eax
call fcn.0041d8e0
mov ecx, dword [esp + 0x1c]
mov ebp, eax
mov edx, dword [ebp]
mov eax, dword [edx + 0x30]
mov dword [ecx], 0
add esp, 4
mov ecx, ebp
mov dword [esp + 4], ebp
call eax
test al, al
je 0x467e5d
mov edx, dword [ebp]
mov eax, dword [edx + 0x48]
mov ecx, ebp
call eax
test al, al
je 0x467e5d
mov edx, dword [ebp]
mov eax, dword [edx + 0x84]
mov ecx, ebp
call eax
test edx, edx
ja 0x467aeb
cmp eax, 0x64
jbe 0x467e5d
mov edx, dword [ebp]
mov eax, dword [edx + 0x174]
push ebx
push esi
push edi
mov ecx, ebp
call eax
mov edi, eax
mov eax, 1
test byte [0x5592f4], al
mov dword [esp + 0x1c], edi
jne 0x467b2b
or dword [0x5592f4], eax
mov esi, 0x5592cc
call fcn.00401580
push 0x50ca50
call fcn.004b8f73
add esp, 4
push 0x5592dc
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, 2
test byte [0x5592f4], al
jne 0x467b60
or dword [0x5592f4], eax
mov esi, 0x5592a0
call fcn.00419f60
push 0x50ca40
call fcn.004b8f73
add esp, 4
cmp byte [0x54f9c4], 0
je 0x467b87
mov ebx, 0x64
mov esi, 0x5592a0
call fcn.004143c0
push ebx
mov ecx, esi
call fcn.004147e0
mov byte [0x54f9c4], 0
mov ecx, dword [0x5592bc]
push ecx
mov ebx, 0x64
call fcn.00461220
test al, al
je 0x467e44
mov eax, dword [0x5592bc]
mov dl, byte [eax]
mov ecx, dword [0x54f9c8]
cmp dl, cl
jne 0x467bf2
cmp byte [eax + 1], ch
jne 0x467bf2
mov cl, byte [eax + 2]
cmp cl, byte [0x54f9ca]
jne 0x467bf2
movzx ecx, byte [eax + 3]
mov eax, 0x54f9f8
lea ebx, [ebx]
cmp ecx, dword [eax]
je 0x467be3
add eax, 4
cmp eax, 0x54fac8
jl 0x467bd0
jmp 0x467e44
mov edx, dword [esp + 0x24]
mov dword [edx], 0x52ec0c
jmp 0x467e44
cmp dl, byte [str.GIF87a]
jne 0x467c31
mov cl, byte [eax + 1]
cmp cl, byte [0x54f9cd]
jne 0x467c31
mov cl, byte [eax + 2]
cmp cl, byte [0x54f9ce]
jne 0x467c31
mov cl, byte [eax + 3]
cmp cl, byte [0x54f9cf]
jne 0x467c31
mov cl, byte [eax + 4]
cmp cl, byte [0x54f9d0]
jne 0x467c31
mov cl, byte [eax + 5]
cmp cl, byte [0x54f9d1]
je 0x467c70
cmp dl, byte [str.GIF89a]
jne 0x467c7f
mov cl, byte [eax + 1]
cmp cl, byte [0x54f9d5]
jne 0x467c7f
mov cl, byte [eax + 2]
cmp cl, byte [0x54f9d6]
jne 0x467c7f
mov cl, byte [eax + 3]
cmp cl, byte [0x54f9d7]
jne 0x467c7f
mov cl, byte [eax + 4]
cmp cl, byte [0x54f9d8]
jne 0x467c7f
mov cl, byte [eax + 5]
cmp cl, byte [0x54f9d9]
jne 0x467c7f
mov edx, dword [esp + 0x24]
mov dword [edx], 0x52ec14
jmp 0x467e44
cmp dl, byte [0x54f9dc]
jne 0x467ce3
mov cl, byte [eax + 1]
cmp cl, byte [str.PNG_r_n]
jne 0x467ce3
mov cl, byte [eax + 2]
cmp cl, byte [0x54f9de]
jne 0x467ce3
mov cl, byte [eax + 3]
cmp cl, byte [0x54f9df]
jne 0x467ce3
mov cl, byte [eax + 4]
cmp cl, byte [0x54f9e0]
jne 0x467ce3
mov cl, byte [eax + 5]
cmp cl, byte [0x54f9e1]
jne 0x467ce3
mov cl, byte [eax + 6]
cmp cl, byte [0x54f9e2]
jne 0x467ce3
mov cl, byte [eax + 7]
cmp cl, byte [0x54f9e3]
jne 0x467ce3
mov edx, dword [esp + 0x24]
mov dword [edx], 0x52ec1c
jmp 0x467e44
cmp dl, byte [0x54f9e8]
jne 0x467d1d
mov cl, byte [eax + 1]
cmp cl, byte [0x54f9e9]
jne 0x467d1d
cmp byte [eax + 6], 0
jne 0x467d1d
cmp byte [eax + 7], 0
jne 0x467d1d
cmp byte [eax + 8], 0
jne 0x467d1d
cmp byte [eax + 9], 0
jne 0x467d1d
mov edx, dword [esp + 0x24]
mov dword [edx], 0x52ec04
jmp 0x467e44
mov ecx, dword [0x54f9ec]
cmp dl, cl
jne 0x467d37
cmp byte [eax + 1], ch
jne 0x467d37
mov cl, byte [eax + 2]
cmp cl, byte [0x54f9ee]
je 0x467d51
mov ecx, dword [0x54f9f0]
cmp dl, cl
jne 0x467d60
cmp byte [eax + 1], ch
jne 0x467d60
mov cl, byte [eax + 2]
cmp cl, byte [0x54f9f2]
jne 0x467d60
mov edx, dword [esp + 0x24]
mov dword [edx], str.tiff
jmp 0x467e44
test dl, dl
jne 0x467e44
cmp byte [eax + 1], dl
jne 0x467e44
cmp byte [eax + 2], 1
jne 0x467e44
cmp byte [eax + 3], dl
jne 0x467e44
movzx eax, word [eax + 4]
test ax, ax
jbe 0x467e44
movzx esi, ax
mov eax, dword [ebp]
mov edx, dword [eax + 0x84]
mov ecx, ebp
mov dword [esp + 0x18], esi
call edx
mov edi, eax
mov eax, esi
shl eax, 4
add eax, 6
mov ecx, edx
cdq
cmp ecx, edx
jb 0x467e44
ja 0x467dc4
cmp edi, eax
jbe 0x467e44
test esi, esi
mov eax, 6
mov dword [esp + 0x14], 0
jbe 0x467e34
cmp eax, 0x54
jge 0x467e34
mov ecx, dword [0x5592bc]
cmp byte [ecx + eax + 3], 0
jne 0x467e44
cmp word [ecx + eax + 6], 0x20
ja 0x467e44
mov esi, dword [ecx + eax + 0xc]
mov ebx, dword [ecx + eax + 8]
lea edi, [eax + 0x10]
cmp esi, edi
jl 0x467e44
mov eax, dword [ebp]
mov edx, dword [eax + 0x84]
mov ecx, ebp
call edx
mov ebp, eax
mov ecx, edx
lea eax, [ebx + esi]
cdq
cmp ecx, edx
jb 0x467e40
ja 0x467e1d
cmp ebp, eax
jb 0x467e40
mov ecx, dword [esp + 0x14]
mov ebp, dword [esp + 0x10]
add ecx, 1
cmp ecx, dword [esp + 0x18]
mov eax, edi
mov dword [esp + 0x14], ecx
jb 0x467dd5
mov eax, dword [esp + 0x24]
mov dword [eax], 0x52ec24
jmp 0x467e44
mov ebp, dword [esp + 0x10]
push 0x5592dc
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x38]
call eax
pop edi
pop esi
pop ebx
mov edx, dword [ebp + 4]
mov eax, dword [edx + 4]
lea ecx, [ebp + 4]
call eax
mov ecx, dword [esp + 0x18]
xor eax, eax
cmp dword [ecx], eax
pop ebp
setne al
add esp, 0x10
ret