Function at 0x41d090
Capabilities:
Check os version

Disassembly:
mov eax, dword [0x4e8ccc]
push ebx
push esi
xor esi, esi
push edi
mov edi, ecx
test eax, eax
je 0x41d0b2
mov ecx, 0x47
mov esi, 0x4e8b90
rep movsd dword es:[edi], dword [esi]
pop edi
mov esi, eax
pop esi
pop ebx
ret
push str.RtlGetVersion
push str.ntdll.dll
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
push 0x11c
push 0
push edi
mov ebx, eax
call fcn.00453a70
add esp, 0xc
mov dword [edi], 0x11c
test ebx, ebx
je 0x41d0ec
push edi
call ebx
test eax, eax
je 0x41d0fb
push edi
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x41d0fb
pop edi
pop esi
pop ebx
ret
cmp dword [edi + 0x10], 2
jne 0x41d3be
mov eax, dword [edi + 4]
cmp eax, 0xa
jne 0x41d114
cmp dword [edi + 8], esi
ja 0x41d116
cmp eax, eax
jbe 0x41d121
mov esi, 0xff
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 0xa
jne 0x41d15d
cmp dword [edi + 8], esi
jne 0x41d13f
cmp byte [edi + 0x11a], 1
jne 0x41d13f
mov esi, 0x96
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 0xa
jne 0x41d15d
cmp dword [edi + 8], esi
jne 0x41d15d
cmp byte [edi + 0x11a], 1
je 0x41d15d
mov esi, 0xa0
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], 3
jne 0x41d180
cmp byte [edi + 0x11a], 1
je 0x41d180
mov esi, 0x8d
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], 3
jne 0x41d1a3
cmp byte [edi + 0x11a], 1
jne 0x41d1a3
mov esi, 0x83
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], 2
jne 0x41d1c6
cmp byte [edi + 0x11a], 1
je 0x41d1c6
mov esi, 0x8c
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], 2
jne 0x41d1e9
cmp byte [edi + 0x11a], 1
jne 0x41d1e9
mov esi, 0x82
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], 1
jne 0x41d214
cmp byte [edi + 0x11a], 1
jne 0x41d214
cmp word [edi + 0x114], 1
pop edi
sbb esi, esi
add esi, 0x79
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], 1
jne 0x41d23f
cmp byte [edi + 0x11a], 1
je 0x41d23f
cmp word [edi + 0x114], 1
pop edi
sbb esi, esi
add esi, 0x71
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], esi
jne 0x41d265
cmp byte [edi + 0x11a], 1
je 0x41d265
cmp word [edi + 0x114], 2
pop edi
sbb esi, esi
add esi, 0x6f
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 6
jne 0x41d2a6
cmp dword [edi + 8], esi
jne 0x41d2a6
cmp byte [edi + 0x11a], 1
jne 0x41d2a6
lea esi, [eax + 0x5e]
movzx eax, word [edi + 0x114]
cmp eax, 1
jne 0x41d292
mov esi, 0x66
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 2
jb 0x41d3be
mov esi, 0x67
pop edi
mov eax, esi
pop esi
pop ebx
ret
mov ebx, dword [sym.imp.USER32.dll_GetSystemMetrics]
cmp eax, 5
jne 0x41d2f6
cmp dword [edi + 8], 2
jne 0x41d2f6
cmp byte [edi + 0x11a], 1
je 0x41d2f6
push 0x59
call ebx
test eax, eax
jne 0x41d2f6
lea esi, [eax + 0x5a]
movzx eax, word [edi + 0x114]
cmp eax, 1
jne 0x41d2e2
mov esi, 0x5c
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 2
jb 0x41d3be
mov esi, 0x5e
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp dword [edi + 4], 5
jne 0x41d343
cmp dword [edi + 8], 2
jne 0x41d343
cmp byte [edi + 0x11a], 1
je 0x41d343
push 0x59
call ebx
test eax, eax
je 0x41d343
movzx eax, word [edi + 0x114]
mov esi, 0x5b
cmp eax, 1
jne 0x41d32f
mov esi, 0x5d
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 2
jb 0x41d3be
mov esi, 0x5f
pop edi
mov eax, esi
pop esi
pop ebx
ret
mov eax, dword [edi + 4]
cmp eax, 5
jne 0x41d3be
cmp dword [edi + 8], 2
jne 0x41d37e
cmp byte [edi + 0x11a], 1
jne 0x41d37e
lea esi, [eax + 0x46]
movzx eax, word [edi + 0x114]
cmp eax, 1
je 0x41d398
cmp eax, 2
je 0x41d3a8
cmp eax, 3
jb 0x41d3be
mov esi, 0x54
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 5
jne 0x41d3be
cmp dword [edi + 8], 1
jne 0x41d3be
lea esi, [eax + 0x46]
movzx eax, word [edi + 0x114]
cmp eax, 1
jne 0x41d3a3
mov esi, 0x50
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 2
jne 0x41d3b3
mov esi, 0x52
pop edi
mov eax, esi
pop esi
pop ebx
ret
cmp eax, 3
mov ecx, 0x54
cmovae esi, ecx
pop edi
mov eax, esi
pop esi
pop ebx
ret