Function at 0x416846
Capabilities:
Check os version

Disassembly:
push ebp
lea ebp, [esp - 0x78]
sub esp, 0x120
mov eax, dword [0x43c07c]
xor eax, ebp
mov dword [ebp + 0x74], eax
push ebx
push esi
push edi
push 0x118
xor ebx, ebx
lea eax, [ebp - 0xa4]
push ebx
push eax
call fcn.00423730
mov esi, dword [sym.imp.KERNEL32.dll_GetVersionExW]
add esp, 0xc
lea eax, [ebp - 0xa8]
push eax
mov dword [ebp - 0xa8], 0x11c
call esi
mov edi, eax
cmp edi, ebx
jne 0x4168b2
lea eax, [ebp - 0xa8]
push eax
mov dword [ebp - 0xa8], 0x114
call esi
test eax, eax
jne 0x4168b2
push 0x2e
jmp 0x416b0a
mov eax, dword [ebp - 0x98]
sub eax, ebx
je 0x416b08
dec eax
mov ecx, dword [ebp - 0xa4]
je 0x416a9e
dec eax
jne 0x4168ab
cmp ecx, 6
jne 0x416966
cmp dword [ebp - 0xa0], 1
jne 0x4168fe
cmp byte [ebp + 0x72], 1
jne 0x4168ab
call fcn.0041a7d2
xor ecx, ecx
test al, al
setne cl
add ecx, 0x2b
mov eax, ecx
jmp 0x416b0b
cmp dword [ebp - 0xa0], ebx
jne 0x4168ab
cmp byte [ebp + 0x72], 1
jne 0x41694f
call fcn.0041a7d2
test al, al
movzx eax, word [ebp + 0x6c]
je 0x416934
dec eax
je 0x41692d
dec eax
je 0x416926
push 0x26
jmp 0x416b0a
push 0x2a
jmp 0x416b0a
push 0x27
jmp 0x416b0a
dec eax
je 0x416948
dec eax
je 0x416941
push 0x1d
jmp 0x416b0a
push 0x29
jmp 0x416b0a
push 0x1e
jmp 0x416b0a
call fcn.0041a7d2
movzx eax, al
neg eax
sbb eax, eax
and eax, 9
add eax, 0x1f
jmp 0x416b0b
cmp ecx, 5
jne 0x416a59
cmp dword [ebp - 0xa0], 2
jne 0x4169e0
cmp byte [ebp + 0x72], 1
jne 0x41699d
movzx eax, word [ebp + 0x6c]
dec eax
je 0x416996
dec eax
je 0x41698f
push 0x20
jmp 0x416b0a
push 0x22
jmp 0x416b0a
push 0x21
jmp 0x416b0a
call fcn.0041a7d2
test al, al
movzx eax, word [ebp + 0x6c]
je 0x4169c5
dec eax
je 0x4169be
dec eax
je 0x4169b7
push 0x23
jmp 0x416b0a
push 0x25
jmp 0x416b0a
push 0x24
jmp 0x416b0a
dec eax
je 0x4169d9
dec eax
je 0x4169d2
push 0x1a
jmp 0x416b0a
push 0x1c
jmp 0x416b0a
push 0x1b
jmp 0x416b0a
cmp dword [ebp - 0xa0], 1
jne 0x416a16
cmp edi, ebx
jne 0x4169f4
push 0x16
jmp 0x416b0a
movzx eax, word [ebp + 0x6c]
dec eax
je 0x416a0f
dec eax
je 0x416a08
dec eax
jne 0x4169ed
push 0x19
jmp 0x416b0a
push 0x18
jmp 0x416b0a
push 0x17
jmp 0x416b0a
cmp dword [ebp - 0xa0], ebx
jne 0x4168ab
cmp edi, ebx
jne 0x416a2d
push 0x11
jmp 0x416b0a
movzx eax, word [ebp + 0x6c]
dec eax
je 0x416a52
dec eax
je 0x416a4b
dec eax
je 0x416a44
dec eax
jne 0x416a26
push 0x15
jmp 0x416b0a
push 0x14
jmp 0x416b0a
push 0x13
jmp 0x416b0a
push 0x12
jmp 0x416b0a
cmp ecx, 4
ja 0x4168ab
cmp edi, ebx
jne 0x416a6d
push 0xa
jmp 0x416b0a
movzx eax, word [ebp + 0x6c]
dec eax
je 0x416a9a
dec eax
je 0x416a96
dec eax
je 0x416a92
dec eax
je 0x416a8e
dec eax
je 0x416a8a
dec eax
jne 0x416a66
push 0x10
jmp 0x416b0a
push 0xf
jmp 0x416b0a
push 0xe
jmp 0x416b0a
push 0xd
jmp 0x416b0a
push 0xc
jmp 0x416b0a
push 0xb
jmp 0x416b0a
cmp ecx, 4
jne 0x4168ab
cmp dword [ebp - 0xa0], ebx
jne 0x416ad2
cmp dword [ebp - 0x9c], 0x3b6
jbe 0x416abf
push 5
jmp 0x416b0a
xor eax, eax
cmp word [ebp - 0x92], 0x43
sete al
lea eax, [eax + eax + 4]
jmp 0x416b0b
cmp dword [ebp - 0xa0], 0xa
jne 0x416af7
cmp word [ebp - 0x92], 0x41
je 0x416af3
cmp word [ebp - 0x92], 0x42
je 0x416af3
push 7
jmp 0x416b0a
push 8
jmp 0x416b0a
cmp dword [ebp - 0xa0], 0x5a
jne 0x4168ab
push 9
jmp 0x416b0a
push 4
pop eax
mov ecx, dword [ebp + 0x74]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0042370b
add ebp, 0x78
leave
ret