Function at 0x140014450
Capabilities:
Get system information on windows
Inspect section memory permissions

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rbp
mov qword [rsp + 0x20], rsi
push rdi
push r14
push r15
sub rsp, 0x70
mov rax, qword [0x140083010]
xor rax, rsp
mov qword [rsp + 0x60], rax
mov rsi, rcx
xor edi, edi
xor edx, edx
add rcx, 4
xor bpl, bpl
lea r8d, [rdi + 0x74]
call sub.VCRUNTIME140.dll_memset
lea rcx, [rsp + 0x30]
call qword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [rsp + 0x50]
lea r8, [0x140076aa8]
mov dword [rsi + 0x64], eax
mov r9d, edi
xor eax, eax
xor ecx, ecx
cpuid
mov r15d, eax
mov dword [rsi + 4], ebx
mov dword [rsi + 8], edx
mov r10d, ecx
mov dword [rsi + 0xc], ecx
mov r11d, edx
nop dword [rax]
nop word [rax + rax]
cmp dword [r8 + 4], r10d
mov ecx, edi
sete dl
cmp dword [r8], r11d
sete al
and dl, al
cmp dword [r8 - 4], ebx
movzx eax, dl
cmove ecx, eax
test cl, cl
jne 0x1400144fe
inc r9d
add r8, 0x10
cmp r9d, 4
jb 0x1400144d0
jmp 0x140014511
mov eax, r9d
lea rcx, [0x140076aa0]
add rax, rax
mov eax, dword [rcx + rax*8]
mov dword [rsi + 0x54], eax
cmp r15d, 1
jb 0x140014735
xor ecx, ecx
mov eax, 1
cpuid
mov r8d, ecx
mov r10d, eax
mov ecx, eax
shr r10d, 4
shr ecx, 8
and r10d, 0xf
and ecx, 0xf
mov dword [rsi + 0x5c], r10d
mov r9d, eax
mov dword [rsi + 0x58], ecx
and eax, 0xf
mov dword [rsi + 0x60], eax
cmp ecx, 0xf
jne 0x14001456f
mov eax, r9d
shr eax, 0x14
movzx ecx, al
mov eax, r9d
shr eax, 0xc
add ecx, 0xf
and eax, 0xf0
mov dword [rsi + 0x58], ecx
add eax, r10d
mov dword [rsi + 0x5c], eax
movzx eax, bl
mov dword [rsi + 0x7c], eax
mov eax, ebx
shr eax, 8
movzx ecx, al
shr r9d, 0xc
shr ebx, 0x10
and r9d, 3
shl ecx, 3
movzx eax, bl
mov dword [rsi + 0x78], r9d
mov dword [rsi + 0x80], ecx
mov dword [rsi + 0x84], eax
test r8b, 1
je 0x1400145ab
or dword [rsi + 0x68], 0x100000
test r8b, 2
je 0x1400145b8
or dword [rsi + 0x68], 0x80000000
test r8b, 8
je 0x1400145c5
or dword [rsi + 0x68], 0x4000000
bt r8d, 9
jae 0x1400145d3
or dword [rsi + 0x68], 0x200000
bt r8d, 0xd
jae 0x1400145de
or dword [rsi + 0x68], 0x40
bt r8d, 0x13
jae 0x1400145ec
or dword [rsi + 0x68], 0x800000
bt r8d, 0x14
jae 0x1400145fa
or dword [rsi + 0x68], 0x1000000
bt r8d, 0x16
jae 0x140014608
or dword [rsi + 0x68], 0x8000000
bt r8d, 0x17
jae 0x140014616
or dword [rsi + 0x68], 0x10000000
bt r8d, 0x19
jae 0x140014624
or dword [rsi + 0x68], 0x40000000
bt r8d, 0x1a
jae 0x14001462f
or dword [rsi + 0x6c], 8
bt r8d, 0x1b
jae 0x14001463a
or dword [rsi + 0x6c], 0x10
bt r8d, 0x1e
jae 0x140014645
or dword [rsi + 0x6c], 1
test dl, 0x10
je 0x14001464e
or dword [rsi + 0x68], 4
bt edx, 8
jae 0x140014658
or dword [rsi + 0x68], 0x20
bt edx, 0xf
jae 0x140014662
or dword [rsi + 0x68], 0x10
bt edx, 0x13
jae 0x14001466f
or dword [rsi + 0x68], 0x80
bt edx, 0x17
jae 0x14001467c
or dword [rsi + 0x68], 0x4000
bt edx, 0x18
jae 0x140014689
or dword [rsi + 0x68], 0x1000
bt edx, 0x19
jae 0x140014696
or dword [rsi + 0x68], 0x48000
bt edx, 0x1a
jae 0x1400146a3
or dword [rsi + 0x68], 0xc0000
and edx, 0x10000000
je 0x1400146af
or dword [rsi + 0x68], 2
cmp dword [rsi + 0x64], 1
jne 0x1400146c6
cmp dword [rsi + 0x54], 2
jne 0x1400146c6
test edx, edx
je 0x1400146c6
mov dword [rsi + 0x64], 2
mov eax, r8d
and eax, 0xc000000
cmp eax, 0xc000000
jne 0x1400146e4
xor ecx, ecx
xgetbv
shl rdx, 0x20
or rdx, rax
mov rdi, rdx
bt r8d, 0x1c
jae 0x140014735
mov eax, edi
and eax, 6
cmp al, 6
jne 0x140014735
mov eax, dword [rsi + 0x6c]
or eax, 0x20
mov dword [rsi + 0x6c], eax
bt r8d, 0xb
jae 0x14001470b
bts eax, 0xa
mov dword [rsi + 0x6c], eax
bt r8d, 0xe
jae 0x140014719
bts eax, 8
mov dword [rsi + 0x6c], eax
bt r8d, 0x10
jae 0x140014727
bts eax, 9
mov dword [rsi + 0x6c], eax
bt r8d, 0x1d
jae 0x140014735
bts eax, 7
mov dword [rsi + 0x6c], eax
cmp r15d, 7
jb 0x140014865
xor ecx, ecx
mov eax, 7
cpuid
mov edx, dword [rsi + 0x6c]
test bl, 1
je 0x140014757
bts edx, 0x11
mov dword [rsi + 0x6c], edx
test bl, 8
je 0x140014763
bts edx, 0xb
mov dword [rsi + 0x6c], edx
test bl, 0x10
je 0x14001476f
bts edx, 0xd
mov dword [rsi + 0x6c], edx
bt ebx, 8
jae 0x14001477c
bts edx, 0xc
mov dword [rsi + 0x6c], edx
bt ebx, 9
jae 0x140014789
bts edx, 0x12
mov dword [rsi + 0x6c], edx
bt ebx, 0xb
jae 0x140014796
bts edx, 0xe
mov dword [rsi + 0x6c], edx
mov r8d, ebx
shr r8d, 0xe
and r8b, 1
bt ebx, 0x12
jae 0x1400147ad
or edx, 2
mov dword [rsi + 0x6c], edx
bt ebx, 0x13
jae 0x1400147ba
bts edx, 0xf
mov dword [rsi + 0x6c], edx
bt ebx, 0x17
jae 0x1400147ca
or dword [rsi + 0x68], 0x100
mov edx, dword [rsi + 0x6c]
bt ebx, 0x1d
jae 0x1400147d6
or edx, 4
mov dword [rsi + 0x6c], edx
test cl, 1
je 0x1400147e5
or dword [rsi + 0x68], 0x400
mov edx, dword [rsi + 0x6c]
mov eax, edx
mov ecx, edx
shr eax, 5
test al, 1
je 0x1400147fb
test bl, 0x20
je 0x1400147fb
or ecx, 0x40
mov dword [rsi + 0x6c], ecx
movzx ebp, r8b
bt ebx, 0x10
jae 0x140014865
mov eax, edi
and eax, 0x76
cmp al, 0x76
jne 0x140014865
bts ecx, 0x13
mov dword [rsi + 0x6c], ecx
bt ebx, 0x11
jae 0x140014822
bts ecx, 0x17
mov dword [rsi + 0x6c], ecx
bt ebx, 0x1a
jae 0x14001482f
bts ecx, 0x15
mov dword [rsi + 0x6c], ecx
bt ebx, 0x1b
jae 0x14001483c
bts ecx, 0x16
mov dword [rsi + 0x6c], ecx
bt ebx, 0x1c
jae 0x140014849
bts ecx, 0x14
mov dword [rsi + 0x6c], ecx
bt ebx, 0x1e
jae 0x140014856
bts ecx, 0x18
mov dword [rsi + 0x6c], ecx
movzx ebp, r8b
test ebx, ebx
jns 0x140014865
bts ecx, 0x19
mov dword [rsi + 0x6c], ecx
cmp r15d, 0xd
jb 0x14001488b
test bpl, bpl
je 0x14001488b
xor ecx, ecx
mov eax, reloc.WS2_32.dll_listen
cpuid
and edi, eax
and edi, 0x18
cmp dil, 0x18
jne 0x14001488b
or dword [rsi + 0x6c], 0x10000
xor ecx, ecx
lea r10, [rsi + 0x14]
mov edi, 0x80000004
mov eax, 0x80000000
cpuid
cmp eax, edi
mov r11d, 0x80000001
mov r9, r10
cmovb edi, eax
cmp edi, r11d
jb 0x140014987
nop dword [rax]
nop dword [rax + rax]
xor ecx, ecx
mov eax, r11d
cpuid
cmp r11d, 0x80000001
je 0x1400148f9
lea r8d, [r11 + 0x7ffffffe]
cmp r8d, 2
ja 0x14001497b
mov dword [r9], eax
mov dword [r9 + 4], ebx
mov dword [r9 + 8], ecx
mov dword [r9 + 0xc], edx
add r9, 0x10
jmp 0x14001497b
test cl, 1
je 0x140014905
or dword [rsi + 0x68], 0x800
test cl, 0x20
je 0x140014911
or dword [rsi + 0x68], 0x20000000
test cl, 0x40
je 0x14001491d
or dword [rsi + 0x68], 0x400000
test cl, cl
jns 0x140014928
or dword [rsi + 0x68], 0x2000000
bt ecx, 8
jae 0x140014935
or dword [rsi + 0x68], 0x200
bt edx, 0x14
jae 0x14001493f
or dword [rsi + 0x68], 1
bt edx, 0x15
jae 0x14001494c
or dword [rsi + 0x68], 0x2000
bt edx, 0x16
jae 0x140014959
or dword [rsi + 0x68], 0x8000
bt edx, 0x1b
jae 0x140014963
or dword [rsi + 0x68], 8
bt edx, 0x1e
jae 0x140014970
or dword [rsi + 0x68], 0x28000
test edx, edx
jns 0x14001497b
or dword [rsi + 0x68], 0x10000
inc r11d
cmp r11d, edi
jbe 0x1400148c0
movzx ecx, byte [r10]
xor bl, bl
mov byte [r10], bl
mov rdx, r10
test cl, cl
je 0x1400149c8
cmp cl, 0x20
jne 0x1400149ac
cmp bl, 0x40
je 0x1400149b4
movzx eax, byte [r10 + 1]
sub al, cl
test al, 0xdf
je 0x1400149b4
mov byte [rdx], cl
movzx ebx, cl
inc rdx
movzx ecx, byte [r10 + 1]
inc r10
mov byte [r10], 0
test cl, cl
jne 0x140014997
mov byte [rdx], cl
jmp 0x1400149cc
mov byte [r10], 0
mov rcx, qword [rsp + 0x60]
xor rcx, rsp
call fcn.140014a10
lea r11, [rsp + 0x70]
mov rbx, qword [r11 + 0x28]
mov rbp, qword [r11 + 0x30]
mov rsi, qword [r11 + 0x38]
mov rsp, r11
pop r15
pop r14
pop rdi
ret