Function at 0x1010e080
Capabilities:
Check os version
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x10199d94
mov eax, dword fs:[0]
push eax
sub esp, 0x130
mov eax, dword [0x10279264]
xor eax, esp
mov dword [esp + 0x128], eax
push ebx
push esi
push edi
mov eax, dword [0x10279264]
xor eax, esp
push eax
lea eax, [esp + 0x140]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
lea eax, [esp + 0xfc]
xor ebx, ebx
push eax
mov dword [esp + 0x30], ecx
mov dword [esp + 0x2c], edi
mov dword [esp + 0x20], ebx
call fcn.10109110
push ebx
lea esi, [esp + 0xc8]
lea ecx, [esp + 0x100]
mov dword [esp + 0x14c], ebx
call fcn.10109550
push 3
lea esi, [esp + 0xe4]
lea ecx, [esp + 0x100]
mov byte [esp + 0x14c], 1
call fcn.10109550
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], ebx
mov byte [esp + 0xac], bl
mov byte [esp + 0x148], 3
mov eax, dword [edi + 0x14]
mov ecx, dword [eax]
mov esi, dword [edi]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], esi
mov edx, dword [edi + 0x14]
mov edi, dword [edi]
mov dword [esp + 0x5c], edx
cmp esi, ebx
je 0x1010e157
cmp esi, edi
je 0x1010e15c
call fcn.1016d669
mov eax, dword [esp + 0x5c]
cmp dword [esp + 0x14], eax
je 0x1010e3e6
cmp esi, ebx
jne 0x1010e2b1
call fcn.1016d669
xor esi, esi
mov ecx, dword [esp + 0x14]
cmp ecx, dword [esi + 0x14]
jne 0x1010e187
call fcn.1016d669
mov esi, dword [esp + 0x14]
lea edx, [esp + 0xc4]
add esi, 8
push edx
lea edi, [esp + 0x64]
mov ecx, esi
call fcn.10109810
push 0xffffffffffffffff
push ebx
push eax
lea ecx, [esp + 0xb4]
mov byte [esp + 0x154], 4
call fcn.10004b90
mov byte [esp + 0x148], 3
cmp dword [esp + 0x78], 0x10
jb 0x1010e1d5
mov eax, dword [esp + 0x64]
push eax
call fcn.1016d679
add esp, 4
mov eax, dword [esp + 0x10]
cmp eax, ebx
jne 0x1010e2b8
call fcn.1016d669
xor eax, eax
mov ecx, dword [esp + 0x14]
cmp ecx, dword [eax + 0x14]
jne 0x1010e1f6
call fcn.1016d669
lea edx, [esp + 0xe0]
push edx
lea edi, [esp + 0x64]
mov ecx, esi
call fcn.10109810
push eax
mov byte [esp + 0x14c], 5
call fcn.10104160
mov edi, 0x10
add esp, 4
mov esi, eax
mov byte [esp + 0x148], 3
mov dword [esp + 0x18], esi
cmp dword [esp + 0x78], edi
jb 0x1010e240
mov eax, dword [esp + 0x64]
push eax
call fcn.1016d679
add esp, 4
cmp esi, 6
je 0x1010e3dc
mov edi, dword [esp + 0x2c]
lea ecx, [esp + 0xa8]
push ecx
lea edx, [esp + 0x24]
add edi, 4
push edx
mov esi, edi
call fcn.10087850
mov eax, dword [edi + 0x18]
mov esi, dword [esp + 0x20]
mov dword [esp + 0x54], eax
mov eax, dword [edi]
cmp esi, ebx
je 0x1010e279
cmp esi, eax
je 0x1010e27e
call fcn.1016d669
mov ecx, dword [esp + 0x24]
cmp ecx, dword [esp + 0x54]
je 0x1010e2c3
cmp esi, ebx
jne 0x1010e2bf
call fcn.1016d669
xor esi, esi
mov edx, dword [esp + 0x24]
cmp edx, dword [esi + 0x18]
jne 0x1010e2a1
call fcn.1016d669
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x24]
mov dword [ecx + 0x28], eax
jmp 0x1010e3a8
mov esi, dword [esi]
jmp 0x1010e179
mov eax, dword [eax]
jmp 0x1010e1e8
mov esi, dword [esi]
jmp 0x1010e293
mov edx, dword [esp + 0x18]
push edx
sub esp, 0x1c
mov ecx, esp
mov dword [esp + 0x38], esp
push 0xffffffffffffffff
push ebx
lea eax, [esp + 0xd0]
mov dword [ecx + 0x18], 0xf
mov dword [ecx + 0x14], ebx
push eax
mov byte [ecx + 4], bl
call fcn.10004b90
lea esi, [esp + 0x9c]
call fcn.101062f0
add esp, 0x20
mov esi, eax
push 0xffffffffffffffff
mov byte [esp + 0x14c], 6
push ebx
push esi
lea ecx, [esp + 0x3c]
mov dword [esp + 0x54], 0xf
mov dword [esp + 0x50], ebx
mov byte [esp + 0x40], bl
call fcn.10004b90
mov ecx, dword [esi + 0x1c]
mov dword [esp + 0x4c], ecx
lea edx, [esp + 0x30]
push edx
push edi
lea ebx, [esp + 0xa4]
mov byte [esp + 0x150], 7
call fcn.101039a0
mov edi, 0x10
cmp dword [esp + 0x48], edi
jb 0x1010e35d
mov eax, dword [esp + 0x34]
push eax
call fcn.1016d679
add esp, 4
xor ebx, ebx
mov esi, 0xf
mov byte [esp + 0x148], 3
mov dword [esp + 0x48], esi
mov dword [esp + 0x44], ebx
mov byte [esp + 0x34], bl
cmp dword [esp + 0x94], edi
jb 0x1010e391
mov ecx, dword [esp + 0x80]
push ecx
call fcn.1016d679
add esp, 4
mov dword [esp + 0x90], ebx
mov byte [esp + 0x80], bl
mov dword [esp + 0x94], esi
xor ebx, ebx
mov eax, dword [esp + 0x10]
cmp eax, ebx
jne 0x1010e3d8
call fcn.1016d669
xor eax, eax
mov esi, dword [esp + 0x14]
cmp esi, dword [eax + 0x14]
jne 0x1010e3c5
call fcn.1016d669
mov edx, dword [esi]
mov edi, dword [esp + 0x28]
mov esi, dword [esp + 0x10]
mov dword [esp + 0x14], edx
jmp 0x1010e146
mov eax, dword [eax]
jmp 0x1010e3b7
mov dword [esp + 0x1c], 0x3e9
jmp 0x1010e3eb
mov edi, 0x10
cmp dword [esp + 0xc0], edi
jb 0x1010e404
mov eax, dword [esp + 0xac]
push eax
call fcn.1016d679
add esp, 4
mov dword [esp + 0xc0], 0xf
mov dword [esp + 0xbc], ebx
mov byte [esp + 0xac], bl
cmp dword [esp + 0xf8], edi
jb 0x1010e436
mov ecx, dword [esp + 0xe4]
push ecx
call fcn.1016d679
add esp, 4
mov dword [esp + 0xf8], 0xf
mov dword [esp + 0xf4], ebx
mov byte [esp + 0xe4], bl
cmp dword [esp + 0xdc], edi
jb 0x1010e468
mov edx, dword [esp + 0xc8]
push edx
call fcn.1016d679
add esp, 4
lea eax, [esp + 0xfc]
push eax
mov dword [esp + 0xe0], 0xf
mov dword [esp + 0xdc], ebx
mov byte [esp + 0xcc], bl
mov dword [esp + 0x14c], 0xffffffff
call fcn.101094e0
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x140]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x128]
xor ecx, esp
call fcn.1016cb16
mov esp, ebp
pop ebp
ret 4