Function at 0x4a1170
Capabilities:
Inspect section memory permissions

Disassembly:
push edx
push ecx
push ebx
push esi
push edi
push ebp
sub esp, 0x1c
mov esi, eax
pushfd
pop eax
mov ecx, eax
xor eax, 0x200000
push eax
popfd
pushfd
pop eax
cmp eax, ecx
je 0x4a11a1
push ecx
popfd
xor eax, eax
cpuid
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], edx
cmp dword [esp], 0
jne 0x4a11c5
mov dword [0x507170], 1
mov dword [0x507174], 0
add esp, 0x1c
pop ebp
pop edi
pop esi
pop ebx
pop ecx
pop edx
ret
cmp esi, 1
je 0x4a1542
mov eax, 1
cpuid
mov ebp, edx
mov edi, edx
and ebp, 0x8000
and edi, 1
shr ebp, 0xd
test edx, 0x800000
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ecx
lea eax, [ebp + edi*2 + 1]
lea ebp, [eax + 8]
jne 0x4a11fe
mov ebp, eax
test edx, 0x1000000
jne 0x4a1235
mov edi, ecx
mov dword [esp + 0xc], 0
and edi, 0x40000000
shr edi, 0xd
mov eax, 7
xor ecx, ecx
cpuid
add ebp, edi
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov dword [esp + 0x18], ebx
jmp 0x4a1304
lea edi, [ebp + 0x10]
add ebp, 0x30
test edx, 0x2000000
jne 0x4a1245
mov ebp, edi
and edx, 0x4000000
shr edx, 0x14
or ebp, edx
mov eax, ebp
mov edi, ecx
or eax, 0x80
test edi, 1
mov edx, edi
mov ebx, edi
jne 0x4a1267
mov eax, ebp
mov ebp, edi
and edx, 0x80000
and ebp, 0x200
and ebx, 0x800000
shr ebp, 1
or eax, ebp
mov ecx, eax
or ecx, 0x800
test edi, 0x400000
jne 0x4a1291
mov ecx, eax
shr edx, 0xa
or ecx, edx
mov edx, edi
mov eax, ecx
and edx, 0x2000000
or eax, 0x400
test edi, 0x100000
jne 0x4a12af
mov eax, ecx
shr ebx, 0xb
or eax, ebx
mov ecx, eax
or ecx, 0x2000
test edi, 2
jne 0x4a12c6
mov ecx, eax
shr edx, 0xb
or ecx, edx
mov dword [esp], ecx
mov eax, 7
xor ecx, ecx
cpuid
mov ebp, dword [esp]
or ebp, 0x20000
test edi, 0x40000000
mov dword [esp + 0x18], ebx
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
jne 0x4a12f7
mov ebp, dword [esp]
and ebx, 0x20000000
shr ebx, 0x1a
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x18]
mov edi, ebp
and ebx, 0x108
or edi, 0x80000
cmp ebx, 0x108
je 0x4a1320
mov edi, ebp
mov eax, 0x80000001
cpuid
and ecx, 0x20
shl ecx, 0xf
or edi, ecx
mov eax, edi
or eax, 0x200000
test byte [esp + 0x18], 0x10
mov ebp, dword [esp + 0x18]
jne 0x4a1343
mov eax, edi
and ebp, 0x800
shl ebp, 0xb
or eax, ebp
mov ebx, eax
or ebx, 0x10000000
test dword [esp + 0x18], 0x80000
mov edx, dword [esp + 0x18]
jne 0x4a1366
mov ebx, eax
and edx, 0x40000
shl edx, 0xb
or ebx, edx
test dword [esp + 0x14], 0x8000000
je 0x4a14d4
xor ecx, ecx
xgetbv
or ebx, 1
mov edx, eax
and edx, 6
cmp edx, 6
jne 0x4a14d4
mov edx, ebx
mov ebp, eax
mov ecx, dword [esp + 0x14]
or edx, 0x10000
test ecx, 0x10000000
jne 0x4a13ad
mov edx, ebx
mov ebx, ecx
and ecx, 0x1000
and ebx, 0x20000000
and ebp, 0x18
shr ebx, 0xe
or edx, ebx
mov ebx, edx
or ebx, 0x800000
test byte [esp + 0x18], 0x20
jne 0x4a13d4
mov ebx, edx
shl ecx, 6
or ebx, ecx
cmp ebp, 0x18
jne 0x4a13fa
mov ecx, dword [esp + 0xc]
mov edx, ecx
or edx, 0x10
or ebx, 1
test dword [esp + 0x18], 0x4000
je 0x4a13f6
mov ecx, edx
mov dword [esp + 0xc], ecx
and eax, 0xe0
cmp eax, 0xe0
jne 0x4a14d4
or ebx, 1
mov ebp, ebx
mov ecx, dword [esp + 0x18]
or ebp, 0x8000000
test ecx, 0x10000
mov edx, ecx
mov edi, dword [esp + 0xc]
mov eax, edi
jne 0x4a142b
mov ebp, ebx
or eax, 4
test ecx, 0x10000000
mov ebx, ecx
jne 0x4a143a
mov eax, edi
and ebx, 0x8000000
and edx, 0x20000
shr ebx, 0x1b
mov edi, ecx
or eax, ebx
and edi, 0x80000000
mov ebx, eax
or ebx, 2
test ecx, 0x4000000
jne 0x4a1462
mov ebx, eax
mov eax, ecx
and eax, 0x40000000
shr eax, 0x19
shl edx, 7
or ebx, eax
or ebp, edx
mov edx, ebx
or edx, 0x40
cmp edi, 0x80000000
je 0x4a1482
mov edx, ebx
mov ebx, ebp
or ebx, 0x40000000
test ecx, 0x200000
jne 0x4a1494
mov ebx, ebp
mov ebp, dword [esp + 4]
mov ecx, ebp
and ecx, 2
shl ecx, 6
or edx, ecx
mov eax, edx
or eax, 0x400
test ebp, 0x4000
mov ecx, dword [esp + 8]
jne 0x4a14b7
mov eax, edx
mov edx, ecx
and edx, 4
shl edx, 7
or eax, edx
mov edi, eax
or edi, 0x100
test cl, 8
jne 0x4a14d0
mov edi, eax
mov dword [esp + 0xc], edi
mov eax, dword [esp + 0x10]
mov edx, eax
shr edx, 0xc
shr eax, 4
and edx, 0xf0
and eax, 0xf
add edx, eax
cmp edx, 0x1c
je 0x4a14fa
cmp edx, 0x26
je 0x4a14fa
cmp edx, 0x27
jne 0x4a1500
or ebx, 0x80000000
cmp esi, 1
je 0x4a151e
mov eax, dword [esp + 0xc]
mov dword [0x507178], ebx
mov dword [0x50717c], eax
add esp, 0x1c
pop ebp
pop edi
pop esi
pop ebx
pop ecx
pop edx
ret
mov eax, dword [esp + 0xc]
mov dword [0x507170], ebx
mov dword [0x507174], eax
mov dword [0x507178], ebx
mov dword [0x50717c], eax
add esp, 0x1c
pop ebp
pop edi
pop esi
pop ebx
pop ecx
pop edx
ret
cmp dword [esp + 4], 0x756e6547
jne 0x4a11a7
cmp dword [esp + 0xc], 0x49656e69
jne 0x4a11a7
cmp dword [esp + 8], 0x6c65746e
jne 0x4a11a7
jmp 0x4a11ce