Function at 0x469690
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff38
push ebx
push esi
push edi
xor edx, 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 0x4699df
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x94], 0x94
mov bl, 8
lea eax, [ebp - 0x94]
push eax
call sub.kernel32.dll_GetVersionExA
test eax, eax
je 0x4699ab
mov eax, dword [ebp - 0x84]
sub eax, 1
jb 0x469711
je 0x469767
dec eax
je 0x4697ad
jmp 0x4699ab
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, 0x4699f8
call fcn.0040ab60
mov edx, dword [ebp - 0x98]
mov eax, esi
call fcn.00404dfc
xor ebx, ebx
jmp 0x4699ab
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x46977e
sub eax, 9
je 0x46978c
sub eax, 0x50
je 0x46979a
jmp 0x4697a6
mov eax, esi
mov edx, 0x469a10
call fcn.00404dfc
jmp 0x4697a6
mov eax, esi
mov edx, 0x469a24
call fcn.00404dfc
jmp 0x4697a6
mov eax, esi
mov edx, 0x469a38
call fcn.00404dfc
mov bl, 1
jmp 0x4699ab
cmp dword [ebp - 0x90], 5
jne 0x4697d2
cmp dword [ebp - 0x8c], 0
jne 0x4697d2
mov eax, esi
mov edx, 0x469a4c
call fcn.00404dfc
mov bl, 3
jmp 0x4699ab
cmp dword [ebp - 0x90], 5
jne 0x469821
cmp dword [ebp - 0x8c], 1
jne 0x469821
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, 0x469a64
call fcn.0040ab60
mov edx, dword [ebp - 0xac]
mov eax, esi
call fcn.00404dfc
mov bl, 4
jmp 0x4699ab
cmp dword [ebp - 0x90], 5
jne 0x469870
cmp dword [ebp - 0x8c], 2
jne 0x469870
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, 0x469a7c
call fcn.0040ab60
mov edx, dword [ebp - 0xb8]
mov eax, esi
call fcn.00404dfc
mov bl, 5
jmp 0x4699ab
cmp dword [ebp - 0x90], 6
jne 0x4698bf
cmp dword [ebp - 0x8c], 0
jne 0x4698bf
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, 0x469a94
call fcn.0040ab60
mov edx, dword [ebp - 0xbc]
mov eax, esi
call fcn.00404dfc
mov bl, 6
jmp 0x4699ab
mov edi, dword [ebp - 0x90]
cmp edi, 6
jne 0x469910
cmp dword [ebp - 0x8c], 1
jne 0x469910
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, 0x469ab0
call fcn.0040ab60
mov edx, dword [ebp - 0xc0]
mov eax, esi
call fcn.00404dfc
mov bl, 7
jmp 0x4699ab
cmp edi, 4
ja 0x469962
lea eax, [ebp - 0xc4]
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, 0x469ac8
call fcn.0040ab60
mov edx, dword [ebp - 0xc4]
mov eax, esi
call fcn.00404dfc
mov bl, 2
jmp 0x4699ab
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, 0x469ae4
call fcn.0040ab60
mov edx, dword [ebp - 0xc8]
mov eax, esi
call fcn.00404dfc
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4699e6
lea eax, [ebp - 0xc8]
mov edx, 5
call fcn.00404dcc
lea eax, [ebp - 0xac]
call fcn.00404da8
lea eax, [ebp - 0x98]
call fcn.00404da8
ret