Function at 0x3ed14e0
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffed8
push ebx
push esi
xor edx, edx
mov dword [ebp - 0x120], edx
mov esi, eax
xor eax, eax
push ebp
push 0x3ed1a28
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [esi], 0
lea eax, [esi + 8]
mov edx, 0x3ed1a3c
call fcn.03cb82a4
xor eax, eax
mov dword [esi + 0x1c], eax
xor eax, eax
mov dword [esi + 0x10], eax
xor eax, eax
mov dword [esi + 0x14], eax
xor eax, eax
mov dword [esi + 0x18], eax
xor eax, eax
mov dword [esi + 0x20], eax
xor eax, eax
mov dword [esi + 0x24], eax
mov byte [esi], 0
mov byte [esi + 1], 0
mov bl, 1
lea eax, [ebp - 0x11c]
xor ecx, ecx
mov edx, 0x11c
call fcn.03cb5b68
mov dword [ebp - 0x11c], 0x11c
lea eax, [ebp - 0x11c]
push eax
call sub.ntdll.dll_RtlGetVersion
test eax, eax
jne 0x3ed1a04
mov eax, dword [ebp - 0x118]
mov dword [esi + 0x10], eax
mov eax, dword [ebp - 0x114]
mov dword [esi + 0x14], eax
mov eax, dword [ebp - 0x110]
mov dword [esi + 0x18], eax
cmp dword [ebp - 0x10c], 2
jne 0x3ed1594
cmp byte [ebp - 2], 1
jne 0x3ed1598
xor eax, eax
jmp 0x3ed159a
mov al, 1
mov byte [esi], al
test bl, bl
je 0x3ed15ae
movzx eax, word [ebp - 8]
mov dword [esi + 0x20], eax
movzx eax, word [ebp - 6]
mov dword [esi + 0x24], eax
mov eax, dword [ebp - 0x10c]
sub eax, 2
jne 0x3ed1a04
cmp byte [ebp - 2], 1
jne 0x3ed18fe
mov ebx, dword [ebp - 0x118]
mov eax, ebx
sub eax, 5
je 0x3ed15e5
dec eax
je 0x3ed1630
sub eax, 4
je 0x3ed1690
jmp 0x3ed1a04
mov eax, dword [ebp - 0x114]
sub eax, 1
jb 0x3ed15fa
je 0x3ed160c
dec eax
je 0x3ed161e
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1a50
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1a70
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1a8c
call fcn.03cb82a4
jmp 0x3ed1a04
mov eax, dword [ebp - 0x114]
sub eax, 1
jb 0x3ed1648
je 0x3ed165a
dec eax
je 0x3ed166c
dec eax
je 0x3ed167e
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1aac
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1acc
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1ae4
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1afc
call fcn.03cb82a4
jmp 0x3ed1a04
cmp byte [esi], 0
je 0x3ed175b
mov eax, dword [ebp - 0x110]
cmp eax, 0x3ad7
jg 0x3ed16b8
je 0x3ed16ec
sub eax, 0x2800
je 0x3ed16c8
sub eax, 0x1039
je 0x3ed16da
jmp 0x3ed1722
sub eax, 0x4563
je 0x3ed16fe
sub eax, 0x257
je 0x3ed1710
jmp 0x3ed1722
lea eax, [esi + 8]
mov edx, 0x3ed1b18
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1b38
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1b74
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1bb0
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1bd0
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [ebp - 0x120]
push eax
mov dword [ebp - 0x128], ebx
mov byte [ebp - 0x124], 0
lea edx, [ebp - 0x128]
xor ecx, ecx
mov eax, 0x3ed1c14
call fcn.03cd41a8
mov edx, dword [ebp - 0x120]
lea eax, [esi + 8]
call fcn.03cb8e8c
jmp 0x3ed1a04
mov eax, dword [ebp - 0x110]
cmp eax, 0x55f0
jb 0x3ed177a
lea eax, [esi + 8]
mov edx, 0x3ed1c3c
call fcn.03cb82a4
jmp 0x3ed1a04
cmp eax, 0x4563
jg 0x3ed17d1
je 0x3ed1880
cmp eax, 0x3ad7
jg 0x3ed17b6
je 0x3ed184a
sub eax, 0x2800
je 0x3ed1814
sub eax, 0x15a
je 0x3ed1826
sub eax, 0xedf
je 0x3ed1838
jmp 0x3ed18ec
sub eax, 0x3fab
je 0x3ed185c
sub eax, 0x343
je 0x3ed186e
jmp 0x3ed18ec
cmp eax, 0x4a62
jg 0x3ed17f9
je 0x3ed18b6
sub eax, 0x47ba
je 0x3ed1892
sub eax, 0x2a7
je 0x3ed18a4
jmp 0x3ed18ec
sub eax, 0x4a63
je 0x3ed18c8
sub eax, 0xb8d
je 0x3ed18da
jmp 0x3ed18ec
lea eax, [esi + 8]
mov edx, 0x3ed1c58
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1c74
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1cac
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1ce4
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1d1c
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1d54
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1d8c
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1dc4
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1dfc
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1e48
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1e80
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1eb8
call fcn.03cb82a4
jmp 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1ed4
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 6
jne 0x3ed1922
cmp dword [ebp - 0x114], 0
jne 0x3ed1922
lea eax, [esi + 8]
mov edx, 0x3ed1ee4
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 6
jne 0x3ed1946
cmp dword [ebp - 0x114], 1
jne 0x3ed1946
lea eax, [esi + 8]
mov edx, 0x3ed1f04
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 6
jne 0x3ed196a
cmp dword [ebp - 0x114], 2
jne 0x3ed196a
lea eax, [esi + 8]
mov edx, 0x3ed1f28
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 6
jne 0x3ed198b
cmp dword [ebp - 0x114], 3
jne 0x3ed198b
lea eax, [esi + 8]
mov edx, 0x3ed1f48
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 0xa
jne 0x3ed19ac
cmp dword [ebp - 0x114], 0
jne 0x3ed19ac
lea eax, [esi + 8]
mov edx, 0x3ed1f6c
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 0xa
jne 0x3ed19d9
cmp dword [ebp - 0x114], 0
jne 0x3ed19d9
cmp dword [ebp - 0x110], 0x4a61
jne 0x3ed19d9
lea eax, [esi + 8]
mov edx, 0x3ed1f8c
call fcn.03cb82a4
jmp 0x3ed1a04
cmp dword [ebp - 0x118], 0xa
jne 0x3ed1a04
cmp dword [ebp - 0x114], 0
jne 0x3ed1a04
cmp dword [ebp - 0x110], 0x55f0
jne 0x3ed1a04
lea eax, [esi + 8]
mov edx, 0x3ed1fac
call fcn.03cb82a4
lea eax, [esi + 4]
mov edx, dword [esi + 8]
call fcn.03cb82a4
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x3ed1a2f
lea eax, [ebp - 0x120]
call fcn.03cb7e50
ret