Function at 0x42cd26
Capabilities:
Create shortcut via ishelllink

Disassembly:
push 0xd0
mov eax, 0x447413
call fcn.004378a5
mov eax, dword [ebp + 8]
mov dword [ebp - 0xd4], eax
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0xd8], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp + 0x14]
xor ebx, ebx
cmp dword [ecx + 0x14], ebx
mov dword [ebp - 0xdc], eax
mov eax, dword [ebp + 0x18]
mov dword [ebp - 0xc4], ecx
mov dword [ebp - 0xc8], edx
je 0x42d1fe
cmp dword [edx + 0x14], ebx
je 0x42d1fe
push 7
pop edi
mov dword [ebp - 0x4c], edi
mov dword [ebp - 0x50], ebx
mov word [ebp - 0x60], bx
cmp eax, ebx
mov dword [ebp - 4], ebx
lea esi, [ebp - 0x64]
je 0x42cd9a
call fcn.0040124c
jmp 0x42cdac
mov edi, ecx
call fcn.0040bb40
test al, al
je 0x42d1f3
push 7
pop edi
mov dword [ebp - 0x30], edi
mov dword [ebp - 0x34], ebx
mov word [ebp - 0x44], bx
mov dword [ebp - 0x68], edi
mov dword [ebp - 0x6c], ebx
mov word [ebp - 0x7c], bx
mov byte [ebp - 4], 2
mov edi, dword [ebp - 0xc8]
lea esi, [ebp - 0x80]
call fcn.0040baa0
test al, al
je 0x42d1dd
cmp dword [ebp - 0x6c], ebx
je 0x42d1dd
lea esi, [ebp - 0x48]
call fcn.0040bb40
test al, al
je 0x42d1dd
push 0x20
mov ecx, esi
call fcn.0040d040
pop ecx
mov eax, esi
push eax
call fcn.0040d650
test al, al
pop ecx
jne 0x42ce13
mov eax, esi
push eax
call fcn.0040de60
pop ecx
lea eax, [ebp - 0x48]
push eax
call fcn.0040d650
test al, al
pop ecx
je 0x42d1dd
lea eax, [ebp - 0x48]
push eax
call fcn.0040d800
test al, al
pop ecx
je 0x42d1dd
push 0x5c
lea esi, [ebp - 0x48]
call fcn.00403dcd
mov eax, esi
lea esi, [ebp - 0x2c]
call fcn.00403d90
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 3
call fcn.00404251
lea eax, [ebp - 0xc0]
push eax
push 0x44834c
xor edi, edi
inc edi
push edi
push ebx
push 0x44835c
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xcc], ebx
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jl 0x42d1bb
mov eax, dword [ebp - 0xc0]
cmp eax, ebx
je 0x42d1bb
mov ecx, dword [eax]
lea edx, [ebp - 0xcc]
push edx
push 0x44836c
push eax
call dword [ecx]
cmp eax, ebx
jl 0x42d1af
cmp dword [ebp - 0xcc], ebx
je 0x42d1af
mov edi, dword [ebp - 0xc4]
cmp dword [edi + 0x18], 8
jb 0x42ced0
add edi, 4
mov eax, dword [edi]
jmp 0x42ced5
add edi, 4
mov eax, edi
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ecx]
push eax
push ecx
call dword [edx + 0x50]
cmp dword [ebp - 0x4c], 8
mov ecx, dword [ebp - 0x60]
jae 0x42ceee
lea ecx, [ebp - 0x60]
mov eax, dword [ebp - 0xc0]
mov edx, dword [eax]
push ecx
push eax
call dword [edx + 0x24]
mov esi, dword [ebp - 0xdc]
cmp dword [esi + 0x14], ebx
je 0x42cf23
push esi
call fcn.0040d720
test al, al
pop ecx
je 0x42cf23
cmp dword [esi + 0x18], 8
jb 0x42cf1c
mov esi, dword [esi + 4]
jmp 0x42cf1f
add esi, 4
push ebx
push esi
jmp 0x42cf33
mov eax, dword [ebp - 0xc4]
cmp dword [eax + 0x18], 8
jb 0x42cf31
mov edi, dword [edi]
push ebx
push edi
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax]
push eax
call dword [ecx + 0x44]
mov eax, dword [ebp - 0xd8]
cmp dword [eax + 0x18], 8
jb 0x42cf50
mov eax, dword [eax + 4]
jmp 0x42cf53
add eax, 4
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ecx]
push eax
push ecx
call dword [edx + 0x2c]
mov eax, dword [ebp - 0xd0]
cmp dword [eax + 0x18], 8
jb 0x42cf71
mov eax, dword [eax + 4]
jmp 0x42cf74
add eax, 4
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ecx]
push eax
push ecx
call dword [edx + 0x1c]
mov eax, 0x44c4b4
lea ecx, [ebp - 0xb8]
call fcn.00401222
mov byte [ebp - 4], 4
lea edi, [ebp - 0xd0]
lea ebx, [ebp - 0x2c]
mov dword [ebp - 0xd0], 0x2e
call fcn.0040d400
or edi, 0xffffffff
cmp eax, edi
push edi
jne 0x42cfc7
xor edi, edi
push edi
lea eax, [ebp - 0xb8]
mov esi, ebx
call fcn.00404251
jmp 0x42d011
lea ecx, [ebp - 0x2c]
push ecx
mov ebx, eax
lea esi, [ebp - 0x9c]
call fcn.00407ef0
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 5
call fcn.0040c0d0
test eax, eax
je 0x42cffc
push edi
push 0
lea eax, [ebp - 0xb8]
lea esi, [ebp - 0x2c]
call fcn.00404251
push 0
push 1
lea esi, [ebp - 0x9c]
mov byte [ebp - 4], 4
call fcn.004012ba
xor edi, edi
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0xb9], 0
call fcn.0040d650
test al, al
pop ecx
je 0x42d11c
lea eax, [ebp - 0xc4]
push eax
push 0x44834c
push 1
push edi
push 0x44835c
xor bl, bl
mov dword [ebp - 0xc4], edi
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, edi
jl 0x42d0ce
mov eax, dword [ebp - 0xc4]
cmp eax, edi
je 0x42d0ce
lea edx, [ebp - 0xc8]
push edx
push 0x44836c
mov dword [ebp - 0xc8], edi
mov ecx, dword [eax]
push eax
call dword [ecx]
cmp eax, edi
jl 0x42d0b8
mov eax, dword [ebp - 0xc8]
cmp eax, edi
je 0x42d0b8
cmp dword [ebp - 0x14], 8
mov ecx, dword [ebp - 0x28]
jae 0x42d08b
lea ecx, [ebp - 0x28]
mov edx, dword [eax]
push 0x30
push ecx
push eax
call dword [edx + 0x14]
cmp eax, edi
jl 0x42d0ac
push dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xc0]
call fcn.0042d3d5
pop ecx
mov bl, al
mov eax, dword [ebp - 0xc8]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0xc4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
test bl, bl
mov dword [ebp - 0xc4], edi
jne 0x42d115
mov eax, dword [ebp - 0xd4]
cmp byte [eax], 0
jne 0x42d11c
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x42d0e5
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x9c]
call fcn.00401222
lea eax, [ebp - 0x9c]
push eax
mov byte [ebp - 4], 6
call fcn.0040fd90
pop ecx
push edi
push 1
lea esi, [ebp - 0x9c]
mov byte [ebp - 4], 4
call fcn.004012ba
jmp 0x42d11c
mov byte [ebp - 0xb9], 1
cmp byte [ebp - 0xb9], 0
mov bl, 1
jne 0x42d159
mov esi, dword [ebp - 0xd4]
cmp byte [esi], 0
jne 0x42d155
cmp dword [ebp - 0x14], 8
mov ecx, dword [ebp - 0x28]
jae 0x42d13e
lea ecx, [ebp - 0x28]
mov eax, dword [ebp - 0xcc]
mov edx, dword [eax]
push 1
push ecx
push eax
call dword [edx + 0x18]
mov ebx, eax
neg ebx
sbb bl, bl
inc bl
mov byte [esi + 1], 1
mov eax, dword [ebp - 0xcc]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push edi
push 1
lea esi, [ebp - 0xb8]
call fcn.004012ba
push edi
push 1
lea esi, [ebp - 0x2c]
call fcn.004012ba
push edi
push 1
lea esi, [ebp - 0x80]
call fcn.004012ba
push edi
push 1
lea esi, [ebp - 0x48]
call fcn.004012ba
push edi
push 1
lea esi, [ebp - 0x64]
call fcn.004012ba
mov al, bl
jmp 0x42d200
mov eax, dword [ebp - 0xc0]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
push ebx
push edi
lea esi, [ebp - 0x2c]
call fcn.004012ba
push ebx
push edi
lea esi, [ebp - 0x80]
call fcn.004012ba
push ebx
push edi
lea esi, [ebp - 0x48]
call fcn.004012ba
push ebx
push edi
jmp 0x42d1f6
push ebx
push 1
lea esi, [ebp - 0x80]
call fcn.004012ba
push ebx
push 1
lea esi, [ebp - 0x48]
call fcn.004012ba
push ebx
push 1
lea esi, [ebp - 0x64]
call fcn.004012ba
xor al, al
call fcn.00437928
ret 0x14