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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
push ebx
push esi
mov esi, dword [ebp + 0x24]
push 0x38
push 0
push esi
call sub.ntdll.dll_memset
mov ecx, dword [ebp + 0xc]
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0x10]
mov dword [esi + 0x14], ecx
mov ecx, dword [ebp + 0x18]
mov dword [esi + 0x30], ecx
mov ecx, dword [ebp + 0x1c]
add esp, 0xc
test eax, eax
mov dword [esi], eax
mov dword [esi + 0x20], ebx
mov dword [esi + 0x34], ecx
je 0x77ce05cf
cmp ebx, 0x40
push edi
jb 0x77cb24b1
lea edi, [eax + ebx]
cmp edi, eax
jb 0x77cb24b1
movzx ecx, word [eax]
cmp cx, 0x5a4d
mov edx, 0xf8
jne 0x77ce05d9
mov ecx, dword [eax + 0x3c]
test ecx, ecx
je 0x77cb24b1
cmp ecx, ebx
ja 0x77cb24b1
sub ebx, ecx
cmp ebx, edx
jbe 0x77cb24b1
add ecx, eax
lea ebx, [ecx + 0xf8]
cmp ebx, edi
mov dword [esi + 4], ecx
ja 0x77cb24b1
lea edi, [eax + 0x40]
cmp ecx, edi
jb 0x77cb24b1
mov ebx, dword [ebp + 0x10]
mov ecx, dword [esi + 4]
mov edi, ecx
sub edi, eax
add edi, edx
cmp edi, ebx
ja 0x77ce05e6
cmp dword [ecx], 0x4550
jne 0x77cb24b1
cmp word [ecx + 0x14], 0
je 0x77cb24b1
cmp byte [ebp + 0x14], 0
mov edx, 0x14c
jne 0x77ce05f8
mov edi, dword [esi + 4]
cmp byte [edi + 0x1a], 3
jb 0x77ce0622
movzx ecx, word [edi + 0x18]
cmp cx, 0x10b
jne 0x77ce0631
cmp byte [ebp + 0x14], 0
jne 0x77ce0649
mov ecx, edi
push 4
sub ecx, eax
add ecx, 0x58
push ecx
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
call fcn.77cb24bd
lea ecx, [edi + 0x98]
mov eax, dword [edi + 0x54]
mov dword [esi + 0x18], eax
mov eax, dword [edi + 0x38]
mov dword [esi + 8], eax
mov eax, dword [esi + 0x18]
test eax, eax
mov edi, dword [edi + 0x3c]
je 0x77cb24b1
cmp eax, dword [esi + 0x14]
jae 0x77cb24b1
test edi, edi
je 0x77cb24b1
lea eax, [edi - 1]
test edi, eax
jne 0x77cb24b1
mov eax, dword [esi + 8]
lea edx, [eax - 1]
test eax, edx
jne 0x77cb24b1
cmp eax, edi
jb 0x77cb24b1
test di, 0x1ff
jne 0x77ce06ae
mov eax, dword [esi + 4]
movzx eax, word [eax + 6]
mov dword [esi + 0xc], eax
mov eax, dword [esi + 4]
movzx edx, word [eax + 0x14]
lea edx, [edx + eax + 0x18]
mov eax, dword [esi + 0xc]
imul eax, eax, 0x28
add eax, edx
cmp eax, edx
mov dword [ebp + 0x24], edx
mov dword [esi + 0x10], edx
jbe 0x77cb24b1
mov edi, dword [esi]
add edi, dword [ebp + 0x10]
cmp eax, edi
ja 0x77cb24b1
and dword [ebp + 0x14], 0
cmp dword [esi + 0xc], 0
jbe 0x77cb2478
lea eax, [edx + 0x10]
mov edx, dword [eax + 4]
mov edi, dword [eax]
lea ebx, [edi + edx]
cmp ebx, edx
jb 0x77cb24b1
cmp ebx, dword [esi + 0x14]
ja 0x77cb24b1
mov edx, dword [esi + 8]
lea edx, [edx + edi - 1]
cmp edx, edi
jb 0x77cb24b1
inc dword [ebp + 0x14]
mov edx, dword [ebp + 0x14]
add eax, 0x28
cmp edx, dword [esi + 0xc]
jb 0x77cb244b
mov edx, dword [ebp + 0x24]
mov eax, dword [ebp + 0x20]
test eax, eax
mov edi, dword [ecx + 4]
mov ebx, dword [ecx]
mov dword [ebp + 0x10], edi
jne 0x77ce06bb
sub ecx, dword [esi]
push 8
push ecx
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
call fcn.77cb24bd
push edi
push ebx
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
call fcn.77cb24bd
xor eax, eax
pop edi
pop esi
pop ebx
pop ebp
ret 0x28
mov eax, 0xc000007b
jmp 0x77cb24aa
mov eax, 0xc000000d
jmp 0x77cb24ab
cmp cx, 0x4550
jne 0x77cb24b1
jmp 0x77ce05f0
mov eax, 0xc000000d
jmp 0x77cb24aa
mov dword [esi + 4], eax
jmp 0x77cb233f
movzx ecx, word [ecx + 4]
sub ecx, edx
je 0x77ce0616
sub ecx, 0x74
je 0x77ce0616
sub ecx, 0x40
je 0x77ce0666
sub ecx, 0x8464
jne 0x77cb24b1
mov dword [esi + 0x1c], 0x1000
jmp 0x77cb2376
cmp byte [edi + 0x1b], 5
jae 0x77cb2383
jmp 0x77cb24b1
cmp cx, 0x20b
jne 0x77cb24b1
cmp cx, 0x10b
je 0x77cb2392
jmp 0x77ce0672
movzx ecx, word [edi + 4]
cmp cx, dx
je 0x77cb239c
cmp cx, 0x1c0
je 0x77cb239c
jmp 0x77cb24b1
mov dword [esi + 0x1c], 0x2000
jmp 0x77cb2376
cmp byte [ebp + 0x14], 0
je 0x77ce068e
movzx ecx, word [edi + 4]
cmp cx, 0x200
je 0x77ce068e
cmp cx, 0x8664
jne 0x77cb24b1
mov ecx, edi
push 4
sub ecx, eax
add ecx, 0x58
push ecx
push dword [ebp + 0x2c]
push dword [ebp + 0x28]
call fcn.77cb24bd
lea ecx, [edi + 0xa8]
jmp 0x77cb23b7
cmp edi, eax
je 0x77cb240e
jmp 0x77cb24b1
test ebx, ebx
je 0x77ce072c
test edi, edi
je 0x77ce072c
mov eax, dword [esi + 0x14]
cmp ebx, eax
ja 0x77cb24b1
add edi, ebx
cmp edi, eax
jne 0x77cb24b1
cmp edi, ebx
jb 0x77cb24b1
cmp ebx, dword [esi + 0x18]
jb 0x77cb24b1
test bl, 3
jne 0x77cb24b1
xor edi, edi
cmp dword [esi + 0xc], edi
jbe 0x77ce071c
lea eax, [edx + 0x10]
mov edx, dword [eax + 4]
test edx, edx
mov dword [ebp + 0x14], edx
je 0x77ce0713
mov edx, dword [eax]
add edx, dword [ebp + 0x14]
cmp ebx, edx
jb 0x77cb24b1
inc edi
add eax, 0x28
cmp edi, dword [esi + 0xc]
jb 0x77ce06fc
mov eax, dword [ebp + 0x20]
mov edi, dword [ebp + 0x10]
mov dword [eax], ebx
mov dword [eax + 4], edi
jmp 0x77cb248b
and dword [eax], 0
and dword [eax + 4], 0
jmp 0x77cb248b