Function at 0x4c1e40
Capabilities:
Get system information on windows

Disassembly:
push ebp
mov ebp, esp
push ecx
cmp dword [0x7d90c0], 0
je 0x4c1e53
xor eax, eax
mov esp, ebp
pop ebp
ret
cmp dword [0x7d9048], 0
jne 0x4c1ea2
cmp dword [0x7d900c], 0
mov eax, 0x72f508
mov ecx, 0x72f52c
cmove ecx, eax
movups xmm0, xmmword [ecx + 0xc]
mov eax, dword [ecx + 4]
mov edx, dword [ecx]
movups xmmword [0x7d904c], xmm0
mov dword [0x7d9044], eax
movq xmm0, qword [ecx + 0x1c]
mov eax, dword [ecx + 8]
mov dword [0x7d9040], edx
movq qword [0x7d905c], xmm0
mov dword [0x7d9048], eax
jmp 0x4c1ea8
mov edx, dword [0x7d9040]
push edi
call edx
mov edi, eax
test edi, edi
jne 0x4c230a
push ebx
cmp dword [0x7d900c], eax
jne 0x4c1ec2
xor ebx, ebx
jmp 0x4c1edd
push 2
call dword [0x7d9048]
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x4c1edd
push ebx
call dword [0x7d9050]
add esp, 4
cmp dword [0x7d90cc], 0
push esi
mov dword [0x7d90c8], 1
jne 0x4c2015
cmp dword [0x7d9020], 0
jne 0x4c1f0d
push 0x72f4e8
push 4
call fcn.004c18c0
add esp, 8
cmp dword [0x7d900c], 0
xorps xmm0, xmm0
movups xmmword [0x7defa0], xmm0
movups xmmword [0x7defb0], xmm0
movq qword [0x7defc0], xmm0
je 0x4c1f3f
push 3
call dword [0x7d9048]
add esp, 4
mov dword [0x7defa0], eax
mov ecx, dword [0x7d90a0]
test ecx, ecx
je 0x4c1f94
mov esi, dword [0x7d90a4]
cmp esi, 0x64
jl 0x4c1f94
mov edx, dword [0x7d90a8]
test edx, edx
jle 0x4c1f94
mov dword [0x7defc0], edx
and esi, 0xfffffff8
dec edx
mov dword [0x7d90a4], esi
mov dword [0x7defbc], ecx
test edx, edx
jle 0x4c1f84
lea eax, [ecx + esi]
mov dword [ecx], eax
mov ecx, eax
sub edx, 1
jne 0x4c1f78
lea eax, [ecx + 4]
mov dword [ecx], 0
mov dword [0x7defb8], eax
jmp 0x4c1fbc
mov dword [0x7defb8], 0
mov dword [0x7d90a0], 0
mov dword [0x7d90a4], 0
mov dword [0x7d90a8], 0
cmp dword [0x7d90ac], 0
je 0x4c1fda
cmp dword [0x7d90b0], 0x200
jl 0x4c1fda
cmp dword [0x7d90b4], 1
jge 0x4c1ff8
mov dword [0x7d90ac], 0
mov dword [0x7d90b0], 0
mov dword [0x7d90b4], 0
push dword [0x7d903c]
call dword [0x7d9034]
mov edi, eax
add esp, 4
test edi, edi
je 0x4c2015
mov ecx, dword [0x7d90d4]
jmp 0x4c2041
mov ecx, dword [0x7d90d4]
mov dword [0x7d90cc], 1
test ecx, ecx
jne 0x4c203b
cmp dword [0x7d900c], ecx
jne 0x4c2157
mov dword [0x7d90d4], ecx
inc dword [0x7d90d8]
test ebx, ebx
je 0x4c2055
push ebx
call dword [0x7d9058]
mov ecx, dword [0x7d90d4]
add esp, 4
test edi, edi
jne 0x4c2308
test ecx, ecx
je 0x4c2071
push ecx
call dword [0x7d9050]
mov ecx, dword [0x7d90d4]
add esp, 4
cmp dword [0x7d90c0], 0
jne 0x4c22ab
cmp dword [0x7d90c4], 0
jne 0x4c22ab
push 0x5c
push 0
push 0x7dee38
mov dword [0x7d90c4], 1
call fcn.006f7570
add esp, 0xc
call fcn.004a8590
cmp dword [0x7d90d0], 0
jne 0x4c20e6
mov eax, dword [0x7d9068]
test eax, eax
jne 0x4c20d1
push 0x72e97c
push 0xe
call fcn.004c18c0
mov eax, dword [0x7d9068]
add esp, 8
push dword [0x7d9064]
call eax
mov edi, eax
add esp, 4
test edi, edi
jne 0x4c229b
mov dword [0x7d90d0], 1
call fcn.004c1e40
test eax, eax
jne 0x4c2296
push 0xa
call fcn.004a14c0
add esp, 4
test eax, eax
je 0x4c2296
push eax
call fcn.0045feb0
add esp, 4
mov dword [0x7f5700], 0
xorps xmm0, xmm0
movups xmmword [0x7f56e0], xmm0
push 0x7f56e0
movups xmmword [0x7f56f0], xmm0
call dword [sym.imp.KERNEL32.dll_GetSystemInfo]
call fcn.004c1e40
test eax, eax
jne 0x4c2204
cmp dword [0x7d900c], eax
jne 0x4c2187
xor esi, esi
jmp 0x4c21a2
push 1
call dword [0x7d9048]
add esp, 4
mov ecx, eax
cmp dword [0x7d900c], 0
mov dword [0x7d90d4], ecx
je 0x4c203b
test ecx, ecx
jne 0x4c203b
lea edi, [eax + 7]
jmp 0x4c2041
push 2
call dword [0x7d9048]
mov esi, eax
add esp, 4
test esi, esi
je 0x4c21a2
push esi
call dword [0x7d9050]
add esp, 4
mov edx, dword [0x7dee94]
cmp edx, 0x7d9248
jne 0x4c21b8
mov edx, dword [0x7d9254]
jmp 0x4c21e6
test edx, edx
je 0x4c21e6
mov eax, dword [edx + 0xc]
mov ecx, edx
test eax, eax
je 0x4c21d5
cmp eax, 0x7d9248
je 0x4c21d5
mov ecx, eax
mov eax, dword [ecx + 0xc]
test eax, eax
jne 0x4c21c5
cmp dword [ecx + 0xc], 0x7d9248
jne 0x4c21e6
mov eax, dword [0x7d9254]
mov dword [ecx + 0xc], eax
mov dword [0x7d9254], edx
mov dword [0x7dee94], 0x7d9248
test esi, esi
je 0x4c2204
push esi
call dword [0x7d9058]
add esp, 4
mov esi, dword [0x7d90b4]
xor edi, edi
mov ecx, dword [0x7d90ac]
cmp dword [0x7df20c], edi
je 0x4c228a
mov edx, dword [0x7d90b0]
and edx, 0xfffffff8
mov dword [0x7df1f8], esi
mov dword [ebp - 4], edx
mov dword [0x7df1f0], edx
mov dword [0x7df1f4], esi
cmp esi, 0x5a
jle 0x4c2249
mov dword [0x7df1fc], 0xa
jmp 0x4c2263
mov eax, 0x66666667
imul esi
sar edx, 2
mov eax, edx
inc edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 4]
mov dword [0x7df1fc], eax
xor eax, eax
mov dword [0x7df200], ecx
mov dword [0x7df208], eax
test esi, esi
je 0x4c2284
mov dword [ecx], eax
mov eax, ecx
add ecx, edx
mov dword [0x7df208], eax
sub esi, 1
jne 0x4c2274
mov dword [0x7df204], ecx
mov dword [0x7d90c0], 1
jmp 0x4c229b
mov edi, 7
mov ecx, dword [0x7d90d4]
mov dword [0x7d90c4], 0
test ecx, ecx
je 0x4c22bf
push ecx
call dword [0x7d9058]
mov ecx, dword [0x7d90d4]
add esp, 4
test ebx, ebx
je 0x4c22d3
push ebx
call dword [0x7d9050]
mov ecx, dword [0x7d90d4]
add esp, 4
mov eax, dword [0x7d90d8]
dec eax
mov dword [0x7d90d8], eax
test eax, eax
jg 0x4c22fa
test ecx, ecx
je 0x4c22f0
push ecx
call dword [0x7d904c]
add esp, 4
mov dword [0x7d90d4], 0
test ebx, ebx
je 0x4c2308
push ebx
call dword [0x7d9058]
add esp, 4
pop esi
pop ebx
mov eax, edi
pop edi
mov esp, ebp
pop ebp
ret