Function at 0x413b30
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x12c
mov eax, dword [0x44f014]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, ecx
push esi
push edi
mov dword [ebp - 0x12c], ebx
mov esi, 4
mov dword [ebx], 0
mov dword [ebx + 4], 0
mov dword [ebx + 8], 0
nop word [eax + eax]
push pe_nt_image_headers32
lea eax, [ebp - 0x124]
mov dword [ebp - 0x128], 0x11c
push 0
push eax
call fcn.00418fc0
add esp, 0xc
xor eax, eax
mov word [ebp - 0x14], ax
mov dword [ebp - 0x12], eax
mov word [ebp - 0xe], ax
push 3
push 0x20
push 3
push 1
push 3
push 2
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
movzx ecx, si
lea eax, [ebp - 0x128]
mov dword [ebp - 0x124], ecx
xor ecx, ecx
push 0x23
push eax
mov dword [ebp - 0x120], 0
mov word [ebp - 0x14], cx
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
test eax, eax
je 0x413bfb
inc esi
cmp esi, 0xf
jl 0x413b70
jmp 0x413c00
lea eax, [esi - 1]
mov dword [ebx], eax
mov edi, 1
nop word [eax + eax]
movzx esi, word [ebx]
lea eax, [ebp - 0x124]
push pe_nt_image_headers32
push 0
push eax
mov dword [ebp - 0x128], 0x11c
call fcn.00418fc0
add esp, 0xc
xor eax, eax
mov word [ebp - 0x14], ax
mov dword [ebp - 0x12], eax
mov word [ebp - 0xe], ax
push 3
push 0x20
push 3
push 1
push 3
push 2
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
mov ecx, esi
mov dword [ebp - 0x124], ecx
push eax
movzx ecx, di
lea eax, [ebp - 0x128]
mov dword [ebp - 0x120], ecx
xor ecx, ecx
push 0x23
push eax
mov word [ebp - 0x14], cx
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
test eax, eax
je 0x413c9c
inc edi
cmp edi, 0xa
jl 0x413c10
jmp 0x413ca2
lea eax, [edi - 1]
mov dword [ebx + 4], eax
mov ebx, 1
nop word [eax + eax]
mov eax, dword [ebp - 0x12c]
push pe_nt_image_headers32
push 0
mov dword [ebp - 0x128], 0x11c
movzx edi, word [eax + 4]
movzx esi, word [eax]
lea eax, [ebp - 0x124]
push eax
call fcn.00418fc0
add esp, 0xc
xor eax, eax
mov word [ebp - 0x14], ax
mov dword [ebp - 0x12], eax
mov word [ebp - 0xe], ax
push 3
push 0x20
push 3
push 1
push 3
push 2
push eax
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
call dword [sym.imp.KERNEL32.dll_VerSetConditionMask]
push edx
push eax
mov ecx, esi
mov word [ebp - 0x14], bx
mov dword [ebp - 0x124], ecx
lea eax, [ebp - 0x128]
push 0x23
mov ecx, edi
push eax
mov dword [ebp - 0x120], ecx
call dword [sym.imp.KERNEL32.dll_VerifyVersionInfoW]
test eax, eax
je 0x413d54
inc ebx
cmp ebx, 0xa
jl 0x413cb0
mov al, 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00416ec0
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x12c]
lea eax, [ebx - 1]
pop edi
pop esi
pop ebx
mov dword [ecx + 8], eax
mov al, 1
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.00416ec0
mov esp, ebp
pop ebp
ret