Function at 0x405b26
Capabilities:
Check os version

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0xa0
mov eax, dword [0x42a060]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetVersionExA]
push edi
xor eax, ebp
push 0x26
mov dword [ebp + 0x74], eax
pop ecx
xor eax, eax
lea edi, [ebp - 0x24]
rep stosd dword es:[edi], eax
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], 0x9c
call esi
mov edi, eax
test edi, edi
jne 0x405b75
lea eax, [ebp - 0x28]
push eax
mov dword [ebp - 0x28], 0x94
call esi
test eax, eax
je 0x405d9a
mov eax, dword [ebp - 0x18]
sub eax, 0
je 0x405d9e
dec eax
mov ecx, dword [ebp - 0x24]
je 0x405d4f
dec eax
jne 0x405d9a
cmp ecx, 6
jne 0x405c25
cmp dword [ebp - 0x20], 1
jne 0x405bbe
cmp byte [ebp + 0x72], 1
jne 0x405d9a
call fcn.0042302b
neg al
sbb eax, eax
neg eax
add eax, 0x2b
jmp 0x405da1
cmp dword [ebp - 0x20], 0
jne 0x405d9a
cmp byte [ebp + 0x72], 1
jne 0x405c11
call fcn.0042302b
test al, al
movzx eax, word [ebp + 0x6c]
je 0x405bf6
dec eax
je 0x405bef
dec eax
je 0x405be8
push 0x26
jmp 0x405da0
push 0x2a
jmp 0x405da0
push 0x27
jmp 0x405da0
dec eax
je 0x405c0a
dec eax
je 0x405c03
push 0x1d
jmp 0x405da0
push 0x29
jmp 0x405da0
push 0x1e
jmp 0x405da0
call fcn.0042302b
neg al
sbb eax, eax
and eax, 9
add eax, 0x1f
jmp 0x405da1
cmp ecx, 5
jne 0x405d10
cmp dword [ebp - 0x20], 2
jne 0x405c9c
cmp byte [ebp + 0x72], 1
jne 0x405c59
movzx eax, word [ebp + 0x6c]
dec eax
je 0x405c52
dec eax
je 0x405c4b
push 0x20
jmp 0x405da0
push 0x22
jmp 0x405da0
push 0x21
jmp 0x405da0
call fcn.0042302b
test al, al
movzx eax, word [ebp + 0x6c]
je 0x405c81
dec eax
je 0x405c7a
dec eax
je 0x405c73
push 0x23
jmp 0x405da0
push 0x25
jmp 0x405da0
push 0x24
jmp 0x405da0
dec eax
je 0x405c95
dec eax
je 0x405c8e
push 0x1a
jmp 0x405da0
push 0x1c
jmp 0x405da0
push 0x1b
jmp 0x405da0
cmp dword [ebp - 0x20], 1
jne 0x405ccf
test edi, edi
je 0x405cb3
movzx eax, word [ebp + 0x6c]
dec eax
je 0x405cc8
dec eax
je 0x405cc1
dec eax
je 0x405cba
push 0x16
jmp 0x405da0
push 0x19
jmp 0x405da0
push 0x18
jmp 0x405da0
push 0x17
jmp 0x405da0
cmp dword [ebp - 0x20], 0
jne 0x405d9a
test edi, edi
je 0x405ced
movzx eax, word [ebp + 0x6c]
dec eax
je 0x405d09
dec eax
je 0x405d02
dec eax
je 0x405cfb
dec eax
je 0x405cf4
push 0x11
jmp 0x405da0
push 0x15
jmp 0x405da0
push 0x14
jmp 0x405da0
push 0x13
jmp 0x405da0
push 0x12
jmp 0x405da0
cmp ecx, 4
ja 0x405d9a
test edi, edi
je 0x405d33
movzx eax, word [ebp + 0x6c]
dec eax
je 0x405d4b
dec eax
je 0x405d47
dec eax
je 0x405d43
dec eax
je 0x405d3f
dec eax
je 0x405d3b
dec eax
je 0x405d37
push 0xa
jmp 0x405da0
push 0x10
jmp 0x405da0
push 0xf
jmp 0x405da0
push 0xe
jmp 0x405da0
push 0xd
jmp 0x405da0
push 0xc
jmp 0x405da0
push 0xb
jmp 0x405da0
cmp ecx, 4
jne 0x405d9a
cmp dword [ebp - 0x20], 0
jne 0x405d76
cmp dword [ebp - 0x1c], 0x3b6
jbe 0x405d67
push 5
jmp 0x405da0
xor eax, eax
cmp byte [ebp - 0x13], 0x43
sete al
lea eax, [eax + eax + 4]
jmp 0x405da1
cmp dword [ebp - 0x20], 0xa
jne 0x405d90
cmp byte [ebp - 0x13], 0x41
je 0x405d8c
cmp byte [ebp - 0x13], 0x42
je 0x405d8c
push 7
jmp 0x405da0
push 8
jmp 0x405da0
cmp dword [ebp - 0x20], 0x5a
jne 0x405d9a
push 9
jmp 0x405da0
push 0x2e
jmp 0x405da0
push 4
pop eax
mov ecx, dword [ebp + 0x74]
pop edi
xor ecx, ebp
pop esi
call fcn.00423ac2
add ebp, 0x78
leave
ret