Function at 0x475e2c
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 0x4761d0
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 0x47619c
mov eax, dword [ebp - 0x84]
sub eax, 1
jb 0x475eb3
je 0x475f09
dec eax
je 0x475f4f
jmp 0x47619c
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, 0x4761e8
call fcn.0040bc9c
mov edx, dword [ebp - 0x98]
mov eax, esi
call fcn.00405610
mov bl, 1
jmp 0x47619c
mov eax, dword [ebp - 0x8c]
sub eax, 1
jb 0x475f20
sub eax, 9
je 0x475f2e
sub eax, 0x50
je 0x475f3c
jmp 0x475f48
mov eax, esi
mov edx, 0x476200
call fcn.00405610
jmp 0x475f48
mov eax, esi
mov edx, 0x476214
call fcn.00405610
jmp 0x475f48
mov eax, esi
mov edx, 0x476228
call fcn.00405610
mov bl, 2
jmp 0x47619c
cmp dword [ebp - 0x90], 5
jne 0x475f74
cmp dword [ebp - 0x8c], 0
jne 0x475f74
mov eax, esi
mov edx, 0x47623c
call fcn.00405610
mov bl, 4
jmp 0x47619c
cmp dword [ebp - 0x90], 5
jne 0x475fc3
cmp dword [ebp - 0x8c], 1
jne 0x475fc3
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, 0x476254
call fcn.0040bc9c
mov edx, dword [ebp - 0xac]
mov eax, esi
call fcn.00405610
mov bl, 5
jmp 0x47619c
cmp dword [ebp - 0x90], 5
jne 0x476012
cmp dword [ebp - 0x8c], 2
jne 0x476012
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, 0x47626c
call fcn.0040bc9c
mov edx, dword [ebp - 0xb8]
mov eax, esi
call fcn.00405610
mov bl, 6
jmp 0x47619c
cmp dword [ebp - 0x90], 6
jne 0x476061
cmp dword [ebp - 0x8c], 0
jne 0x476061
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, 0x476284
call fcn.0040bc9c
mov edx, dword [ebp - 0xbc]
mov eax, esi
call fcn.00405610
mov bl, 7
jmp 0x47619c
cmp dword [ebp - 0x90], 6
jne 0x4760b0
cmp dword [ebp - 0x8c], 1
jne 0x4760b0
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, 0x4762a0
call fcn.0040bc9c
mov edx, dword [ebp - 0xc0]
mov eax, esi
call fcn.00405610
mov bl, 8
jmp 0x47619c
mov edi, dword [ebp - 0x90]
cmp edi, 6
jne 0x476101
cmp dword [ebp - 0x8c], 2
jne 0x476101
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, 0x4762b8
call fcn.0040bc9c
mov edx, dword [ebp - 0xc4]
mov eax, esi
call fcn.00405610
mov bl, 9
jmp 0x47619c
cmp edi, 4
ja 0x476153
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, 0x4762d0
call fcn.0040bc9c
mov edx, dword [ebp - 0xc8]
mov eax, esi
call fcn.00405610
mov bl, 3
jmp 0x47619c
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, 0x4762ec
call fcn.0040bc9c
mov edx, dword [ebp - 0xcc]
mov eax, esi
call fcn.00405610
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4761d7
lea eax, [ebp - 0xcc]
mov edx, 6
call fcn.004055e0
lea eax, [ebp - 0xac]
call fcn.004055bc
lea eax, [ebp - 0x98]
call fcn.004055bc
ret