Function at 0x1880ce82
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x11c
push esi
push edi
push 0x110
xor esi, esi
lea eax, [ebp - 0x118]
push esi
push eax
call fcn.18819090
add esp, 0xc
lea eax, [ebp - 0x11c]
push eax
mov dword [ebp - 0x11c], 0x114
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
xor eax, eax
mov dword [ebx + 8], esi
mov word [ebx + 0xc], ax
mov byte [ebx + 0x19], 1
mov dword [ebx + 0x1c], esi
mov byte [ebx + 0x20], al
mov eax, dword [ebx + 0x28]
mov ecx, dword [ebx + 0x24]
cmp ecx, eax
je 0x1880cf07
mov dword [ebp - 8], ecx
mov dword [ebp - 4], eax
cmp eax, eax
je 0x1880cf01
mov edx, 0x41c
mov esi, dword [ebp - 4]
mov edi, dword [ebp - 8]
add dword [ebp - 4], edx
add dword [ebp - 8], edx
mov ecx, 0x107
rep movsd dword es:[edi], dword [esi]
cmp dword [ebp - 4], eax
jne 0x1880cee7
xor esi, esi
mov eax, dword [ebp - 8]
mov dword [ebx + 0x28], eax
lea eax, [ebx + 0x44]
mov dword [ebx + 0x34], 0xf
mov byte [ebx + 0x40], 0
mov byte [ebx + 0x42], 1
call fcn.18813378
mov ecx, dword [ebp - 0x118]
or dword [ebx + 0x54], 0xffffffff
or dword [ebx + 0x58], 0xffffffff
push 6
xor eax, eax
pop edx
mov word [ebx + 0x5c], ax
mov byte [ebx + 0x264], al
cmp ecx, edx
jb 0x1880cf4d
jne 0x1880cf49
cmp dword [ebp - 0x114], esi
je 0x1880cf4d
xor eax, eax
jmp 0x1880cf50
xor eax, eax
inc eax
mov byte [ebx + 0x265], al
mov word [ebx + 0x266], 0x101
cmp ecx, edx
jb 0x1880cf72
jne 0x1880cf6e
cmp dword [ebp - 0x114], 2
jb 0x1880cf72
xor eax, eax
jmp 0x1880cf75
xor eax, eax
inc eax
mov byte [ebx + 0x268], al
lea eax, [ebx + 0x270]
push eax
mov dword [ebx + 0x26c], esi
call fcn.18813518
mov eax, dword [ebx + 0x284]
mov ecx, dword [ebx + 0x280]
mov dword [ebp - 8], eax
cmp ecx, eax
je 0x1880cfd6
mov dword [ebp - 4], ecx
mov esi, eax
cmp eax, eax
je 0x1880cfbd
mov eax, dword [ebp - 4]
call fcn.1881419a
add dword [ebp - 4], 0x24
add esi, 0x24
cmp esi, dword [ebp - 8]
jne 0x1880cfa9
push dword [ebp - 4]
mov esi, dword [ebx + 0x284]
call fcn.1880aa33
mov eax, dword [ebp - 4]
mov dword [ebx + 0x284], eax
xor esi, esi
cmp dword [ebp - 0x118], 5
ja 0x1880cffc
jne 0x1880cfea
cmp dword [ebp - 0x114], 1
jae 0x1880cffc
mov dword [ebx + 0x290], esi
mov dword [ebx + 0x294], 0x7d0
jmp 0x1880d010
mov dword [ebx + 0x290], 2
mov dword [ebx + 0x294], 0x1f4
lea edi, [ebx + 0x2a4]
mov dword [ebx + 0x298], esi
mov byte [ebx + 0x41], 0
mov byte [ebx + 0x29c], 0
mov dword [ebx + 0x2a0], esi
call fcn.1880ad9e
xor eax, eax
mov word [ebx + 0x4bc], ax
mov word [ebx + 0x6c4], ax
mov word [ebx + 0x8cc], ax
mov word [ebx + 0xad4], ax
mov word [ebx + 0xcdc], ax
mov byte [ebx + 0xee4], 1
mov dword [ebx + 0xee8], 5
mov edx, dword [ebx + 0xef0]
mov ecx, dword [ebx + 0xeec]
cmp ecx, edx
je 0x1880d0a8
mov dword [ebp - 4], ecx
mov dword [ebp - 8], edx
cmp edx, edx
je 0x1880d09f
mov esi, dword [ebp - 8]
mov edi, dword [ebp - 4]
mov ecx, 0x83
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x20c
add dword [ebp - 8], ecx
add dword [ebp - 4], ecx
cmp dword [ebp - 8], edx
jne 0x1880d082
mov ecx, dword [ebp - 4]
mov dword [ebx + 0xef0], ecx
fld dword [0x18835f94]
or dword [ebx + 0x1318], 0xffffffff
xor ecx, ecx
fstp dword [ebx + 0x1554]
fld1
mov word [ebx + 0xf04], cx
mov word [ebx + 0x110c], cx
fstp dword [ebx + 0x1af8]
mov word [ebx + 0x132c], cx
push 5
pop ecx
mov byte [ebx + 0x1551], 1
mov dword [ebx + 0x154c], 0x64
push 5
lea edi, [ebx + 0x1a90]
lea esi, [ebx + 0x1548]
rep movsd dword es:[edi], dword [esi]
pop ecx
xor eax, eax
lea edi, [ebx + 0x1ac0]
lea esi, [ebx + 0x1548]
rep movsd dword es:[edi], dword [esi]
push 5
pop ecx
lea edi, [ebx + 0x1ae0]
lea esi, [ebx + 0x1548]
rep movsd dword es:[edi], dword [esi]
lea edi, [ebx + 0x1b18]
mov dword [ebx + 0xefc], eax
mov word [ebx + 0xf00], ax
mov byte [ebx + 0xf02], al
mov dword [ebx + 0x1314], 0x1010101
mov word [ebx + 0x131c], 0x100
mov byte [ebx + 0x131e], 1
mov dword [ebx + 0x1320], eax
mov dword [ebx + 0x1324], 0x3f
mov dword [ebx + 0x1328], 3
mov dword [ebx + 0x1534], eax
mov byte [ebx + 0x1b14], al
mov byte [ebx + 0x1ae9], al
call fcn.1880ad9e
xor eax, eax
xor ecx, ecx
mov word [ebx + 0x2b4], ax
mov word [ebx + 0x1b28], ax
mov word [ebx + 0x1bf0], ax
mov word [ebx + 0x1df8], ax
mov word [ebx + 0x2000], ax
lea eax, [ebx + 0x2208]
mov byte [ebx + 0x18], 0
mov byte [ebx + 0x38], 0
mov dword [ebx + 0x3c], ecx
cmp dword [eax + 0x14], 8
pop edi
mov dword [eax + 0x10], ecx
pop esi
jb 0x1880d1c9
mov eax, dword [eax]
xor edx, edx
mov word [eax], dx
xor eax, eax
or dword [ebx + 0x2438], 0xffffffff
mov dword [ebx + 0x2224], ecx
mov word [ebx + 0x2228], ax
mov dword [ebx + 0x2430], ecx
mov dword [ebx + 0x2434], ecx
leave
ret