Function at 0x42a9f0
Capabilities:
Enumerate pe sections

Disassembly:
push 0xffffffffffffffff
push 0x4f4970
mov eax, dword fs:[0]
push eax
sub esp, 0x74
push ebx
push ebp
push esi
push edi
mov eax, dword [0x50fb70]
xor eax, esp
push eax
lea eax, [esp + 0x88]
mov dword fs:[0], eax
mov esi, ecx
mov byte [esi + 0xaf1c], 0
mov byte [esi + 0xaf24], 0
call fcn.00442610
test al, al
je 0x42aa6c
lea eax, [esi + 0x1e]
lea ecx, [esp + 0x3c]
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0x3a
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x7c], 2
call fcn.004689f0
xor al, al
jmp 0x42aec1
mov eax, dword [esi]
mov edx, dword [eax + 8]
push 7
lea ebx, [esi + 0x6420]
push ebx
mov ecx, esi
call edx
cmp eax, 7
jne 0x42aa65
xor edi, edi
mov dword [esi + 0xaf20], edi
cmp byte [ebx], 0x52
jne 0x42ab18
mov al, byte [ebx + 1]
cmp al, 0x45
jne 0x42aaac
cmp byte [ebx + 2], 0x7e
jne 0x42aaac
cmp byte [ebx + 3], 0x5e
jne 0x42aaac
lea eax, [edi + 1]
jmp 0x42aaea
cmp al, 0x61
jne 0x42ab18
cmp byte [ebx + 2], 0x72
jne 0x42ab18
cmp byte [ebx + 3], 0x21
jne 0x42ab18
cmp byte [ebx + 4], 0x1a
jne 0x42ab18
cmp byte [ebx + 5], 7
jne 0x42ab18
mov al, byte [ebx + 6]
test al, al
jne 0x42aad6
mov eax, 2
jmp 0x42aaea
cmp al, 1
jne 0x42aae1
mov eax, 3
jmp 0x42aaea
cmp al, 2
jne 0x42ab18
mov eax, 4
mov dword [esi + 0xaf10], eax
cmp eax, 1
jne 0x42ac51
mov edi, dword [esi]
mov eax, dword [edi + 0x10]
push 0
mov ecx, esi
call eax
sub eax, 7
sbb edx, 0
push edx
mov edx, dword [edi + 0xc]
push eax
mov ecx, esi
call edx
jmp 0x42ac4f
push 0x100000
lea ecx, [esp + 0x20]
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
call fcn.00401320
mov dword [esp + 0x90], edi
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
mov ecx, esi
call edx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
add ecx, 0xfffffff0
mov ebx, eax
mov eax, dword [esi]
mov eax, dword [eax + 8]
push ecx
push edx
mov ecx, esi
call eax
mov ebp, eax
test ebp, ebp
jle 0x42ac07
jmp 0x42ab70
mov ecx, dword [esp + 0x1c]
cmp byte [ecx + edi], 0x52
lea eax, [ecx + edi]
jne 0x42abc7
mov edx, ebp
sub edx, edi
push edx
push eax
mov ecx, esi
call fcn.00429620
test eax, eax
je 0x42abc7
mov dword [esi + 0xaf10], eax
cmp eax, 1
jne 0x42abce
test edi, edi
jle 0x42abce
cmp ebx, 0x1c
jge 0x42abce
cmp ebp, 0x1f
jle 0x42abce
mov eax, dword [esp + 0x1c]
sub eax, ebx
add eax, 0x1c
cmp byte [eax], 0x52
jne 0x42abc7
cmp byte [eax + 1], 0x53
jne 0x42abc7
cmp byte [eax + 2], 0x46
jne 0x42abc7
cmp byte [eax + 3], 0x58
je 0x42abce
inc edi
cmp edi, ebp
jl 0x42ab70
jmp 0x42ac07
mov edx, dword [esi]
push 0
lea eax, [edi + ebx]
push 0
mov dword [esi + 0xaf20], eax
push eax
mov eax, dword [edx + 0xc]
mov ecx, esi
call eax
mov eax, dword [esi + 0xaf10]
cmp eax, 2
je 0x42abf5
cmp eax, 3
jne 0x42ac07
mov edx, dword [esi]
push 7
lea eax, [esi + 0x6420]
push eax
mov eax, dword [edx + 8]
mov ecx, esi
call eax
cmp dword [esi + 0xaf20], 0
jne 0x42ac33
mov dword [esp + 0x90], 0xffffffff
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x42ac2c
push eax
call fcn.004df66f
add esp, 4
xor al, al
jmp 0x42aec1
mov dword [esp + 0x90], 0xffffffff
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x42ac4f
push eax
call fcn.004df66f
add esp, 4
xor edi, edi
mov eax, dword [esi + 0xaf10]
cmp eax, 4
jne 0x42ac8d
add esi, 0x1e
lea ecx, [esp + 0x3c]
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], 0x3b
mov dword [esp + 0x3c], esi
mov dword [esp + 0x7c], 1
call fcn.004689f0
xor al, al
jmp 0x42aec1
cmp eax, 3
jne 0x42acbb
mov edx, dword [esi]
mov eax, dword [edx + 8]
push 1
lea edi, [esi + 0x6427]
push edi
mov ecx, esi
call eax
cmp byte [edi], 0
jne 0x42aa65
mov dword [esi + 0x6428], 8
xor edi, edi
jmp 0x42acc5
mov dword [esi + 0x6428], 7
mov ecx, esi
call fcn.00430b10
test eax, eax
je 0x42ad0c
mov eax, dword [esi + 0x5774]
cmp eax, 1
je 0x42ad0c
cmp byte [esi + 0x5778], 0
je 0x42ace9
cmp eax, 4
je 0x42ad0c
mov eax, dword [esi + 0xaf0c]
mov ecx, dword [esi + 0xaf08]
mov edx, dword [esi]
mov edx, dword [edx + 0xc]
push edi
push eax
push ecx
mov ecx, esi
call edx
mov ecx, esi
call fcn.00430b10
test eax, eax
jne 0x42acd0
cmp byte [esi + 0xaf25], 0
mov bl, byte [esp + 0x98]
je 0x42ad24
test bl, bl
je 0x42aa65
mov ecx, dword [esi + 0xaf0c]
mov eax, dword [esi]
mov edx, dword [esi + 0xaf08]
mov eax, dword [eax + 0xc]
push 0
push ecx
push edx
mov ecx, esi
call eax
cmp byte [esi + 0xaf24], 0
je 0x42ad59
lea ecx, [esi + 0x1e]
push ecx
push 0x19
call fcn.004034a0
test bl, bl
je 0x42aa65
cmp byte [esi + 0x5778], 0
mov dl, byte [esi + 0x644c]
mov byte [esi + 0xaf16], dl
je 0x42ad7b
cmp byte [esi + 0xaf1c], 0
jne 0x42ae8e
mov eax, dword [esi]
mov edx, dword [eax + 0x10]
mov ecx, esi
mov dword [esp + 0x2c], esi
call edx
mov edi, eax
mov ebx, edx
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], ebx
mov dword [esp + 0x90], 1
mov ecx, dword [esi + 0xaf08]
mov eax, dword [esi + 0xaf04]
mov edx, dword [esi + 0xaf0c]
mov ebp, dword [esi + 0xaf00]
mov dword [esp + 0x14], ecx
mov ecx, esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], edx
call fcn.00430b10
test eax, eax
je 0x42ae52
mov eax, dword [esi + 0x5774]
cmp eax, 3
jne 0x42ae06
cmp byte [esi + 0xaf15], 0
je 0x42adfc
cmp byte [esi + 0x9870], 0
jne 0x42adfc
mov eax, 1
mov byte [esi + 0xaf19], al
jmp 0x42ae0b
xor eax, eax
mov byte [esi + 0xaf19], al
jmp 0x42ae0b
cmp eax, 2
je 0x42ae31
mov ecx, dword [esi + 0xaf0c]
mov eax, dword [esi]
mov edx, dword [esi + 0xaf08]
mov eax, dword [eax + 0xc]
push 0
push ecx
push edx
mov ecx, esi
call eax
mov ecx, esi
call fcn.00430b10
test eax, eax
jne 0x42add2
jmp 0x42ae52
cmp byte [esi + 0xaf15], 0
je 0x42ae4a
cmp byte [esi + 0x7530], 0
jne 0x42ae4a
mov eax, 1
jmp 0x42ae4c
xor eax, eax
mov byte [esi + 0xaf19], al
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov dword [esi + 0xaf00], ebp
mov dword [esi + 0xaf04], ecx
mov dword [esi + 0xaf08], edx
mov dword [esi + 0xaf0c], eax
mov dword [esp + 0x90], 0xffffffff
mov edx, dword [esi]
mov eax, dword [edx + 0xc]
push 0
push ebx
push edi
mov ecx, esi
call eax
cmp byte [esi + 0xaf15], 0
je 0x42aea0
cmp byte [esi + 0xaf19], 0
je 0x42aebf
lea eax, [esi + 0x1e]
sub esi, eax
lea edx, [esi + 0xaf5a]
jmp 0x42aeb0
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x42aeb0
mov al, 1
mov ecx, dword [esp + 0x88]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x80
ret 4