Function at 0x531d80
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff34
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0xcc], edx
mov dword [ebp - 0xc8], edx
mov dword [ebp - 0xc4], edx
mov dword [ebp - 0xc0], edx
mov dword [ebp - 0xbc], edx
mov dword [ebp - 0xb8], edx
mov dword [ebp - 0xac], edx
mov dword [ebp - 0x98], edx
mov esi, eax
xor eax, eax
push ebp
push 0x532124
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x94], 0x94
xor ebx, ebx
lea eax, [ebp - 0x94]
push eax
call sub.kernel32.dll_GetVersionExA
test eax, eax
je 0x5320f0
mov eax, dword [ebp - 0x84]
sub eax, 1
jb 0x531e07
je 0x531e5d
dec eax
je 0x531ea3
jmp 0x5320f0
lea eax, [ebp - 0x98]
push eax
mov eax, dword [ebp - 0x90]
mov dword [ebp - 0xa8], eax
mov byte [ebp - 0xa4], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0xa8]
mov ecx, 1
mov eax, 0x53213c
call fcn.0040c130
mov edx, dword [ebp - 0x98]
mov eax, esi
call fcn.004056ec
mov bl, 1
jmp 0x5320f0
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x531e74
sub eax, 9
je 0x531e82
sub eax, 0x50
je 0x531e90
jmp 0x531e9c
mov eax, esi
mov edx, 0x532154
call fcn.004056ec
jmp 0x531e9c
mov eax, esi
mov edx, 0x532168
call fcn.004056ec
jmp 0x531e9c
mov eax, esi
mov edx, 0x53217c
call fcn.004056ec
mov bl, 2
jmp 0x5320f0
cmp dword [ebp - 0x90], 5
jne 0x531ec8
cmp dword [ebp - 0x8c], 0
jne 0x531ec8
mov eax, esi
mov edx, 0x532190
call fcn.004056ec
mov bl, 4
jmp 0x5320f0
cmp dword [ebp - 0x90], 5
jne 0x531f17
cmp dword [ebp - 0x8c], 1
jne 0x531f17
lea eax, [ebp - 0xac]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x5321a8
call fcn.0040c130
mov edx, dword [ebp - 0xac]
mov eax, esi
call fcn.004056ec
mov bl, 5
jmp 0x5320f0
cmp dword [ebp - 0x90], 5
jne 0x531f66
cmp dword [ebp - 0x8c], 2
jne 0x531f66
lea eax, [ebp - 0xb8]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x5321c0
call fcn.0040c130
mov edx, dword [ebp - 0xb8]
mov eax, esi
call fcn.004056ec
mov bl, 6
jmp 0x5320f0
cmp dword [ebp - 0x90], 6
jne 0x531fb5
cmp dword [ebp - 0x8c], 0
jne 0x531fb5
lea eax, [ebp - 0xbc]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x5321d8
call fcn.0040c130
mov edx, dword [ebp - 0xbc]
mov eax, esi
call fcn.004056ec
mov bl, 7
jmp 0x5320f0
cmp dword [ebp - 0x90], 6
jne 0x532004
cmp dword [ebp - 0x8c], 1
jne 0x532004
lea eax, [ebp - 0xc0]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x5321f4
call fcn.0040c130
mov edx, dword [ebp - 0xc0]
mov eax, esi
call fcn.004056ec
mov bl, 8
jmp 0x5320f0
mov edi, dword [ebp - 0x90]
cmp edi, 6
jne 0x532055
cmp dword [ebp - 0x8c], 2
jne 0x532055
lea eax, [ebp - 0xc4]
push eax
lea eax, [ebp - 0x80]
mov dword [ebp - 0xb4], eax
mov byte [ebp - 0xb0], 6
lea edx, [ebp - 0xb4]
xor ecx, ecx
mov eax, 0x53220c
call fcn.0040c130
mov edx, dword [ebp - 0xc4]
mov eax, esi
call fcn.004056ec
mov bl, 9
jmp 0x5320f0
cmp edi, 4
ja 0x5320a7
lea eax, [ebp - 0xc8]
push eax
mov dword [ebp - 0xa8], edi
mov byte [ebp - 0xa4], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0xa8]
mov ecx, 1
mov eax, 0x532224
call fcn.0040c130
mov edx, dword [ebp - 0xc8]
mov eax, esi
call fcn.004056ec
mov bl, 3
jmp 0x5320f0
lea eax, [ebp - 0xcc]
push eax
mov dword [ebp - 0xa8], edi
mov byte [ebp - 0xa4], 0
mov eax, dword [ebp - 0x8c]
mov dword [ebp - 0xa0], eax
mov byte [ebp - 0x9c], 0
lea edx, [ebp - 0xa8]
mov ecx, 1
mov eax, 0x532240
call fcn.0040c130
mov edx, dword [ebp - 0xcc]
mov eax, esi
call fcn.004056ec
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x53212b
lea eax, [ebp - 0xcc]
mov edx, 6
call fcn.004056bc
lea eax, [ebp - 0xac]
call fcn.00405698
lea eax, [ebp - 0x98]
call fcn.00405698
ret