Function at 0x40ba80
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x410d38
push 0x40e19e
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x110
push ebx
push esi
push edi
xor ebx, ebx
mov dword [ebp - 0xc8], ebx
mov dword [ebp - 0xbc], ebx
mov dword [ebp - 0xc4], ebx
mov dword [ebp - 4], ebx
push str.schannel
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 0xc4], eax
cmp eax, ebx
je 0x40bc76
push str.InitSecurityInterfaceA
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [ebp - 0xb8], eax
cmp eax, ebx
jne 0x40bb0d
push 0xffffffffffffffff
lea ecx, [ebp - 0x10]
push ecx
call sub.MSVCRT.dll__local_unwind2
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call eax
mov esi, eax
mov dword [ebp - 0xcc], esi
cmp esi, ebx
jne 0x40bb3c
push 0xffffffffffffffff
lea edx, [ebp - 0x10]
push edx
call sub.MSVCRT.dll__local_unwind2
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [esi + 0xc], ebx
je 0x40bc76
cmp dword [esi + 8], ebx
je 0x40bc76
mov ecx, 0xe
xor eax, eax
lea edi, [ebp - 0x10c]
rep stosd dword es:[edi], eax
mov dword [ebp - 0x10c], 4
lea eax, [ebp - 0xd4]
push eax
lea ecx, [ebp - 0x120]
push ecx
push ebx
push ebx
lea edx, [ebp - 0x10c]
push edx
push ebx
push 2
push str.Microsoft_Unified_Security_Protocol_Provider
push ebx
call dword [esi + 0xc]
mov dword [ebp - 0x118], eax
cmp eax, ebx
jne 0x40bb1b
lea eax, [ebp - 0x114]
push eax
push 0x57
lea ecx, [ebp - 0x120]
push ecx
call dword [esi + 8]
mov dword [ebp - 0x118], eax
cmp eax, ebx
jne 0x40baec
mov ebx, dword [ebp - 0x110]
mov dword [ebp - 0xc8], ebx
mov edx, dword [ebp - 0x114]
mov dword [ebp - 0xbc], edx
mov esi, dword [esi + 0x10]
test esi, esi
je 0x40bbdd
lea eax, [ebp - 0x120]
push eax
call esi
mov dword [ebp - 4], 0xffffffff
call fcn.0040bc9d
mov ecx, 0x27
xor eax, eax
lea edi, [ebp - 0xb4]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xb4], 0x9c
lea ecx, [ebp - 0xb4]
push ecx
mov esi, dword [sym.imp.KERNEL32.dll_GetVersionExA]
call esi
test eax, eax
jne 0x40bc30
mov dword [ebp - 0xb4], 0x94
lea edx, [ebp - 0xb4]
push edx
call esi
test eax, eax
je 0x40bced
cmp dword [ebp - 0xa4], 1
jne 0x40bced
cmp dword [ebp - 0xb0], 4
jne 0x40bced
cmp dword [ebp - 0xac], 0xa
jne 0x40bced
cmp ebx, 0x80
ja 0x40bcaf
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
push 0xffffffffffffffff
lea eax, [ebp - 0x10]
push eax
call sub.MSVCRT.dll__local_unwind2
add esp, 8
xor eax, eax
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 0x100
jb 0x40bccd
mov eax, 0x100
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 0xa8
mov eax, 0x80
jae 0x40bd1a
mov eax, ebx
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 0x100
jb 0x40bd0b
mov eax, 0x100
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
cmp ebx, 0xa8
mov eax, 0x80
jae 0x40bd1a
mov eax, ebx
mov ecx, dword [ebp - 0x10]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret