Function at 0x42d759
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x140
push ebx
push esi
push edi
push 9
pop ecx
xor eax, eax
lea edi, [ebp - 0x24]
push 0x47
rep stosd dword es:[edi], eax
pop ecx
lea edi, [ebp - 0x140]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x140]
mov dword [ebp - 0x140], 0x11c
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x42d79d
push 1
pop eax
jmp 0x42d92f
push str.GetNativeSystemInfo
push 0x452eec
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
xor esi, esi
cmp eax, esi
je 0x42d7c2
lea ecx, [ebp - 0x24]
push ecx
call eax
jmp 0x42d7cc
lea eax, [ebp - 0x24]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
cmp dword [ebp - 0x130], 2
jne 0x42d915
mov eax, dword [ebp - 0x13c]
cmp eax, 4
jbe 0x42d915
push 1
sub eax, 5
pop ebx
je 0x42d8a2
dec eax
je 0x42d817
sub eax, 4
jne 0x42d915
cmp dword [ebp - 0x138], esi
jne 0x42d840
cmp byte [ebp - 0x26], bl
je 0x42d840
mov esi, str.Windows_10_Server
jmp 0x42d8fe
mov eax, dword [ebp - 0x138]
sub eax, esi
je 0x42d88f
dec eax
je 0x42d87c
dec eax
je 0x42d863
dec eax
je 0x42d84a
dec eax
je 0x42d837
mov esi, str.Unsupported_version_of_Windows
jmp 0x42d8fe
cmp byte [ebp - 0x26], bl
jne 0x42d911
mov esi, str.Windows_10
jmp 0x42d8fe
cmp byte [ebp - 0x26], bl
jne 0x42d859
mov esi, str.Windows_8.1
jmp 0x42d8fe
mov esi, str.Windows_Server_2012_R2
jmp 0x42d8fe
cmp byte [ebp - 0x26], bl
jne 0x42d872
mov esi, str.Windows_8
jmp 0x42d8fe
mov esi, str.Windows_Server_2012
jmp 0x42d8fe
cmp byte [ebp - 0x26], bl
jne 0x42d888
mov esi, str.Windows_7
jmp 0x42d8fe
mov esi, str.Windows_Server_2008_R2
jmp 0x42d8fe
cmp byte [ebp - 0x26], bl
jne 0x42d89b
mov esi, str.Windows_Vista
jmp 0x42d8fe
mov esi, str.Windows_Server_2008
jmp 0x42d8fe
mov eax, dword [ebp - 0x138]
sub eax, esi
je 0x42d8f9
dec eax
je 0x42d8f2
dec eax
jne 0x42d915
push 0x59
call dword [sym.imp.USER32.dll_GetSystemMetrics]
test eax, eax
je 0x42d8c5
mov esi, str.Windows_Server_2003_R2
jmp 0x42d8fe
test byte [ebp - 0x27], 0x20
je 0x42d8d2
mov esi, str.Windows_Storage_Server_2003
jmp 0x42d8fe
test byte [ebp - 0x27], 0x80
je 0x42d8df
mov esi, str.Windows_Home_Server
jmp 0x42d8fe
cmp byte [ebp - 0x26], bl
jne 0x42d8eb
cmp word [ebp - 0x24], 9
je 0x42d8f2
mov esi, str.Windows_Server_2003
jmp 0x42d8fe
mov esi, str.Windows_XP
jmp 0x42d8fe
mov esi, str.Windows_2000
push esi
call dword [sym.imp.MSVCRT.dll_wcslen]
pop ecx
mov ecx, dword [ebp + 8]
push eax
push esi
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int______thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::append_unsigned_short_int_const___unsigned_int_]
mov eax, ebx
jmp 0x42d92f
mov esi, str.Unsupported_version_of_Windows
push esi
call dword [sym.imp.MSVCRT.dll_wcslen]
pop ecx
mov ecx, dword [ebp + 8]
push eax
push esi
call dword [sym.imp.MSVCP60.dll_public:_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int______thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::append_unsigned_short_int_const___unsigned_int_]
xor eax, eax
pop edi
pop esi
pop ebx
leave
ret