Function at 0x10010050
Capabilities:
Check if file exists

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10244ff0
mov eax, dword fs:[0]
push eax
sub esp, 0x11c
mov eax, dword [0x102de06c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
lea ecx, [ebp - 0x119]
call fcn.10003e10
mov dword [ebp - 4], 0
xor eax, eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xa4], 7
mov word [ebp - 0xb8], ax
mov dword [ebp - 0x90], eax
mov dword [ebp - 0x8c], 7
mov word [ebp - 0xa0], ax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x28]
push 7
push 0x102c4918
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
call fcn.100088f0
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 4
push eax
call fcn.10002580
mov ecx, eax
call fcn.1003ae27
mov esi, eax
lea eax, [ebp - 0x40]
cmp eax, esi
je 0x10010139
mov ecx, eax
call fcn.100094a0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x30], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x5c]
cmp edx, 8
jb 0x10010173
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10010169
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a79
push edx
push ecx
call fcn.10039277
add esp, 8
lea eax, [ebp - 0x40]
push eax
call fcn.1003e358
add esp, 4
test eax, eax
jne 0x10010190
push 0x102c45d8
lea ecx, [ebp - 0x40]
call fcn.10004090
push str.WinAssist.exe
lea ecx, [ebp - 0x40]
call fcn.10004090
lea eax, [ebp - 0x70]
push eax
call fcn.1004b53c
mov esi, eax
add esp, 4
lea eax, [ebp - 0xa0]
cmp eax, esi
je 0x100101e6
mov ecx, eax
call fcn.100094a0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0xa0], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x90], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x5c]
cmp edx, 8
jb 0x10010220
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10010216
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a7e
push edx
push ecx
call fcn.10039277
add esp, 8
push str.SoftwareMicrosoftWindowsCurrentVersionExplorerShell_Folders_
lea ecx, [ebp - 0xa0]
call fcn.10004090
cmp dword [ebp - 0x8c], 8
lea eax, [ebp - 0xa0]
push str.Desktop
cmovae eax, dword [ebp - 0xa0]
push eax
lea eax, [ebp - 0x70]
push reloc.WS2_32.dll_closesocket
push eax
call fcn.1004cccf
mov esi, eax
add esp, 0x10
lea eax, [ebp - 0xb8]
cmp eax, esi
je 0x10010298
mov ecx, eax
call fcn.100094a0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0xb8], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0xa8], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x5c]
cmp edx, 8
jb 0x100102d2
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100102c8
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a83
push edx
push ecx
call fcn.10039277
add esp, 8
cmp dword [ebp - 0xa4], 8
lea eax, [ebp - 0xb8]
mov esi, dword [sym.imp.SHLWAPI.dll_PathFileExistsW]
cmovae eax, dword [ebp - 0xb8]
push eax
call esi
test eax, eax
je 0x100103de
lea eax, [ebp - 0xb8]
push eax
lea ecx, [ebp - 0x58]
call fcn.10008c80
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
xor eax, eax
push eax
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 7
push 0x102c4a58
mov word [ecx], ax
call fcn.100088f0
lea eax, [ebp - 0x58]
push eax
call fcn.1003dbc2
add esp, 0x1c
lea ecx, [ebp - 0x58]
push 0x102c45d8
call fcn.10004090
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x58]
call fcn.1000cc90
push str..lnk
lea ecx, [ebp - 0x58]
call fcn.10004090
cmp dword [ebp - 0x44], 8
lea eax, [ebp - 0x58]
cmovae eax, dword [ebp - 0x58]
push eax
call esi
test eax, eax
jne 0x100103a0
cmp dword [ebp - 0x2c], 8
lea ecx, [ebp - 0x40]
push 0
cmovae ecx, dword [ebp - 0x40]
lea eax, [ebp - 0x58]
cmp dword [ebp - 0x44], 8
push 0
cmovae eax, dword [ebp - 0x58]
push 0
push 1
push 0
push 0
push ecx
push eax
lea ecx, [ebp - 0x119]
call fcn.10049563
mov byte [ebp - 4], 4
mov edx, dword [ebp - 0x44]
cmp edx, 8
jb 0x100103de
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100103d4
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a88
push edx
push ecx
call fcn.10039277
add esp, 8
call fcn.1000a3e0
xor eax, eax
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 7
mov word [ebp - 0x88], ax
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 6
push eax
call fcn.10002580
mov ecx, eax
call fcn.1003ae27
mov esi, eax
lea eax, [ebp - 0x88]
cmp eax, esi
je 0x10010448
mov ecx, eax
call fcn.100094a0
movups xmm0, xmmword [esi]
xor eax, eax
movups xmmword [ebp - 0x88], xmm0
movq xmm0, qword [esi + 0x10]
movq qword [ebp - 0x78], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 7
mov word [esi], ax
mov edx, dword [ebp - 0x5c]
cmp edx, 8
jb 0x10010482
mov ecx, dword [ebp - 0x70]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10010478
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a8d
push edx
push ecx
call fcn.10039277
add esp, 8
lea eax, [ebp - 0x88]
push eax
call fcn.1003e358
add esp, 4
test eax, eax
jne 0x100104a5
push 0x102c45d8
lea ecx, [ebp - 0x88]
call fcn.10004090
push str.uninst00.exe
lea ecx, [ebp - 0x88]
call fcn.10004090
cmp dword [ebp - 0x14], 8
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x119]
cmovae eax, dword [ebp - 0x28]
push eax
call fcn.10049671
cmp dword [ebp - 0x14], 8
lea esi, [ebp - 0x28]
lea ecx, [ebp - 0x28]
cmovae esi, dword [ebp - 0x28]
lea eax, [ebp - 0x100]
cmovae ecx, dword [ebp - 0x28]
push esi
push ecx
push 0x102c4a9c
push eax
call fcn.1003e0b1
add esp, 0x10
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x40]
cmp dword [ebp - 0x2c], 8
lea eax, [ebp - 0x100]
cmovae ecx, dword [ebp - 0x40]
cmp dword [ebp - 0xec], 8
push ecx
cmovae eax, dword [ebp - 0x100]
lea ecx, [ebp - 0x119]
push eax
call fcn.10049735
cmp dword [ebp - 0x14], 8
lea esi, [ebp - 0x28]
lea edx, [ebp - 0x28]
cmovae esi, dword [ebp - 0x28]
lea eax, [ebp - 0xe8]
cmovae edx, dword [ebp - 0x28]
push esi
push 0x102c4aa8
push edx
push str._s_s_s
push eax
call fcn.1003e0b1
add esp, 0x14
mov byte [ebp - 4], 8
lea ecx, [ebp - 0x88]
cmp dword [ebp - 0x74], 8
lea eax, [ebp - 0xe8]
cmovae ecx, dword [ebp - 0x88]
cmp dword [ebp - 0xd4], 8
push ecx
cmovae eax, dword [ebp - 0xe8]
lea ecx, [ebp - 0x119]
push eax
call fcn.10049735
call fcn.10002580
mov ecx, eax
call fcn.1003abd0
test al, al
je 0x1001068a
push 9
xor eax, eax
mov dword [ebp - 0x48], 0
push str.WinAssist
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x44], 7
mov word [ebp - 0x58], ax
call fcn.100088f0
push 0x102c4dd8
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 9
call fcn.10004090
push 0x3a8
sub esp, 0x18
lea eax, [ebp - 0x58]
mov ecx, esp
push eax
call fcn.10008c80
lea eax, [ebp - 0x70]
push eax
call fcn.1004036b
add esp, 8
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x70]
mov ecx, esp
push eax
call fcn.10005db0
call fcn.1000bd00
mov byte [ebp - 4], 9
mov edx, dword [ebp - 0x5c]
cmp edx, 0x10
jb 0x1001063a
mov ecx, dword [ebp - 0x70]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x10010630
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a92
push edx
push ecx
call fcn.10039277
add esp, 8
mov byte [ebp - 4], 8
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp edx, 8
jb 0x1001068a
mov ecx, dword [ebp - 0x58]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10010680
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a97
push edx
push ecx
call fcn.10039277
add esp, 8
push 0
call fcn.100b5790
push edx
push eax
lea eax, [ebp - 0xd0]
push eax
call fcn.1003e2df
add esp, 0x10
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0xd0]
cmp dword [ebp - 0xbc], 8
cmovae eax, dword [ebp - 0xd0]
push eax
call fcn.10002580
mov ecx, eax
call fcn.1003befd
sub esp, 0x18
lea eax, [ebp - 0xd0]
mov ecx, esp
push eax
call fcn.10008c80
call fcn.1003f499
mov dword [ebp - 0x128], eax
lea eax, [ebp - 0x128]
push eax
mov dword [ebp - 0x124], edx
call fcn.100be431
push dword [eax + 0xc]
mov ecx, dword [eax + 0x10]
mov eax, dword [eax + 0x14]
inc ecx
push ecx
add eax, 0x76c
push eax
lea eax, [ebp - 0x118]
push str._d_.2d_.2d
push eax
call fcn.1003dfe7
mov byte [ebp - 4], 0xc
call fcn.1000a1b0
add esp, 0x18
mov esi, eax
lea eax, [ebp - 0x118]
mov ecx, esp
push eax
call fcn.10005db0
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x38]
mov edx, dword [ebp - 0x104]
cmp edx, 0x10
jb 0x10010774
mov ecx, dword [ebp - 0x118]
inc edx
mov eax, ecx
cmp edx, 0x1000
jb 0x1001076a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010a9c
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0xbc]
mov dword [ebp - 0x108], 0
mov dword [ebp - 0x104], 0xf
mov byte [ebp - 0x118], 0
cmp edx, 8
jb 0x100107cf
mov ecx, dword [ebp - 0xd0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100107c5
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010aa1
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0xd4]
xor eax, eax
mov dword [ebp - 0xc0], 0
mov dword [ebp - 0xbc], 7
mov word [ebp - 0xd0], ax
cmp edx, 8
jb 0x1001082c
mov ecx, dword [ebp - 0xe8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10010822
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010aa6
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0xec]
xor eax, eax
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 7
mov word [ebp - 0xe8], ax
cmp edx, 8
jb 0x10010889
mov ecx, dword [ebp - 0x100]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001087f
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010aab
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0x74]
xor eax, eax
mov dword [ebp - 0xf0], 0
mov dword [ebp - 0xec], 7
mov word [ebp - 0x100], ax
cmp edx, 8
jb 0x100108e3
mov ecx, dword [ebp - 0x88]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100108d9
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010ab0
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0x14]
xor eax, eax
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 7
mov word [ebp - 0x88], ax
cmp edx, 8
jb 0x10010934
mov ecx, dword [ebp - 0x28]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001092a
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010ab5
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0x8c]
xor eax, eax
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 7
mov word [ebp - 0x28], ax
cmp edx, 8
jb 0x10010988
mov ecx, dword [ebp - 0xa0]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x1001097e
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010aba
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0xa4]
xor eax, eax
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 7
mov word [ebp - 0xa0], ax
cmp edx, 8
jb 0x100109e5
mov ecx, dword [ebp - 0xb8]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x100109db
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010abf
push edx
push ecx
call fcn.10039277
add esp, 8
mov edx, dword [ebp - 0x2c]
xor eax, eax
mov dword [ebp - 0xa8], 0
mov dword [ebp - 0xa4], 7
mov word [ebp - 0xb8], ax
cmp edx, 8
jb 0x10010a3c
mov ecx, dword [ebp - 0x40]
lea edx, [edx*2 + 2]
mov eax, ecx
cmp edx, 0x1000
jb 0x10010a32
mov ecx, dword [ecx - 4]
add edx, 0x23
sub eax, ecx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10010ac4
push edx
push ecx
call fcn.10039277
add esp, 8
xor eax, eax
mov dword [ebp - 0x30], 0
lea ecx, [ebp - 0x119]
mov dword [ebp - 0x2c], 7
mov word [ebp - 0x40], ax
call fcn.100018f0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.10039266
mov esp, ebp
pop ebp
ret 4
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
call fcn.100b535e
int3