Function at 0x42c342
Capabilities:
Create shortcut via ishelllink

Disassembly:
push 0xd0
mov eax, 0x4466d2
call fcn.00436cbf
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 0x42c81a
cmp dword [edx + 0x14], ebx
je 0x42c81a
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 0x42c3b6
call fcn.00401248
jmp 0x42c3c8
mov edi, ecx
call fcn.0040ba50
test al, al
je 0x42c80f
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.0040b9b0
test al, al
je 0x42c7f9
cmp dword [ebp - 0x6c], ebx
je 0x42c7f9
lea esi, [ebp - 0x48]
call fcn.0040ba50
test al, al
je 0x42c7f9
push 0x20
mov ecx, esi
call fcn.0040cf50
pop ecx
mov eax, esi
push eax
call fcn.0040d560
test al, al
pop ecx
jne 0x42c42f
mov eax, esi
push eax
call fcn.0040dd50
pop ecx
lea eax, [ebp - 0x48]
push eax
call fcn.0040d560
test al, al
pop ecx
je 0x42c7f9
lea eax, [ebp - 0x48]
push eax
call fcn.0040d710
test al, al
pop ecx
je 0x42c7f9
push 0x5c
lea esi, [ebp - 0x48]
call fcn.00407ce0
mov eax, esi
lea esi, [ebp - 0x2c]
call fcn.00403d21
push 0xffffffffffffffff
push ebx
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 3
call fcn.004041b7
lea eax, [ebp - 0xc0]
push eax
push 0x44734c
xor edi, edi
inc edi
push edi
push ebx
push 0x44735c
mov dword [ebp - 0xc0], ebx
mov dword [ebp - 0xcc], ebx
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
jl 0x42c7d7
mov eax, dword [ebp - 0xc0]
cmp eax, ebx
je 0x42c7d7
mov ecx, dword [eax]
lea edx, [ebp - 0xcc]
push edx
push 0x44736c
push eax
call dword [ecx]
cmp eax, ebx
jl 0x42c7cb
cmp dword [ebp - 0xcc], ebx
je 0x42c7cb
mov edi, dword [ebp - 0xc4]
cmp dword [edi + 0x18], 8
jb 0x42c4ec
add edi, 4
mov eax, dword [edi]
jmp 0x42c4f1
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 0x42c50a
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 0x42c53f
push esi
call fcn.0040d630
test al, al
pop ecx
je 0x42c53f
cmp dword [esi + 0x18], 8
jb 0x42c538
mov esi, dword [esi + 4]
jmp 0x42c53b
add esi, 4
push ebx
push esi
jmp 0x42c54f
mov eax, dword [ebp - 0xc4]
cmp dword [eax + 0x18], 8
jb 0x42c54d
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 0x42c56c
mov eax, dword [eax + 4]
jmp 0x42c56f
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 0x42c58d
mov eax, dword [eax + 4]
jmp 0x42c590
add eax, 4
mov ecx, dword [ebp - 0xc0]
mov edx, dword [ecx]
push eax
push ecx
call dword [edx + 0x1c]
mov eax, 0x44b3c8
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.0040d310
or edi, 0xffffffff
cmp eax, edi
push edi
jne 0x42c5e3
xor edi, edi
push edi
lea eax, [ebp - 0xb8]
mov esi, ebx
call fcn.004041b7
jmp 0x42c62d
lea ecx, [ebp - 0x2c]
push ecx
mov ebx, eax
lea esi, [ebp - 0x9c]
call fcn.00407dda
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 5
call fcn.0040bfe0
test eax, eax
je 0x42c618
push edi
push 0
lea eax, [ebp - 0xb8]
lea esi, [ebp - 0x2c]
call fcn.004041b7
push 0
push 1
lea esi, [ebp - 0x9c]
mov byte [ebp - 4], 4
call fcn.004012b6
xor edi, edi
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0xb9], 0
call fcn.0040d560
test al, al
pop ecx
je 0x42c738
lea eax, [ebp - 0xc4]
push eax
push 0x44734c
push 1
push edi
push 0x44735c
xor bl, bl
mov dword [ebp - 0xc4], edi
call dword [sym.imp.ole32.dll_CoCreateInstance]
cmp eax, edi
jl 0x42c6ea
mov eax, dword [ebp - 0xc4]
cmp eax, edi
je 0x42c6ea
lea edx, [ebp - 0xc8]
push edx
push 0x44736c
mov dword [ebp - 0xc8], edi
mov ecx, dword [eax]
push eax
call dword [ecx]
cmp eax, edi
jl 0x42c6d4
mov eax, dword [ebp - 0xc8]
cmp eax, edi
je 0x42c6d4
cmp dword [ebp - 0x14], 8
mov ecx, dword [ebp - 0x28]
jae 0x42c6a7
lea ecx, [ebp - 0x28]
mov edx, dword [eax]
push 0x30
push ecx
push eax
call dword [edx + 0x14]
cmp eax, edi
jl 0x42c6c8
push dword [ebp - 0xc4]
mov ecx, dword [ebp - 0xc0]
call fcn.0042c9f1
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 0x42c731
mov eax, dword [ebp - 0xd4]
cmp byte [eax], 0
jne 0x42c738
cmp dword [ebp - 0x14], 8
mov eax, dword [ebp - 0x28]
jae 0x42c701
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x9c]
call fcn.00401222
lea eax, [ebp - 0x9c]
push eax
mov byte [ebp - 4], 6
call fcn.0040fb90
pop ecx
push edi
push 1
lea esi, [ebp - 0x9c]
mov byte [ebp - 4], 4
call fcn.004012b6
jmp 0x42c738
mov byte [ebp - 0xb9], 1
cmp byte [ebp - 0xb9], 0
mov bl, 1
jne 0x42c775
mov esi, dword [ebp - 0xd4]
cmp byte [esi], 0
jne 0x42c771
cmp dword [ebp - 0x14], 8
mov ecx, dword [ebp - 0x28]
jae 0x42c75a
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.004012b6
push edi
push 1
lea esi, [ebp - 0x2c]
call fcn.004012b6
push edi
push 1
lea esi, [ebp - 0x80]
call fcn.004012b6
push edi
push 1
lea esi, [ebp - 0x48]
call fcn.004012b6
push edi
push 1
lea esi, [ebp - 0x64]
call fcn.004012b6
mov al, bl
jmp 0x42c81c
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.004012b6
push ebx
push edi
lea esi, [ebp - 0x80]
call fcn.004012b6
push ebx
push edi
lea esi, [ebp - 0x48]
call fcn.004012b6
push ebx
push edi
jmp 0x42c812
push ebx
push 1
lea esi, [ebp - 0x80]
call fcn.004012b6
push ebx
push 1
lea esi, [ebp - 0x48]
call fcn.004012b6
push ebx
push 1
lea esi, [ebp - 0x64]
call fcn.004012b6
xor al, al
call fcn.00436d42
ret 0x14