Function at 0x4ce1a6
Capabilities:
Check os version
Get system information on windows

Disassembly:
push 0x3e4
mov eax, 0x6675cc
call fcn.005b47af
mov edi, ecx
push 0x24
xor ebx, ebx
lea eax, [ebp - 0x1e0]
push ebx
push eax
call fcn.005f3980
add esp, 0xc
lea eax, [ebp - 0x1e0]
push eax
call dword [sym.imp.KERNEL32.DLL_GetNativeSystemInfo]
xor eax, eax
mov dword [ebp - 0x54], 7
mov esi, 0x69cff0
mov dword [ebp - 0x58], ebx
push esi
mov word [ebp - 0x68], ax
call fcn.005ff18e
pop ecx
push eax
push esi
lea ecx, [ebp - 0x68]
call fcn.0040a315
cmp word [ebp - 0x1e0], 9
mov dword [ebp - 4], ebx
jne 0x4ce225
mov esi, 0x69cff8
mov byte [edi + 1], 1
push esi
call fcn.005ff18e
pop ecx
push eax
push esi
lea ecx, [ebp - 0x68]
call fcn.0040a315
mov esi, 0x114
lea eax, [ebp - 0x1ac]
push esi
push ebx
push eax
call fcn.005f3980
add esp, 0xc
mov dword [ebp - 0x1ac], esi
lea eax, [ebp - 0x1ac]
push eax
call dword [sym.imp.KERNEL32.DLL_GetVersionExW]
mov ecx, dword [ebp - 0x1a8]
push 2
pop eax
cmp ecx, 0xa
jb 0x4ce265
mov dword [edi + 4], 3
jmp 0x4ce28d
cmp ecx, 6
jb 0x4ce285
cmp dword [ebp - 0x1a4], eax
jb 0x4ce277
mov dword [edi + 4], eax
jmp 0x4ce28d
cmp ecx, 6
jne 0x4ce285
mov dword [edi + 4], 1
jmp 0x4ce28d
cmp ecx, 5
jne 0x4ce28d
mov dword [edi + 4], ebx
cmp dword [ebp - 0x54], 8
lea eax, [ebp - 0x68]
cmovae eax, dword [ebp - 0x68]
push eax
push dword [ebp - 0x1a4]
lea eax, [ebp - 0x50]
push ecx
push str._d._d__s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x14
cmp word [ebp - 0x50], 0
jne 0x4ce2bd
mov eax, ebx
jmp 0x4ce2c7
lea eax, [ebp - 0x50]
push eax
call fcn.005ff18e
pop ecx
push eax
lea eax, [ebp - 0x50]
lea esi, [edi + 8]
push eax
mov ecx, esi
call fcn.0040a315
push 1
push 3
lea ecx, [ebp - 0x290]
call fcn.004078ff
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 1
push eax
mov ecx, edi
call fcn.004d0a9d
push 0x6869a8
push esi
push 0x68a804
push eax
lea eax, [ebp - 0x280]
mov byte [ebp - 4], 2
push str.OS:
push eax
call fcn.0040710b
pop ecx
pop ecx
push eax
call fcn.00410ade
pop ecx
pop ecx
push eax
call fcn.0040710b
pop ecx
pop ecx
push eax
call fcn.00410ade
pop ecx
pop ecx
push eax
call fcn.0040710b
pop ecx
pop ecx
push ebx
push 1
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], 1
call fcn.00409de7
lea eax, [ebp - 0x290]
mov ebx, str.D:_build6c589d3ff8507062_src_systemSystemInfo.cpp
push eax
push str.SystemInfo::create
push 0x3e
push ebx
push 1
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0
call fcn.0040843a
lea eax, [ebp - 0x80]
mov ecx, edi
push eax
call fcn.004ce7d2
lea esi, [edi + 0x20]
push eax
mov ecx, esi
call fcn.0040c133
push 0
push 1
lea ecx, [ebp - 0x80]
call fcn.00409de7
push 1
push 3
lea ecx, [ebp - 0x340]
call fcn.004078ff
mov byte [ebp - 4], 3
push esi
lea eax, [ebp - 0x330]
push str.UID:
push eax
call fcn.0040710b
pop ecx
pop ecx
push eax
call fcn.00410ade
pop ecx
pop ecx
lea eax, [ebp - 0x340]
push eax
push str.SystemInfo::create
push 0x42
push ebx
push 1
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
lea ecx, [ebp - 0x340]
mov byte [ebp - 4], 0
call fcn.0040843a
lea eax, [ebp - 0x80]
mov ecx, edi
push eax
call fcn.004ce554
lea esi, [edi + 0x38]
push eax
mov ecx, esi
call fcn.0040c133
push 0
push 1
lea ecx, [ebp - 0x80]
call fcn.00409de7
push 1
push 3
lea ecx, [ebp - 0x3f0]
call fcn.004078ff
push esi
lea eax, [ebp - 0x3e0]
mov byte [ebp - 4], 4
push str.HWID:
push eax
call fcn.0040710b
pop ecx
pop ecx
push eax
call fcn.00410ade
pop ecx
pop ecx
lea eax, [ebp - 0x3f0]
push eax
push str.SystemInfo::create
push 0x46
push ebx
push 1
call fcn.0040b02b
mov ecx, eax
call fcn.0041875b
xor ebx, ebx
lea ecx, [ebp - 0x3f0]
mov byte [ebp - 4], bl
call fcn.0040843a
lea eax, [ebp - 0x1b0]
mov dword [ebp - 0x1b0], ebx
push eax
call dword [sym.imp.KERNEL32.DLL_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.DLL_IsWow64Process]
test eax, eax
je 0x4ce49c
cmp dword [ebp - 0x1b0], ebx
je 0x4ce49c
mov byte [edi + 2], 1
push str.PATH
call fcn.0062a3af
pop ecx
test eax, eax
je 0x4ce53c
push eax
lea ecx, [ebp - 0x80]
call fcn.004078a3
xor eax, eax
mov byte [ebp - 4], 5
mov esi, 0x690050
mov dword [ebp - 0x84], 7
push esi
mov dword [ebp - 0x88], ebx
mov word [ebp - 0x98], ax
call fcn.005ff18e
pop ecx
push eax
push esi
lea ecx, [ebp - 0x98]
call fcn.0040a315
lea eax, [ebp - 0x98]
mov byte [ebp - 4], 6
push eax
lea eax, [ebp - 0x80]
push eax
lea eax, [ebp - 0x1bc]
push eax
call fcn.00426b70
add esp, 0xc
lea ecx, [edi + 0x50]
push eax
call fcn.0046defc
lea ecx, [ebp - 0x1bc]
call fcn.00409ec4
push ebx
push 1
lea ecx, [ebp - 0x98]
call fcn.00409de7
push ebx
push 1
lea ecx, [ebp - 0x80]
mov byte [ebp - 4], bl
call fcn.00409de7
mov ecx, edi
call fcn.004cdc1f
push ebx
push 1
lea ecx, [ebp - 0x68]
call fcn.00409de7
call fcn.005b4759
ret