Function at 0xf15da0
Capabilities:
Check os version
Encrypt data using speck
Get number of processors

Disassembly:
inc cl
sub ecx, 0x699a7007
lea edi, [eax + edi - 0x2ba66189]
add eax, ecx
mov word [edi], dx
sub eax, 0x1fb89f94
and cx, cx
ja fcn.01699b49
call fcn.00fae2e7
xadd dword [esp + ecx + 1], ecx
lea esi, [esi + ecx*8 - 0x2217b]
movsx edx, cl
shr dx, 0x87
pop edx
xor eax, ebx
sub dword [esp + ecx*2 - 0x8860], 0xab9e542e
adc ecx, 0x118ebd0e
jns 0x175cb9f
mov edx, dword [esi]
mov ecx, 0x4896d683
add cl, 0x3a
lea eax, [ecx + ecx*4 - 0x3adad55a]
mov ax, word ss:[ecx + edx - 0x4896d6bd]
jbe fcn.0177a4f3
lea esi, [esi + ecx - 0x4896d6bb]
mov edx, 0x43b49395
sal dx, 0x49
mov word [edx + esi - 0x43b42a00], ax
mov eax, dword [ebp + edx - 0x43b42a00]
setb cl
xchg cx, dx
lea ebp, [ebp + edx - 0x43b4d5fd]
sar ecx, 0xe2
sar edx, 0xc
ja 0x16737ce
mov eax, 0xea02ed05
movsx ecx, al
lea esi, [esi + ecx - 9]
and cx, ax
jae 0x163e354
xor al, byte [eax + esi]
or cl, al
mov eax, dword [esp]
not cl
lea edx, [eax + 0x103aa7a4]
inc ax
and eax, eax
mov word [esi], cx
not dword [esp]
movzx ecx, word [esp]
mov dword [esp + ecx - 0xfffe], edi
ret
dec esi
mov esi, dword [esp + eax + 8]
inc ecx
push ebx
jne 0xedaacc
in eax, dx
les ebx, [ecx - 0x7d29e67a]
stosb byte es:[edi], al
add al, 0x9c
outsb dx, byte [esi]
cdq
mov esi, 0x9c2cda9e
outsb dx, byte [esi]
cdq
xchg esi, eax
mov byte [0x6e9c64fa], al
cdq
fsubp st(2)
cmc
nop
inc eax
inc esp
adc ch, dh
xchg ebx, eax
std
pop edi
bound ebp, qword [edi + 0x5936a8d1]
imul ecx, dword [edi], 0xb5fe4f7c
lds esi, [ebx]
and eax, 0xc498c10c
pop ss
jns 0xf15e06
shr dword [eax + 0xf695936], 1
jl 0xf15e2c
invalid
rol esp, 0xa0
outsd dx, dword [esi]
jns 0xf15e0c
rcr dword [eax - 0x3ee286f5], 0x18
aam 0x37
jns 0xf15e18
shl dword [ebp + 0x76055657], 0xd0
xchg ecx, eax
insb byte es:[edi], dx
movsb byte es:[edi], byte [esi]
push edi
push esi
add eax, 0x6691d076
insb byte es:[edi], dx
sbb cl, byte [esi + 0x16]
mov ah, 7
push esi
in al, dx
push cs
jle 0xf15dd5
pop es
push esi
in al, dx
jle 0xf15e5c
jp 0xf15dfc
pop es
push esi
in al, dx
pop esi
mov cx, 0xdb1c
jl 0xf15e87
jge 0xf15e2c
push cs
mov ss, edi
stc
xchg edi, eax
movsb byte es:[edi], byte [esi]
ret
xchg ebp, eax
xchg ebx, eax
push ebx
jl 0xf15e80
invalid
pop ds
and dword [eax], ecx
enter 0xffffffffffffdfe4, 0xffffffffffffffd6
add byte [edx], dh
add ebp, eax
and al, 0x64
push edx
pop eax
xor byte [ecx + 0x53c1ea0f], bh
aas
sbb byte [ecx], dl
adc al, 0xa1
adc al, 0x4a
adc al, byte [ecx - 0x3f]
fidivr word [eax + 0x30]
lahf
mov edi, 0xcad2996d
insd dword es:[edi], dx
cdq
ror dl, cl
invalid
scasd eax, dword es:[edi]
mov cl, 0x77
mov dl, 0xe4
sbb byte [esi - 0x78e56a64], cl
sbb al, 0x4a
jmp 0x2885a00e
ror ax, 0xc4
lea esi, [esi + edx*2 - 7]
lea ecx, [eax*4 + 0x2baa6031]
lea edx, [eax*2 + 0x6d393786]
movzx edx, byte [edx + esi - 0x6d3756d6]
add cl, al
xor dl, bl
not dl
sub dl, 0x39
dec eax
sub eax, eax
xor dl, 0x86
shl eax, cl
adc dl, 0xb0
xchg ecx, eax
neg ax
jb 0x17096db
inc edi
lea edi, [ecx + edi - 0x45cc5aed]
inc esp
movsx esp, dx
inc cx
not eax
inc ecx
rol edi, 3
call fcn.00cfa746
inc ecx
push ebx
inc eax
xor dl, bh
dec edx
lea eax, [ebx*2 - 0x1b72b5e3]
xchg dword [esp + ecx - 0x33de4fd8], ecx
jmp 0xf25c19
neg dl
inc edx
xchg dword [esp - 0x249d3d9a], ecx
pop ecx
dec ecx
sar esp, cl
inc dl
inc ecx
mov edx, 0x92a2491b
inc ebp
movzx eax, sp
neg dl
inc cx
ror edx, 0x4d
jae 0x10a1d80
inc esp
xor dl, bh
inc ecx
push ecx
call fcn.01862820
dec edx
lea edx, [edi*2 + 0x29b0ff34]
inc ecx
sar bl, 0xc2
inc edi
mov eax, dword [ebp + eax*2 - 0x17]
inc ebp
xadd dl, bh
inc esp
xor eax, edi
ror edx, 0xbf
inc ecx
cmovb ebx, esp
inc ecx
sbb eax, 0xb98dcabd
inc ecx
ror eax, 2
jmp 0x1646a34
jmp 0x17a4645
inc ebp
movzx edi, dl
dec dl
ror dl, 1
dec dl
dec edx
lea ebx, [edx*2 + 0x1e192811]
dec ecx
bswap edi
dec ecx
rol esp, 0xf6
ror dl, 1
inc eax
xor bh, dl
inc ecx
sar dl, 0xc6
inc ecx
adc ebx, 0xf4a4742a
inc bx
mov dword [esi + eax*2 - 0x10], edx
jnp 0x10252b6
mov ax, word [edi]
mov edx, 0x42027e38
bswap edx
mov ecx, edx
mov cx, word [edx + edi - 0x387e0240]
rol edx, 0x1d
bswap edx
lea edi, [edi + edx - 0x48c00f45]
add dl, dh
shl edx, 0x46
or ax, cx
call fcn.0168b5f2
mov eax, 0xa103fa3d
sub edi, 4
jmp 0x10a076e
mov ecx, dword [esi + ecx*2 - 0xa]
xor ecx, ebx
movsx edx, ax
dec ecx
add dx, 0xd801
or ax, ax
sar eax, 0x72
xor ecx, 0x788bcfa7
dec ecx
sal dl, 0xa7
shr edx, 0x9e
xor ecx, 0x81b018a6
xor ebx, ecx
add ebp, ecx
jmp 0xf1a7ae
xor eax, ebx
sar edx, 0xb3
not eax
shr edx, 0xad
dec dx
sbb eax, 0xbb0469a8
not eax
sub ecx, 0x92f082
sbb eax, 0x9f88ba1c
inc ecx
xor ebx, eax
ror cl, 7
call fcn.016b2c76
lea edx, [edx*8 + 0x662ac719]
rol eax, 1
dec eax
neg eax
add edx, 0x97873228
sar edx, 0xe9
sar dword [esp], 0xa2
xor ebx, eax
mov ecx, dword [esp + 1]
jmp 0x178a501
xor bl, dl
jmp 0xd3f442