Function at 0x100051f0
Capabilities:
Inspect section memory permissions
Parse pe header

Disassembly:
mov eax, 1
jmp 0x10005200
push edx
push ecx
push ebx
push esi
push edi
push ebp
sub esp, 0xb8
mov edi, eax
movups xmmword [esp + 0x68], xmm7
movups xmmword [esp + 0x38], xmm6
movups xmmword [esp + 0x58], xmm5
movups xmmword [esp + 0x48], xmm4
movups xmmword [esp + 0x98], xmm3
movups xmmword [esp + 0xa8], xmm2
movups xmmword [esp + 0x78], xmm1
movups xmmword [esp + 0x88], xmm0
xor eax, eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x2c], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], eax
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
pushfd
pop eax
mov ecx, eax
xor eax, 0x200000
push eax
popfd
pushfd
pop eax
cmp eax, ecx
je 0x1000529e
push ecx
popfd
xor eax, eax
cpuid
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], edx
cmp dword [esp + 8], 0
jne 0x100052f3
mov eax, 0x10042730
lea ecx, [esp + 0x18]
call fcn.10004660
movups xmm0, xmmword [esp + 0x88]
movups xmm1, xmmword [esp + 0x78]
movups xmm2, xmmword [esp + 0xa8]
movups xmm3, xmmword [esp + 0x98]
movups xmm4, xmmword [esp + 0x48]
movups xmm5, xmmword [esp + 0x58]
movups xmm6, xmmword [esp + 0x38]
movups xmm7, xmmword [esp + 0x68]
xor eax, eax
add esp, 0xb8
pop ebp
pop edi
pop esi
pop ebx
pop ecx
pop edx
ret
cmp edi, 1
je 0x10005fd5
mov eax, 1
cpuid
mov dword [esp + 0x14], ecx
test dl, 1
je 0x10005322
mov ecx, 2
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test edx, 0x8000
je 0x10005340
mov ecx, 3
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test edx, 0x800000
je 0x1000535e
mov ecx, 4
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test edx, 0x1000000
jne 0x1000537b
test dword [esp + 0x14], 0x40000000
je 0x1000551f
xor edx, edx
jmp 0x10005505
mov ecx, 5
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test edx, 0x2000000
je 0x100053af
mov ecx, 6
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test edx, 0x4000000
je 0x100053cd
mov ecx, 7
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0x14], 1
je 0x100053ea
mov ecx, 8
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x200
je 0x1000540a
mov ecx, 9
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x400000
je 0x1000542a
mov ecx, 0xc
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x80000
je 0x1000544a
mov ecx, 0xa
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x100000
je 0x1000546a
mov ecx, 0xb
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x800000
je 0x1000548a
mov ecx, 0xd
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0x14], 2
je 0x100054a7
mov ecx, 0xe
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x2000000
je 0x100054c7
mov ecx, 0xf
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 7
xor ecx, ecx
cpuid
mov esi, ebx
mov ebp, ecx
mov dword [esp + 0x10], edx
test esi, 0x20000000
je 0x100054f6
mov ecx, 0x24
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x40000000
je 0x10005530
mov edx, 1
mov ecx, 0x12
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test edx, edx
jne 0x10005530
mov eax, 7
xor ecx, ecx
cpuid
mov dword [esp + 0x10], edx
mov ebp, ecx
mov esi, ebx
mov eax, esi
and eax, 0x108
cmp eax, 0x108
jne 0x10005554
mov ecx, 0x14
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 4
je 0x10005572
mov ecx, 0x36
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x10
je 0x10005590
mov ecx, 0x16
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x800
je 0x100055ae
mov ecx, 0x17
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x80000
je 0x100055cc
mov ecx, 0x1d
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x40000
je 0x100055ea
mov ecx, 0x1e
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x1000000
je 0x10005608
mov ecx, 0x32
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 0x80000001
cpuid
test cl, 0x20
je 0x1000562a
mov ecx, 0x15
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 0x80000008
cpuid
test ebx, 0x200
je 0x1000564f
mov ecx, 0x37
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x20
je 0x1000566d
mov ecx, 0x3e
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x80
je 0x1000568b
mov ecx, 0x35
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x100
je 0x100056a9
mov ecx, 0x2e
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x400000
je 0x100056c7
mov ecx, 0x33
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x2000000
je 0x100056e5
mov ecx, 0x3b
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x8000000
je 0x10005703
mov ecx, 0x3c
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x10000000
je 0x10005721
mov ecx, 0x3d
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x20000000
je 0x1000573f
mov ecx, 0x40
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x100000
je 0x1000575f
mov ecx, 0x34
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x40000
je 0x1000577f
mov ecx, 0x38
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 0x14
xor ecx, ecx
cpuid
test bl, 0x10
je 0x100057a3
mov ecx, 0x1b
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x800000
je 0x10005800
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 0x19
xor ecx, ecx
cpuid
test bl, 1
je 0x100057e5
mov ecx, 0x45
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test bl, 4
je 0x10005800
mov ecx, 0x46
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 7
mov ecx, 1
cpuid
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
test eax, 0x400000
je 0x10005831
mov ecx, 0x47
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0x10], 0x20
je 0x1000584e
mov ecx, 0x48
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0xc], 0x4000
je 0x1000586e
mov ecx, 0x49
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 8], 0x80
je 0x1000588e
mov ecx, 0x4b
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 8], 8
je 0x100058ab
mov ecx, 0x4e
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0xc], 0x8000
je 0x100058cb
mov ecx, 0x55
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0xc], 0x200000
je 0x100058eb
mov ecx, 0x58
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 8], 0x8000000
je 0x1000590b
mov ecx, 0x59
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 8], 0x80000
je 0x1000592b
mov ecx, 0x5a
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test bl, 2
je 0x10005946
mov ecx, 0x5b
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0xc], 0x80000
je 0x100059ab
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, 0x24
xor ecx, ecx
cpuid
test ebx, 0x20000
je 0x1000598d
mov ecx, 0x56
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebx, 0x40000
je 0x100059ab
mov ecx, 0x57
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x8000000
je 0x10005f27
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
xor ecx, ecx
xgetbv
mov edx, eax
mov ecx, edx
and ecx, 0x60000
cmp ecx, 0x60000
jne 0x10005aa4
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x1000000
je 0x10005aa4
mov ecx, 0x42
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 8], 0x200000
je 0x10005a44
mov ecx, 0x4f
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0xc], 0x100
je 0x10005a64
mov ecx, 0x50
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x2000000
je 0x10005a84
mov ecx, 0x43
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x400000
je 0x10005aa4
mov ecx, 0x44
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, edx
and eax, 6
cmp eax, 6
jne 0x10005f27
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x10000000
je 0x10005b41
mov ecx, 0x10
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x200
je 0x10005b06
mov ecx, 0x2f
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x400
je 0x10005b24
mov ecx, 0x30
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 8], 2
je 0x10005b41
mov ecx, 0x52
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x20000000
je 0x10005b61
mov ecx, 0x11
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x20
je 0x10005c37
mov ecx, 0x18
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0xc], 0x10
je 0x10005ba0
mov ecx, 0x4a
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 8], 0x800000
je 0x10005bc0
mov ecx, 0x4c
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0xc], 0x20
je 0x10005bdd
mov ecx, 0x4d
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 8], 1
je 0x10005bfa
mov ecx, 0x51
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 8], 4
je 0x10005c17
mov ecx, 0x53
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0xc], 0x400
je 0x10005c37
mov ecx, 0x54
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x14], 0x1000
je 0x10005c57
mov ecx, 0x13
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, edx
and eax, 0x18
cmp eax, 0x18
jne 0x10005c95
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x4000
je 0x10005c95
mov ecx, 0x25
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 8], 0x10
je 0x10005cb2
mov ecx, 0x41
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
and edx, 0xe0
cmp edx, 0xe0
jne 0x10005f27
mov ecx, 1
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x10000
je 0x10005cf8
mov ecx, 0x19
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x10000000
je 0x10005d16
mov ecx, 0x23
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x8000000
je 0x10005d34
mov ecx, 0x21
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x4000000
je 0x10005d52
mov ecx, 0x22
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x20000
je 0x10005d70
mov ecx, 0x1a
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x40000000
je 0x10005d8e
mov ecx, 0x26
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
mov eax, esi
and eax, 0x80000000
cmp eax, 0x80000000
jne 0x10005db2
mov ecx, 0x27
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test esi, 0x200000
je 0x10005dd0
mov ecx, 0x1f
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 2
je 0x10005dee
mov ecx, 0x28
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x4000
je 0x10005e0c
mov ecx, 0x2b
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0x10], 4
je 0x10005e29
mov ecx, 0x2a
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 0x10], 8
je 0x10005e46
mov ecx, 0x29
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x1000
je 0x10005e64
mov ecx, 0x2c
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x40
je 0x10005e7e
mov ecx, 0x2d
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test ebp, 0x800
je 0x10005e98
mov ecx, 0x31
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test byte [esp + 8], 0x20
je 0x10005eb1
mov ecx, 0x3f
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x800000
je 0x10005ecd
mov ecx, 0x3a
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
jne 0x10005ee9
test dword [esp + 0x10], 0x100
je 0x10005f27
mov ecx, 0x39
lea eax, [esp + 0x18]
call fcn.10004690
test eax, eax
je 0x10005f27
movups xmm0, xmmword [esp + 0x88]
movups xmm1, xmmword [esp + 0x78]
movups xmm2, xmmword [esp + 0xa8]
movups xmm3, xmmword [esp + 0x98]
movups xmm4, xmmword [esp + 0x48]
movups xmm5, xmmword [esp + 0x58]
movups xmm6, xmmword [esp + 0x38]
movups xmm7, xmmword [esp + 0x68]
add esp, 0xb8
pop ebp
pop edi
pop esi
pop ebx
pop ecx
pop edx
ret
push str.INTEL_ISA_DISABLE
call fcn.10016b07
add esp, 4
test eax, eax
jne 0x10005f9b
cmp edi, 1
je 0x10005f8b
mov eax, 0x10042740
lea ecx, [esp + 0x18]
call fcn.10004660
movups xmm0, xmmword [esp + 0x88]
movups xmm1, xmmword [esp + 0x78]
movups xmm2, xmmword [esp + 0xa8]
movups xmm3, xmmword [esp + 0x98]
movups xmm4, xmmword [esp + 0x48]
movups xmm5, xmmword [esp + 0x58]
movups xmm6, xmmword [esp + 0x38]
movups xmm7, xmmword [esp + 0x68]
xor eax, eax
add esp, 0xb8
pop ebp
pop edi
pop esi
pop ebx
pop ecx
pop edx
ret
mov eax, 0x10042730
lea ecx, [esp + 0x18]
call fcn.10004660
jmp 0x10005f3d
lea edx, [esp + 0x28]
call fcn.100044e0
test eax, eax
jle 0x10005f38
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x2c]
not eax
mov ecx, dword [esp + 0x30]
not edx
mov ebx, dword [esp + 0x34]
not ecx
not ebx
and dword [esp + 0x18], eax
and dword [esp + 0x1c], edx
and dword [esp + 0x20], ecx
and dword [esp + 0x24], ebx
jmp 0x10005f38
cmp dword [esp + 0xc], 0x756e6547
jne 0x100052a5
cmp dword [esp + 0x14], 0x49656e69
jne 0x100052a5
cmp dword [esp + 0x10], 0x6c65746e
jne 0x100052a5
jmp 0x100052fc