Function at 0x519680
Capabilities:
Get system information on windows
Make suspicious ntquerysysteminformation call

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x2c
push ebx
push esi
push edi
push dword [0x633f6c]
push 0x28
call sym.SystemInformer.exe_PhCreateObject
mov edi, eax
push 0x200
push 4
push dword [0x633f94]
mov dword [edi], 4
mov dword [edi + 4], 0x500ab0
mov dword [edi + 8], 0x500ad0
mov dword [edi + 0xc], 0x80
call dword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov ecx, dword [edi + 0xc]
shl ecx, 2
push ecx
push 0xff
push eax
mov dword [edi + 0x10], eax
call fcn.00580b30
mov eax, dword [edi + 0xc]
add esp, 0xc
mov dword [edi + 0x14], eax
lea eax, [eax + eax*2]
shl eax, 2
push eax
push 4
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov esi, dword ds:[ebp + 8]
mov dword [edi + 0x18], eax
mov dword [edi + 0x1c], 0
mov dword [edi + 0x20], 0xffffffff
mov dword [edi + 0x24], 0
cmp esi, 4
jne 0x51986d
push 0x800
push esi
push dword [0x633f94]
mov dword [esp + 0x1c], 0x800
call dword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov ebx, eax
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x14]
push ebx
push 0x4d
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
mov esi, eax
cmp esi, 0xc0000004
jne 0x51979f
push ebx
push 0
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
push dword [esp + 0x10]
push 4
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov ebx, eax
lea eax, [esp + 0x10]
push eax
push dword [esp + 0x14]
push ebx
push 0x4d
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
mov esi, eax
nop
test esi, esi
js 0x5197cb
mov edx, dword [ebp + 0x14]
mov ecx, ebx
push edi
push dword [ebp + 0x18]
lfence
call fcn.00519260
push ebx
push 0
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
jmp 0x519919
push 0x800
push 4
push dword [0x633f94]
mov dword [esp + 0x20], 0x800
call dword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov ebx, eax
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x18]
push ebx
push 0xb
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
mov esi, eax
cmp esi, 0xc0000004
jne 0x51983f
push ebx
push 0
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
push dword [esp + 0x14]
push 4
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlAllocateHeap]
mov ebx, eax
lea eax, [esp + 0x14]
push eax
push dword [esp + 0x18]
push ebx
push 0xb
call dword [sym.imp.ntdll.dll_NtQuerySystemInformation]
mov esi, eax
nop
test esi, esi
js 0x519919
mov edx, dword [ebp + 0x14]
mov ecx, ebx
push edi
push dword [ebp + 0x18]
lfence
call fcn.00518fc0
push ebx
push 0
push dword [0x633f94]
call dword [sym.imp.ntdll.dll_RtlFreeHeap]
jmp 0x519919
mov ecx, dword [ebp + 0xc]
xor bl, bl
test ecx, ecx
jne 0x5198a9
push esi
push 0x410
lea eax, [ebp + 0xc]
push eax
call sym.SystemInformer.exe_PhOpenProcess
test eax, eax
jns 0x5198a4
push esi
push 0x1010
lea eax, [ebp + 0xc]
push eax
lfence
call sym.SystemInformer.exe_PhOpenProcess
mov esi, eax
test esi, esi
js 0x519919
mov ecx, dword [ebp + 0xc]
mov bl, 1
mov eax, dword [ebp + 0x14]
mov edx, 0x5158a0
mov dword [esp + 0x24], eax
mov eax, dword [ebp + 0x18]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x24]
mov dword [esp + 0x1c], eax
lea eax, [esp + 0x18]
push ecx
push eax
mov dword [esp + 0x34], 1
mov dword [esp + 0x38], edi
mov dword [esp + 0x3c], 0
mov dword [esp + 0x20], 0x518dc0
mov dword [esp + 0x28], 2
call fcn.00515700
mov edx, dword [ebp + 0x10]
mov esi, eax
test dl, 3
je 0x51990c
mov ecx, dword [ebp + 0xc]
push edi
push dword [ebp + 0x18]
push dword [ebp + 0x14]
call fcn.005194a0
test bl, bl
je 0x519919
push dword [ebp + 0xc]
call dword [sym.imp.ntdll.dll_NtClose]
lea ecx, [edi - 8]
or eax, 0xffffffff
lock xadd dword [ecx + 4], eax
dec eax
jne 0x51992c
call fcn.004fbd80
pop edi
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x14