Function at 0x41e6a0
Capabilities:
Contain obfuscated stackstrings
Get memory capacity
Get number of processor cores
Parse pe header
Reference wmi statements

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49c1aa
mov eax, dword fs:[0]
push eax
sub esp, 0x2dc
mov eax, dword [0x544070]
xor eax, ebp
mov dword [ebp - 0x14], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x224], ecx
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x1ac]
push 7
xor eax, eax
mov dword [ebp - 0x198], 7
push 0x4b1e90
mov dword [ebp - 0x19c], 0
mov word [ebp - 0x1ac], ax
call fcn.00403c50
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x194]
push 7
xor eax, eax
mov dword [ebp - 0x180], 7
push str.Version
mov dword [ebp - 0x184], 0
mov word [ebp - 0x194], ax
call fcn.00403c50
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x17c]
push 0xa
xor eax, eax
mov dword [ebp - 0x168], 7
push str.CSDVersion
mov dword [ebp - 0x16c], 0
mov word [ebp - 0x17c], ax
call fcn.00403c50
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x164]
push 0xb
xor eax, eax
mov dword [ebp - 0x150], 7
push str.BuildNumber
mov dword [ebp - 0x154], 0
mov word [ebp - 0x164], ax
call fcn.00403c50
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x14c]
push 0xc
xor eax, eax
mov dword [ebp - 0x138], 7
push str.Manufacturer
mov dword [ebp - 0x13c], 0
mov word [ebp - 0x14c], ax
call fcn.00403c50
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x134]
push 0x10
xor eax, eax
mov dword [ebp - 0x120], 7
push str.WindowsDirectory
mov dword [ebp - 0x124], 0
mov word [ebp - 0x134], ax
call fcn.00403c50
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x11c]
push 6
xor eax, eax
mov dword [ebp - 0x108], 7
push 0x4b2b78
mov dword [ebp - 0x10c], 0
mov word [ebp - 0x11c], ax
call fcn.00403c50
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x104]
push 0xf
xor eax, eax
mov dword [ebp - 0xf0], 7
push str.CurrentTimeZone
mov dword [ebp - 0xf4], 0
mov word [ebp - 0x104], ax
call fcn.00403c50
mov byte [ebp - 4], 8
lea ecx, [ebp - 0xec]
push 0xa
xor eax, eax
mov dword [ebp - 0xd8], 7
push str.BootDevice
mov dword [ebp - 0xdc], 0
mov word [ebp - 0xec], ax
call fcn.00403c50
mov byte [ebp - 4], 9
lea eax, [ebp - 0xd4]
mov byte [ebp - 0x1e0], 0
lea ecx, [ebp - 0x260]
push dword [ebp - 0x1e0]
mov dword [ebp - 0x260], 0
push eax
lea eax, [ebp - 0x1ac]
mov dword [ebp - 0x25c], 0
push eax
mov dword [ebp - 0x258], 0
call fcn.00413530
push fcn.00404f50
push 9
push 0x18
lea eax, [ebp - 0x1ac]
mov byte [ebp - 4], 0xb
push eax
call fcn.0045c4f2
push 0xc
xor eax, eax
mov dword [ebp - 0x78], 7
push str.Manufacturer
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x7c], 0
mov word [ebp - 0x8c], ax
call fcn.00403c50
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x74]
push 5
xor eax, eax
mov dword [ebp - 0x60], 7
push 0x4b1ee4
mov dword [ebp - 0x64], 0
mov word [ebp - 0x74], ax
call fcn.00403c50
mov byte [ebp - 4], 0xd
lea ecx, [ebp - 0x5c]
push 0xa
xor eax, eax
mov dword [ebp - 0x48], 7
push str.SystemType
mov dword [ebp - 0x4c], 0
mov word [ebp - 0x5c], ax
call fcn.00403c50
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x44]
mov byte [ebp - 0x1e0], 0
lea ecx, [ebp - 0x254]
push dword [ebp - 0x1e0]
mov dword [ebp - 0x254], 0
push eax
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x250], 0
push eax
mov dword [ebp - 0x24c], 0
call fcn.00413530
push fcn.00404f50
push 3
push 0x18
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x10
push eax
call fcn.0045c4f2
push 7
xor eax, eax
mov dword [ebp - 0x18], 7
push 0x4b1e90
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
mov byte [ebp - 4], 0x11
lea eax, [ebp - 0x14]
mov byte [ebp - 0x1e0], 0
lea ecx, [ebp - 0x248]
push dword [ebp - 0x1e0]
mov dword [ebp - 0x248], 0
push eax
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x244], 0
push eax
mov dword [ebp - 0x240], 0
call fcn.00413530
push fcn.00404f50
push 1
push 0x18
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x13
push eax
call fcn.0045c4f2
push 0xc
xor eax, eax
mov dword [ebp - 0x78], 7
push str.Manufacturer
lea ecx, [ebp - 0x8c]
mov dword [ebp - 0x7c], 0
mov word [ebp - 0x8c], ax
call fcn.00403c50
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x74]
push 0x11
xor eax, eax
mov dword [ebp - 0x60], 7
push str.SMBIOSBIOSVersion
mov dword [ebp - 0x64], 0
mov word [ebp - 0x74], ax
call fcn.00403c50
mov byte [ebp - 4], 0x15
lea ecx, [ebp - 0x5c]
push 0xb
xor eax, eax
mov dword [ebp - 0x48], 7
push str.ReleaseDate
mov dword [ebp - 0x4c], 0
mov word [ebp - 0x5c], ax
call fcn.00403c50
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x44]
mov byte [ebp - 0x1e0], 0
lea ecx, [ebp - 0x23c]
push dword [ebp - 0x1e0]
mov dword [ebp - 0x23c], 0
push eax
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x238], 0
push eax
mov dword [ebp - 0x234], 0
call fcn.00413530
push fcn.00404f50
push 3
push 0x18
lea eax, [ebp - 0x8c]
mov byte [ebp - 4], 0x18
push eax
call fcn.0045c4f2
mov dword [ebp - 0xc0], 7
push 4
xor eax, eax
mov dword [ebp - 0xc4], 0
push 0x4b1ecc
lea ecx, [ebp - 0xd4]
mov word [ebp - 0xd4], ax
call fcn.00403c50
mov byte [ebp - 4], 0x19
lea ecx, [ebp - 0xbc]
push 0xd
xor eax, eax
mov dword [ebp - 0xa8], 7
push str.NumberOfCores
mov dword [ebp - 0xac], 0
mov word [ebp - 0xbc], ax
call fcn.00403c50
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0xa4]
push 0x19
xor eax, eax
mov dword [ebp - 0x90], 7
push str.NumberOfLogicalProcessors
mov dword [ebp - 0x94], 0
mov word [ebp - 0xa4], ax
call fcn.00403c50
mov byte [ebp - 4], 0x1b
lea eax, [ebp - 0x8c]
mov byte [ebp - 0x1e0], 0
lea ecx, [ebp - 0x230]
push dword [ebp - 0x1e0]
mov dword [ebp - 0x230], 0
push eax
lea eax, [ebp - 0xd4]
mov dword [ebp - 0x22c], 0
push eax
mov dword [ebp - 0x228], 0
call fcn.00413530
push fcn.00404f50
push 3
push 0x18
lea eax, [ebp - 0xd4]
mov byte [ebp - 4], 0x1d
push eax
call fcn.0045c4f2
push 0
push 0
mov dword [ebp - 0x220], 0
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0
call fcn.004141d0
mov dword [ebp - 0x21c], eax
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0
mov dword [ebp - 0x20c], 0
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x220]
push 8
mov dword [ebp - 0x220], 0x3f800000
call fcn.00413b70
mov byte [ebp - 4], 0x20
lea ecx, [ebp - 0x2c]
push 0x23
xor eax, eax
mov dword [ebp - 0x18], 7
push str.SELECT__FROM_Win32_OperatingSystem
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x220]
mov byte [ebp - 4], 0x21
push eax
lea eax, [ebp - 0x260]
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0043cce0
mov byte [ebp - 4], 0x20
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41ece5
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0
push 0
mov dword [ebp - 0x2c0], 0
mov dword [ebp - 0x2bc], 0
mov dword [ebp - 0x2b8], 0
call fcn.004141d0
mov dword [ebp - 0x2bc], eax
mov dword [ebp - 0x2b4], 0
mov dword [ebp - 0x2b0], 0
mov dword [ebp - 0x2ac], 0
mov byte [ebp - 4], 0x23
lea ecx, [ebp - 0x2c0]
push 8
mov dword [ebp - 0x2c0], 0x3f800000
call fcn.00413b70
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x2c]
push 0x22
xor eax, eax
mov dword [ebp - 0x18], 7
push str.SELECT__FROM_Win32_ComputerSystem
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2c0]
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x254]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0043cce0
mov byte [ebp - 4], 0x24
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41eda9
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0
push 0
mov dword [ebp - 0x2e0], 0
mov dword [ebp - 0x2dc], 0
mov dword [ebp - 0x2d8], 0
call fcn.004141d0
mov dword [ebp - 0x2dc], eax
mov dword [ebp - 0x2d4], 0
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0
mov byte [ebp - 4], 0x27
lea ecx, [ebp - 0x2e0]
push 8
mov dword [ebp - 0x2e0], 0x3f800000
call fcn.00413b70
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x2c]
push 0x1c
xor eax, eax
mov dword [ebp - 0x18], 7
push str.SELECT__FROM_Win32_TimeZone
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2e0]
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x248]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0043cce0
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41ee6d
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0
push 0
mov dword [ebp - 0x2a0], 0
mov dword [ebp - 0x29c], 0
mov dword [ebp - 0x298], 0
call fcn.004141d0
mov dword [ebp - 0x29c], eax
mov dword [ebp - 0x294], 0
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x28c], 0
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x2a0]
push 8
mov dword [ebp - 0x2a0], 0x3f800000
call fcn.00413b70
mov byte [ebp - 4], 0x2c
lea ecx, [ebp - 0x2c]
push 0x18
xor eax, eax
mov dword [ebp - 0x18], 7
push str.SELECT__FROM_Win32_BIOS
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2a0]
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x23c]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0043cce0
mov byte [ebp - 4], 0x2c
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41ef31
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0
push 0
mov dword [ebp - 0x280], 0
mov dword [ebp - 0x27c], 0
mov dword [ebp - 0x278], 0
call fcn.004141d0
mov dword [ebp - 0x27c], eax
mov dword [ebp - 0x274], 0
mov dword [ebp - 0x270], 0
mov dword [ebp - 0x26c], 0
mov byte [ebp - 4], 0x2f
lea ecx, [ebp - 0x280]
push 8
mov dword [ebp - 0x280], 0x3f800000
call fcn.00413b70
mov byte [ebp - 4], 0x30
lea ecx, [ebp - 0x2c]
push 0x1d
xor eax, eax
mov dword [ebp - 0x18], 7
push str.SELECT__FROM_Win32_Processor
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x280]
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp + 0xc]
push eax
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x2c]
push eax
call fcn.0043cce0
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41eff1
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
xorps xmm0, xmm0
mov byte [ebp - 0x1f4], 0
movq qword [ebp - 0x1ec], xmm0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.0041e300
mov edi, eax
mov byte [ebp - 4], 0x34
push 0x18
mov byte [ebp - 0x3c], 3
call fcn.0045bdbe
mov esi, eax
add esp, 4
lea eax, [ebp - 0x1fd]
mov dword [ebp - 0x1f8], esi
mov dword [ebp - 0x1fc], eax
mov dword [ebp - 0x1e0], esi
mov dword [ebp - 0x1e4], esi
mov byte [ebp - 4], 0x36
test esi, esi
je 0x41f082
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [esi + 0x14], 0xf
cmp dword [esi + 0x14], 0x10
mov dword [esi + 0x10], 0
jb 0x41f071
mov eax, dword [esi]
jmp 0x41f073
mov eax, esi
push 0xffffffffffffffff
push 0
push edi
mov ecx, esi
mov byte [eax], 0
call fcn.00402d80
mov dword [ebp - 0x34], esi
push str.uuid
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x37
call fcn.004132b0
mov edi, eax
mov eax, dword [ebp - 0x30]
mov cl, byte [edi]
mov byte [edi], 3
mov edx, dword [edi + 0xc]
mov byte [ebp - 0x3c], cl
mov ecx, dword [edi + 8]
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x3c]
mov dword [edi + 8], esi
mov dword [edi + 0xc], eax
mov dword [ebp - 0x30], edx
call fcn.004119c0
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x18]
cmp eax, 0x10
jb 0x41f0d9
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00402eb0
push 7
xor eax, eax
mov dword [ebp - 0x18], 7
push 0x4b1e90
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x38
push eax
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x220]
call fcn.00413720
mov eax, dword [ebp - 0x1e0]
cmp eax, dword [ebp - 0x21c]
jne 0x41f14e
lea eax, [ebp - 0x2c]
push ecx
mov dword [ebp - 0x1e0], eax
lea eax, [ebp - 0x1e0]
push eax
push ecx
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x220]
call fcn.004137d0
mov eax, dword [ebp - 0x1fc]
add eax, 0x20
lea ecx, [ebp - 0x3c]
push eax
call fcn.0040eb90
push str.OS_Name
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x39
call fcn.004132b0
mov cl, byte [ebp - 0x3c]
mov esi, eax
mov dl, byte [esi]
mov byte [esi], cl
mov eax, dword [ebp - 0x34]
mov byte [ebp - 0x3c], dl
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xc], eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x30], edx
call fcn.004119c0
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41f1b3
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 7
xor eax, eax
mov dword [ebp - 0x18], 7
push str.Version
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x3a
push eax
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x220]
call fcn.00413720
mov eax, dword [ebp - 0x1e0]
cmp eax, dword [ebp - 0x21c]
jne 0x41f228
lea eax, [ebp - 0x2c]
push ecx
mov dword [ebp - 0x1e0], eax
lea eax, [ebp - 0x1e0]
push eax
push ecx
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x220]
call fcn.004137d0
mov eax, dword [ebp - 0x1fc]
add eax, 0x20
lea ecx, [ebp - 0x3c]
push eax
call fcn.0040eb90
push str.OS_Version
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x3b
call fcn.004132b0
mov cl, byte [ebp - 0x3c]
mov esi, eax
mov dl, byte [esi]
mov byte [esi], cl
mov eax, dword [ebp - 0x34]
mov byte [ebp - 0x3c], dl
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xc], eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x30], edx
call fcn.004119c0
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41f28d
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0xa
xor eax, eax
mov dword [ebp - 0x18], 7
push str.CSDVersion
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x3c
push eax
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x220]
call fcn.00413720
mov eax, dword [ebp - 0x1e0]
cmp eax, dword [ebp - 0x21c]
jne 0x41f302
lea eax, [ebp - 0x2c]
push ecx
mov dword [ebp - 0x1e0], eax
lea eax, [ebp - 0x1e0]
push eax
push ecx
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x220]
call fcn.004137d0
mov eax, dword [ebp - 0x1fc]
add eax, 0x20
lea ecx, [ebp - 0x3c]
push eax
call fcn.0040eb90
push str.OS_CSD_Version
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x3d
call fcn.004132b0
mov cl, byte [ebp - 0x3c]
mov esi, eax
mov dl, byte [esi]
mov byte [esi], cl
mov eax, dword [ebp - 0x34]
mov byte [ebp - 0x3c], dl
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xc], eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x30], edx
call fcn.004119c0
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41f367
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0xb
xor eax, eax
mov dword [ebp - 0x18], 7
push str.BuildNumber
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x3e
push eax
lea eax, [ebp - 0x1e0]
push eax
lea ecx, [ebp - 0x220]
call fcn.00413720
mov eax, dword [ebp - 0x1e0]
cmp eax, dword [ebp - 0x21c]
jne 0x41f3dc
lea eax, [ebp - 0x2c]
push ecx
mov dword [ebp - 0x1e0], eax
lea eax, [ebp - 0x1e0]
push eax
push ecx
lea eax, [ebp - 0x1fc]
push eax
lea ecx, [ebp - 0x220]
call fcn.004137d0
mov eax, dword [ebp - 0x1fc]
add eax, 0x20
lea ecx, [ebp - 0x3c]
push eax
call fcn.0040eb90
push str.OS_Build_Number
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x3f
call fcn.004132b0
mov cl, byte [ebp - 0x3c]
mov esi, eax
mov dl, byte [esi]
mov byte [esi], cl
mov eax, dword [ebp - 0x34]
mov byte [ebp - 0x3c], dl
mov ecx, dword [esi + 8]
mov edx, dword [esi + 0xc]
mov dword [esi + 8], eax
mov eax, dword [ebp - 0x30]
mov dword [esi + 0xc], eax
mov dword [ebp - 0x34], ecx
lea ecx, [ebp - 0x3c]
mov dword [ebp - 0x30], edx
call fcn.004119c0
mov byte [ebp - 4], 0x33
mov eax, dword [ebp - 0x18]
cmp eax, 8
jb 0x41f441
inc eax
lea ecx, [ebp - 0x2c]
push eax
push dword [ebp - 0x2c]
call fcn.00403050
push 0xc
xor eax, eax
mov dword [ebp - 0x18], 7
push str.Manufacturer
lea ecx, [ebp - 0x2c]
mov dword [ebp - 0x1c], 0
mov word [ebp - 0x2c], ax
call fcn.00403c50
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x40
push eax
lea ecx, [ebp - 0x220]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.OS_Manufacturer
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x41
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x40
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.Manufacturer
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x42
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push ecx
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x43
call fcn.0041fc70
mov ecx, eax
mov byte [ebp - 4], 0x42
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push 0x4b1ee4
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x44
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.System_Model
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x45
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x44
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.SystemType
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x46
push eax
lea ecx, [ebp - 0x2c0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.System_Type
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x47
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x46
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.WindowsDirectory
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x48
push eax
lea ecx, [ebp - 0x220]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.Windows_Directory
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x49
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x48
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.BootDevice
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x4a
push eax
lea ecx, [ebp - 0x220]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.Boot_Device
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x4b
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x4a
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push 0x4b2b78
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x4c
push eax
lea ecx, [ebp - 0x220]
call fcn.00412f50
lea ecx, [ebp - 0x1dc]
push ecx
mov ecx, eax
call fcn.0041b1c0
mov edx, eax
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x1c4]
call fcn.0041e1f0
sub esp, 0x10
mov byte [ebp - 4], 0x4e
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040cf90
push ecx
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x4f
call fcn.0041fda0
mov ecx, eax
mov byte [ebp - 4], 0x4e
call fcn.00410ab0
lea ecx, [ebp - 0x1c4]
call fcn.00402bb0
lea ecx, [ebp - 0x1dc]
call fcn.00402bb0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push 0x4b1e90
lea ecx, [ebp - 0x44]
call fcn.00415370
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x50
push eax
lea ecx, [ebp - 0x2e0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.Time_Zone
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x51
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x50
call fcn.00410ab0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.Manufacturer
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x52
push eax
lea ecx, [ebp - 0x2a0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.BIOS_Manufacturer
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x53
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x52
call fcn.00410ab0
mov byte [ebp - 4], 0x33
lea ecx, [ebp - 0x2c]
call fcn.00404f50
push str.SMBIOSBIOSVersion
lea ecx, [ebp - 0x44]
call fcn.00415370
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [ebp - 0x2a0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.BIOS_Version
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x55
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x54
call fcn.00410ab0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.ReleaseDate
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x56
push eax
lea ecx, [ebp - 0x2a0]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.BIOS_Release_Date
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x57
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x56
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push 0x4b1ecc
lea ecx, [ebp - 0x44]
call fcn.00415370
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x58
push eax
lea ecx, [ebp - 0x280]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.CPU_Name
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x59
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x58
call fcn.00410ab0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.NumberOfCores
lea ecx, [ebp - 0x2c]
call fcn.00415370
lea eax, [ebp - 0x2c]
mov byte [ebp - 4], 0x5a
push eax
lea ecx, [ebp - 0x280]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push str.CPU_cores
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x5b
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x5a
call fcn.00410ab0
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 0x33
call fcn.00404f50
push str.NumberOfLogicalProcessors
lea ecx, [ebp - 0x44]
call fcn.00415370
lea eax, [ebp - 0x44]
mov byte [ebp - 4], 0x5c
push eax
lea ecx, [ebp - 0x280]
call fcn.00412f50
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
push eax
call fcn.0040eb90
push ecx
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x5d
call fcn.0041fed0
mov ecx, eax
mov byte [ebp - 4], 0x5c
call fcn.00410ab0
lea ecx, [ebp - 0x44]
mov byte [ebp - 4], 0x33
call fcn.00404f50
lea ecx, [ebp + 0xc]
call fcn.0041e510
sub esp, 0x10
mov ecx, esp
mov dword [ebp - 0x1e4], esp
mov byte [ecx], 4
mov byte [ecx + 8], al
push str.is_laptop
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x5e
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00410ab0
lea eax, [ebp - 0x84]
mov dword [ebp - 0x84], 0x40
push eax
call dword [sym.imp.KERNEL32.dll_GlobalMemoryStatusEx]
test eax, eax
je 0x41fbbd
mov ecx, dword [ebp - 0x7c]
sub esp, 0x10
mov edx, dword [ebp - 0x78]
mov eax, esp
mov dword [ebp - 0x1e4], esp
mov byte [eax], 5
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
push str.Installed_Physical_Memory
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x5f
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00410ab0
mov ecx, dword [ebp - 0x74]
sub esp, 0x10
mov edx, dword [ebp - 0x70]
mov eax, esp
mov dword [ebp - 0x1e4], esp
mov byte [eax], 5
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
push str.Available_Physical_Memory
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x60
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00410ab0
mov ecx, dword [ebp - 0x5c]
sub esp, 0x10
mov edx, dword [ebp - 0x58]
mov eax, esp
mov dword [ebp - 0x1e4], esp
mov byte [eax], 5
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
push ecx
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x61
call fcn.00420000
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00410ab0
mov ecx, dword [ebp - 0x54]
sub esp, 0x10
mov edx, dword [ebp - 0x50]
mov eax, esp
mov dword [ebp - 0x1e4], esp
mov byte [eax], 5
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
push ecx
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x62
call fcn.00420130
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00410ab0
mov ecx, dword [ebp - 0x6c]
sub esp, 0x10
mov edx, dword [ebp - 0x68]
mov eax, esp
mov dword [ebp - 0x1e4], esp
mov byte [eax], 5
mov dword [eax + 8], ecx
mov dword [eax + 0xc], edx
push str.Page_File_Space
lea ecx, [ebp - 0x1f4]
mov byte [ebp - 4], 0x63
call fcn.004132b0
mov ecx, eax
mov byte [ebp - 4], 0x33
call fcn.00410ab0
sub esp, 0x10
mov dword [ebp - 4], 0x32
lea eax, [ebp - 0x1f4]
mov ecx, esp
push eax
call fcn.0040eb90
mov ecx, dword [ebp - 0x224]
lea ecx, [ecx + 0x20]
call fcn.00410ab0
lea ecx, [ebp - 0x1f4]
call fcn.004119c0
lea ecx, [ebp - 0x280]
call fcn.00413f50
lea ecx, [ebp - 0x2a0]
call fcn.00413f50
lea ecx, [ebp - 0x2e0]
call fcn.00413f50
lea ecx, [ebp - 0x2c0]
call fcn.00413f50
lea ecx, [ebp - 0x220]
call fcn.00413f50
lea ecx, [ebp - 0x230]
call fcn.00412fa0
lea ecx, [ebp - 0x23c]
call fcn.00412fa0
lea ecx, [ebp - 0x248]
call fcn.00412fa0
lea ecx, [ebp - 0x254]
call fcn.00412fa0
lea ecx, [ebp - 0x260]
call fcn.00412fa0
lea ecx, [ebp + 0xc]
call fcn.00406f50
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0045bdad
mov esp, ebp
pop ebp
ret 0xc
mov eax, dword [0x56f364]
cmp dword [eax], 0
je 0x41faf8
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push str.GlobalMemoryStatusEx____0x_08x_
push str._CI__::_collect::Summary::Start____
push 0
call fcn.00406440
add esp, 0x10
jmp 0x41faf8