Function at 0x10b972b
Capabilities:
Check os version
Get common file path
Get hostname
Query environment variable

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x218
mov eax, dword [0x10e3200]
xor eax, ebp
mov dword [ebp - 4], eax
push esi
mov esi, dword [ebp + 8]
push edi
xor edi, edi
push 0x103e3b0
mov dword [ebp - 0x214], edi
mov dword [ebp - 0x210], 1
call fcn.010bd0c6
xor eax, eax
push 0x206
mov word [ebp - 0x20c], ax
lea eax, [ebp - 0x20a]
push edi
push eax
call sub.msvcrt.dll_memset
add esp, 0xc
cmp esi, edi
jne 0x10b97be
push 0x57
pop ecx
mov dword [ebp - 0x210], edi
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103e3a4
push ecx
push 0x103dfb8
push 0x3a
jmp 0x10b999f
push 0x208
push edi
push esi
call sub.msvcrt.dll_memset
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x18], eax
add esp, 0xc
lea eax, [esi + 0x1c]
push eax
mov dword [eax], 0x10
lea eax, [esi + 0x20]
push eax
call dword [sym.imp.KERNEL32.dll_GetComputerNameW]
test eax, eax
jne 0x10b982d
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x210], edi
call esi
mov dword [ebp - 0x214], eax
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103acc4
call esi
push eax
push 0x103dfb8
push 0x3b
jmp 0x10b9954
push 0xc
call fcn.010bd463
mov dword [esi + 0xc], eax
cmp eax, edi
jne 0x10b9876
push 0xe
pop ecx
mov dword [ebp - 0x210], edi
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103e38c
push ecx
push 0x103dfb8
push 0x3c
jmp 0x10b999f
push 6
push eax
push 0x103e35c
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
cmp eax, edi
jne 0x10b98c3
push 0xa
pop ecx
mov dword [ebp - 0x210], edi
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103e344
push ecx
push 0x103dfb8
push 0x3d
jmp 0x10b999f
cmp eax, 6
jbe 0x10b9903
push 0x32
pop ecx
mov dword [ebp - 0x210], edi
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103e050
push ecx
push 0x103dfb8
push 0x3e
jmp 0x10b999f
lea eax, [esi + 0x40]
push eax
mov dword [eax], 0x11c
call dword [sym.imp.KERNEL32.dll_GetVersionExW]
test eax, eax
jne 0x10b995b
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x210], edi
call esi
mov dword [ebp - 0x214], eax
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103acc4
call esi
push eax
push 0x103dfb8
push 0x3f
mov eax, dword [0x10e308c]
jmp 0x10b999f
call fcn.010b5d42
mov dword [esi + 0x10], eax
cmp eax, edi
jne 0x10b99af
mov ecx, 0x65e
mov dword [ebp - 0x210], edi
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c43
test byte [eax + 0x1c], 8
je 0x10b9c43
push 0x103da28
push ecx
push 0x103dfb8
push 0x40
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010acf68
jmp 0x10b9c43
push ebx
mov ebx, dword [sym.imp.ole32.dll_CoTaskMemFree]
mov edi, 0x104
push dword [esi]
call ebx
and dword [esi], 0
lea eax, [edi + edi + 2]
push eax
call fcn.010bd463
mov dword [esi], eax
test eax, eax
je 0x10b9aa6
push edi
push eax
mov dword [ebp - 0x218], edi
call dword [sym.imp.KERNEL32.dll_GetSystemWindowsDirectoryW]
mov edi, eax
test edi, edi
je 0x10b9ae2
mov eax, dword [ebp - 0x218]
cmp edi, eax
ja 0x10b99bb
mov ecx, dword [esi]
xor edx, edx
mov word [ecx + eax*2], dx
mov edi, 0x104
push dword [esi + 4]
call ebx
and dword [esi + 4], 0
lea eax, [edi + edi + 2]
push eax
call fcn.010bd463
mov dword [esi + 4], eax
test eax, eax
je 0x10b9b2a
push edi
push eax
mov dword [ebp - 0x218], edi
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
mov edi, eax
test edi, edi
je 0x10b9b66
mov eax, dword [ebp - 0x218]
cmp edi, eax
ja 0x10b9a05
mov ecx, dword [esi + 4]
xor edx, edx
mov word [ecx + eax*2], dx
push 0x104
lea eax, [ebp - 0x20c]
push eax
call fcn.010b94d1
test eax, eax
jne 0x10b9ba9
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
and dword [ebp - 0x210], eax
call esi
mov dword [ebp - 0x214], eax
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103acc4
call esi
push eax
push 0x103dfb8
push 0x45
jmp 0x10b9b20
and dword [ebp - 0x210], 0
push 0xe
pop ecx
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103e324
push ecx
push 0x103dfb8
push 0x41
jmp 0x10b9c37
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
and dword [ebp - 0x210], 0
call esi
mov dword [ebp - 0x214], eax
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103acc4
call esi
push eax
push 0x103dfb8
push 0x42
mov eax, dword [0x10e308c]
jmp 0x10b9c37
and dword [ebp - 0x210], 0
push 0xe
pop ecx
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103e304
push ecx
push 0x103dfb8
push 0x43
jmp 0x10b9c37
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
and dword [ebp - 0x210], 0
call esi
mov dword [ebp - 0x214], eax
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103acc4
call esi
push eax
push 0x103dfb8
push 0x44
jmp 0x10b9b20
lea eax, [esi + 0x15c]
push eax
call dword [sym.imp.KERNEL32.dll_GetTimeZoneInformation]
cmp eax, 0xffffffff
jne 0x10b9bf6
mov esi, dword [sym.imp.KERNEL32.dll_GetLastError]
and dword [ebp - 0x210], 0
call esi
mov dword [ebp - 0x214], eax
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103acc4
call esi
push eax
push 0x103dfb8
push 0x46
jmp 0x10b9b20
lea eax, [ebp - 0x20c]
push eax
call fcn.010bd60b
mov dword [esi + 8], eax
test eax, eax
jne 0x10b9c42
and dword [ebp - 0x210], eax
push 0xe
pop ecx
mov dword [ebp - 0x214], ecx
mov eax, dword [0x10e308c]
cmp eax, 0x10e308c
je 0x10b9c42
test byte [eax + 0x1c], 8
je 0x10b9c42
push 0x103e2ec
push ecx
push 0x103dfb8
push 0x47
push dword [eax + 0x14]
push dword [eax + 0x10]
call fcn.010acf68
pop ebx
push 0x103e3b0
call fcn.010bd0fb
push dword [ebp - 0x214]
call dword [sym.imp.KERNEL32.dll_SetLastError]
mov ecx, dword [ebp - 4]
mov eax, dword [ebp - 0x210]
pop edi
xor ecx, ebp
pop esi
call fcn.010989ab
leave
ret 8