Function at 0x100261b0
Capabilities:
Create shortcut via ishelllink
Get common file path

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0]
push 0xffffffffffffffff
push 0x101a9d0d
push eax
mov dword fs:[0], esp
sub esp, 0x240
push esi
mov esi, dword [ebp + 0xc]
mov eax, esi
cmp dword [esi + 0x14], 7
jbe 0x100261dc
mov eax, dword [esi]
push dword [esi + 0x10]
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
push eax
lea ecx, [ebp - 0x28]
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
call fcn.10016d00
lea eax, [ebp - 0x28]
mov dword [ebp - 4], 0
push eax
call fcn.100272e0
mov ecx, dword [ebp - 0x14]
add esp, 4
mov byte [ebp + 0xf], al
mov dword [ebp - 4], 0xffffffff
cmp ecx, 7
jbe 0x10026257
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1002624a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002647a
push ecx
push edx
call fcn.1017821e
mov al, byte [ebp + 0xf]
add esp, 8
test al, al
jne 0x1002647f
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
lea eax, [ebp - 0x10]
push eax
push 0x101c2714
push 1
push 0
push 0x101c2764
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x10026463
mov eax, dword [ebp - 0x10]
push edi
push 0x104
mov eax, dword [eax]
mov edi, dword [eax + 0x24]
lea eax, [ebp - 0x24c]
push eax
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryW]
test eax, eax
je 0x100262e9
cmp eax, 0x104
ja 0x100262e9
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
lea ecx, [ebp - 0x24c]
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x100262d0
sub ecx, edx
lea eax, [ebp - 0x24c]
sar ecx, 1
push ecx
push eax
jmp 0x10026305
xorps xmm0, xmm0
mov dword [ebp - 0x18], 0
push 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
push 0x101c0044
lea ecx, [ebp - 0x28]
call fcn.10016d00
mov eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x28]
cmp dword [ebp - 0x14], 7
mov dword [ebp - 4], 1
cmovbe eax, ecx
push eax
push dword [ebp - 0x10]
call edi
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 4], 0xffffffff
cmp ecx, 7
jbe 0x10026368
mov edx, dword [ebp - 0x28]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1002635e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1002649a
push ecx
push edx
call fcn.1017821e
add esp, 8
mov eax, dword [ebp - 0x10]
mov edi, dword [ebp + 8]
push edi
mov eax, dword [eax]
mov eax, dword [eax + 0x48]
mov dword [ebp - 0x2c], eax
lea eax, [ebp - 0x28]
push eax
call fcn.100274e0
add esp, 8
cmp dword [eax + 0x14], 7
mov dword [ebp - 4], 2
jbe 0x10026392
mov eax, dword [eax]
push 0
push eax
push dword [ebp - 0x10]
call dword [ebp - 0x2c]
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xffffffff
call fcn.10016da0
mov eax, dword [ebp - 0x10]
push edi
mov eax, dword [eax]
mov eax, dword [eax + 0x50]
mov dword [ebp + 8], eax
lea eax, [ebp - 0x28]
push eax
call fcn.100274e0
add esp, 8
cmp dword [eax + 0x14], 7
mov dword [ebp - 4], 3
jbe 0x100263d1
mov eax, dword [eax]
push eax
push dword [ebp - 0x10]
call dword [ebp + 8]
lea ecx, [ebp - 0x28]
mov dword [ebp - 4], 0xffffffff
call fcn.10016da0
mov ecx, dword [ebp - 0x10]
push 1
push ecx
mov eax, dword [ecx]
call dword [eax + 0x3c]
mov ecx, dword [ebp - 0x10]
push 0x101c0514
push ecx
mov eax, dword [ecx]
call dword [eax + 0x1c]
mov ecx, dword [ebp - 0x10]
lea edx, [ebp + 0xc]
push edx
push 0x101c2724
push ecx
mov eax, dword [ecx]
call dword [eax]
test eax, eax
js 0x10026459
mov eax, dword [ebp + 0xc]
push esi
mov eax, dword [eax]
mov edi, dword [eax + 0x18]
lea eax, [ebp - 0x44]
push eax
call fcn.100274e0
add esp, 8
cmp dword [eax + 0x14], 7
mov dword [ebp - 4], 4
jbe 0x10026439
mov eax, dword [eax]
push 1
push eax
push dword [ebp + 0xc]
call edi
lea ecx, [ebp - 0x44]
mov dword [ebp - 4], 0xffffffff
call fcn.10016da0
mov eax, dword [ebp + 0xc]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, dword [ebp - 0x10]
push eax
mov ecx, dword [eax]
call dword [ecx + 8]
pop edi
call dword [sym.imp.ole32.dll_CoUninitialize]
mov ecx, dword [ebp - 0xc]
pop esi
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret 8
call fcn.1018070f
push 0x101bcf90
lea ecx, [ebp - 0x1c]
call fcn.10025830
push 0x10204940
lea eax, [ebp - 0x1c]
push eax
call fcn.1017c67f
call fcn.1018070f
int3