Function at 0x434050
Capabilities:
Inspect section memory permissions

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x20
mov ebx, dword [esp + 0x34]
pushfd
pop eax
mov ecx, eax
xor eax, 0x200000
push eax
popfd
pushfd
pop eax
mov edx, 0
cmp ecx, eax
je 0x434076
mov edx, 1
test edx, edx
je 0x434494
xor eax, eax
mov esi, ebx
cpuid
xchg ebx, esi
test eax, eax
je 0x434494
mov ebp, eax
mov dword [esp + 0x14], esi
mov eax, 1
mov esi, ebx
cpuid
xchg ebx, esi
mov edi, eax
shr edi, 8
and edi, 0xf
mov esi, eax
shr esi, 4
and esi, 0xf
cmp edi, 6
je 0x4340c4
cmp edi, 0xf
jne 0x4340d4
mov ebx, eax
shr ebx, 0x14
movzx edi, bl
add edi, 0xf
mov dword [esp + 8], edi
shr eax, 0xc
and eax, 0xf0
or esi, eax
jmp 0x4340d8
mov dword [esp + 8], edi
mov dword [esp + 0xc], esi
mov eax, edx
shr eax, 0xf
and eax, 1
shr edx, 0x16
mov esi, edx
and esi, 2
or esi, eax
mov eax, edx
and eax, 8
or eax, esi
and edx, 0x10
or edx, eax
mov eax, ecx
shl eax, 5
and eax, 0x20
or eax, edx
mov edx, ecx
and edx, 2
shl edx, 0x12
or edx, eax
mov eax, ecx
shr eax, 3
and eax, 0x40
or eax, edx
lea edx, [ecx*4]
and edx, 0x4000
mov esi, ecx
shr esi, 0xc
mov ebx, esi
and ebx, 0x80
or ebx, edx
and esi, 0x100
or esi, ebx
mov edx, ecx
shr edx, 0x15
and edx, 4
or edx, esi
mov edi, ecx
shr edi, 7
and edi, 0x40000
or edi, edx
or edi, eax
mov edx, ecx
shl edx, 6
and ecx, 0x18000000
mov bl, 1
mov dword [esp], 0
cmp ecx, 0x18000000
jne 0x4341a7
mov esi, edx
mov dword [esp + 4], 0
xor ecx, ecx
xgetbv
mov ecx, eax
and ecx, 6
cmp ecx, 6
jne 0x4341a3
and eax, 0xe6
cmp eax, 0xe6
sete al
mov dword [esp + 4], eax
or edi, 0x200
xor ebx, ebx
mov edx, esi
jmp 0x4341af
mov dword [esp + 4], 0
and edx, 0x10000000
cmp ebp, 7
jb 0x4343bf
mov eax, 7
xor ecx, ecx
mov dword [esp + 0x18], ebx
mov ebx, edx
mov esi, ebx
cpuid
xchg ebx, esi
mov ebp, ecx
mov dword [esp + 0x10], edx
mov edx, esi
mov eax, esi
and eax, 8
shl eax, 0xd
or eax, edi
mov edi, eax
or edi, 0x400
test dl, 0x20
cmove edi, eax
mov ecx, esi
mov dword [esp], esi
shr ecx, 0xa
and ecx, 0x200
or ecx, ebx
shr edx, 9
and edx, 0x4000
or edx, ecx
mov ecx, edx
or ecx, 2
test ebp, 0x400
cmove ecx, edx
cmp byte [esp + 0x18], 0
cmovne edi, eax
cmovne ecx, edx
mov eax, ecx
or eax, 4
mov dword [esp + 0x1c], ebp
test ebp, 0x800
cmove eax, ecx
mov ebx, dword [esp + 4]
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 8
test ebp, 0x1000
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov ebp, ecx
or ebp, 0x20
test dword [esp + 0x10], 0x100
cmove ebp, ecx
test bl, bl
cmove ebp, ecx
mov eax, 7
mov ecx, 1
mov esi, ebx
cpuid
xchg ebx, esi
mov ecx, ebp
or ecx, 0x10
test al, 0x20
cmove ecx, ebp
test bl, bl
cmove ecx, ebp
mov ebp, ecx
mov edx, dword [esp]
mov eax, edx
shl eax, 9
and eax, 0x20000
or eax, edi
mov edi, dword [esp + 8]
mov ecx, eax
or ecx, 0x8000
test edx, 0x10000
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov eax, ecx
or eax, 0x400000
test edx, 0x20000
cmove eax, ecx
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 0x8000000
test edx, 0x200000
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov eax, ecx
or eax, 0x2000000
test edx, 0x4000000
cmove eax, ecx
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 0x1000000
test edx, 0x8000000
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov eax, ecx
or eax, 0x800000
test edx, 0x10000000
cmove eax, ecx
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 0x200000
test edx, 0x40000000
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov eax, ecx
or eax, 0x100000
test edx, edx
mov esi, edx
cmovns eax, ecx
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 0x4000000
mov edx, dword [esp + 0x1c]
test dl, 2
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov eax, ecx
or eax, 0x80000000
test dl, 0x40
cmove eax, ecx
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 0x40000000
test edx, 0x4000
cmove ecx, eax
test bl, bl
cmove ecx, eax
mov eax, ecx
or eax, 0x10000000
mov edx, dword [esp + 0x10]
test dl, 4
cmove eax, ecx
test bl, bl
cmove eax, ecx
mov ecx, eax
or ecx, 0x20000000
test dl, 8
cmove ecx, eax
test bl, bl
mov ebx, ecx
cmove ebx, eax
mov eax, esi
shr eax, 0x11
and eax, 0x1000
mov dword [esp], eax
jmp 0x4343c7
mov ebp, edx
mov ebx, edi
mov edi, dword [esp + 8]
mov eax, 0x80000000
mov esi, ebx
cpuid
xchg ebx, esi
cmp eax, 0x80000001
jb 0x434415
mov eax, 0x80000001
mov esi, ebx
cpuid
xchg ebx, esi
mov eax, ecx
and eax, 0x40
shl eax, 5
or eax, ebx
lea esi, [ecx*4]
and esi, 0x2000
shr ecx, 4
and ecx, 0x1000
or ecx, esi
or ecx, eax
shr edx, 0x15
and edx, 0x100
or ebp, edx
mov ebx, ecx
mov edx, dword [esp + 0xc]
mov eax, dword [esp + 0x14]
cmp eax, 0x68747541
je 0x434450
cmp eax, 0x756e6547
jne case.0x43445d.7
mov ecx, edi
add ecx, 0xfffffffd
cmp ecx, 0xc
ja case.0x43445d.7
mov eax, str.i386
mov edi, 4
jmp dword [ecx*4 + 0x538aa8]
mov eax, str.i486
jmp case.0x43445d.4
lea ecx, [edi - 4]
cmp ecx, 0x15
ja case.0x43445d.7
mov eax, str.i486
jmp dword [ecx*4 + 0x538a30]
mov eax, str.pentium
mov edi, 7
add edx, 0xfffffffa
cmp edx, 7
ja case.0x43445d.4
jmp dword [edx*4 + 0x538a88]
mov eax, 0x5389b9
mov edi, 2
jmp case.0x43445d.4
mov ebx, dword [esp + 0x34]
mov dword [ebx], str.generic
mov edi, 7
jmp 0x4345df
and ebx, 2
lea edi, [ebx + ebx + 7]
mov ecx, str.pentium
mov eax, str.pentium_mmx
cmove eax, ecx
jmp case.0x43445d.4
add edx, 0xfffffff1
cmp edx, 0x97
ja case.0x4344d6.16
mov edi, 5
mov eax, str.core2
jmp dword [edx*4 + 0x538adc]
mov eax, str.silvermont
mov edi, 0xa
jmp case.0x43445d.4
test ebp, 0x100
jne 0x4345cf
test bl, 0x20
mov ecx, str.pentium4
mov eax, str.prescott
cmove eax, ecx
mov edi, 8
jmp case.0x43445d.4
and ebx, 8
mov eax, ebx
shr eax, 3
test ebx, ebx
lea edi, [eax + eax*2 + 6]
mov ecx, str.athlon
mov eax, str.athlon_xp
cmove eax, ecx
jmp case.0x43445d.4
mov eax, str.btver1
jmp 0x4345d4
mov ecx, edx
and ecx, 0xffffffe0
mov eax, str.bdver4
mov edi, 6
cmp ecx, 0x60
je case.0x43445d.4
mov ecx, edx
and ecx, 0xfffffff0
mov eax, str.bdver3
cmp ecx, 0x30
je case.0x43445d.4
cmp ecx, 0x10
mov ecx, str.bdver2
mov eax, str.bdver1
cmove eax, ecx
cmp edx, 2
cmove eax, ecx
jmp case.0x43445d.4
mov eax, str.btver2
jmp 0x4345d4
and ebx, 0x20
mov eax, ebx
shr eax, 5
test ebx, ebx
lea edi, [eax + eax*4 + 2]
mov ecx, 0x5389e5
mov eax, str.k8_sse3
cmove eax, ecx
jmp case.0x43445d.4
mov eax, str.amdfam10
mov edi, 8
jmp case.0x43445d.4
mov eax, edx
and eax, 0xfffffff0
cmp eax, 0x30
mov ecx, str.znver2
mov eax, str.znver1
cmove eax, ecx
cmp edx, 0x71
cmove eax, ecx
jmp 0x4345d4
mov eax, str.znver3
jmp 0x4345d4
mov eax, str.nocona
mov edi, 6
mov ebx, dword [esp + 0x34]
mov dword [ebx], eax
mov dword [ebx + 4], edi
mov eax, ebx
add esp, 0x20
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, str.k6_3
mov edi, 4
jmp case.0x43445d.4
mov eax, str.skylake
mov edi, 7
jmp case.0x43445d.4
mov eax, str.bonnell
mov edi, 7
jmp case.0x43445d.4
mov eax, str.k6_2
mov edi, 4
jmp case.0x43445d.4
mov eax, str.geode
mov edi, 5
jmp case.0x43445d.4
mov eax, str.nehalem
mov edi, 7
jmp case.0x43445d.4
mov eax, str.broadwell
mov edi, 9
jmp case.0x43445d.4
mov eax, str.westmere
mov edi, 8
jmp case.0x43445d.4
mov eax, str.sandybridge
mov edi, 0xb
jmp case.0x43445d.4
mov eax, str.ivybridge
mov edi, 9
jmp case.0x43445d.4
mov eax, str.goldmont
mov edi, 8
jmp case.0x43445d.4
mov eax, str.icelake_server
mov edi, 0xe
jmp case.0x43445d.4
mov eax, str.icelake_client
mov edi, 0xe
jmp case.0x43445d.4
mov eax, str.tigerlake
mov ecx, ebp
test cl, 0x20
jne 0x43485f
mov edi, 0xe
test ebx, ebx
js 0x434878
mov eax, str.cannonlake
mov edi, 0xa
test ebx, 0x4000000
jne case.0x43445d.4
mov eax, str.cooperlake
test cl, 0x10
jne case.0x43445d.4
mov eax, str.cascadelake
mov ecx, ebp
test cl, 4
jne 0x434882
mov eax, str.skylake_avx512
mov edi, 0xe
test ebx, 0x100000
jne case.0x43445d.4
mov ecx, ebx
test ebx, 0x1000000
jne case.0x4344d6.87
mov eax, ebp
test ebp, 0x4000
jne 0x43488c
mov eax, str.broadwell
mov ecx, ebp
test ebp, 0x200
jne 0x43485f
mov eax, ebx
test ebx, 0x400
jne case.0x4344d6.60
mov eax, str.sandybridge
mov edi, 0xb
test ebx, 0x200
jne case.0x43445d.4
mov ecx, ebx
test ebx, 0x100
jne 0x4348ae
mov eax, ebx
test al, al
js case.0x4344d6.23
mov eax, ebx
test al, 0x40
jne 0x4348d3
test ebp, 0x100
jne 0x4348f6
mov eax, str.yonah
mov edi, 5
mov ecx, ebx
test cl, 0x20
jne case.0x43445d.4
mov eax, str.pentium_m
mov edi, 9
test cl, 0x10
jne case.0x43445d.4
test cl, 8
jne 0x434905
mov eax, ebx
and eax, 2
mov edi, eax
xor edi, 0xa
test eax, eax
mov ecx, str.pentiumpro
mov eax, str.pentium2
cmove eax, ecx
jmp case.0x43445d.4
mov eax, str.haswell
mov edi, 7
jmp case.0x43445d.4
mov eax, str.penryn
jmp 0x4345d4
mov eax, 0x538961
mov edi, 3
jmp case.0x43445d.4
mov ecx, ebp
test cl, 0x10
jne 0x434869
xor eax, eax
test cl, 4
sete al
lea edi, [eax + eax*2 + 0xb]
mov ecx, str.skylake_avx512
mov eax, str.cascadelake
cmove eax, ecx
jmp case.0x43445d.4
mov eax, str.cannonlake
mov edi, 0xa
jmp case.0x43445d.4
mov eax, str.goldmont_plus
mov edi, 0xd
jmp case.0x43445d.4
mov eax, 0x538965
mov edi, 3
jmp case.0x43445d.4
mov eax, str.tremont
mov edi, 7
jmp case.0x43445d.4
mov eax, str.sapphirerapids
mov edi, 0xe
jmp case.0x43445d.4
mov edi, 9
jmp case.0x43445d.4
mov eax, str.cooperlake
mov edi, 0xa
jmp case.0x43445d.4
mov eax, str.icelake_client
jmp case.0x43445d.4
mov edi, 0xb
jmp case.0x43445d.4
xor ecx, ecx
cmp dword [esp], 0
sete cl
mov edx, str.skylake
mov eax, str.goldmont
cmove eax, edx
mov edi, 8
sub edi, ecx
jmp case.0x43445d.4
mov ecx, ebp
and ecx, 0x10000000
mov eax, ecx
shr eax, 0x1c
test ecx, ecx
lea edi, [eax + eax*2 + 7]
mov ecx, str.nehalem
mov eax, str.silvermont
cmove eax, ecx
jmp case.0x43445d.4
mov eax, ebp
and eax, 0x10000000
mov edi, eax
shr edi, 0x1b
or edi, 5
test eax, eax
mov ecx, str.core2
mov eax, str.bonnell
cmove eax, ecx
jmp case.0x43445d.4
mov edi, 5
mov eax, str.core2
jmp case.0x43445d.4
mov eax, str.pentium3
mov edi, 8
jmp case.0x43445d.4