Function at 0x4efc64
Capabilities:
Delete registry key
Get common file path

Disassembly:
push ebx
xor eax, eax
push eax
push eax
push eax
push eax
push eax
call fcn.005b13d0
mov eax, str.SpiderBasic_Running
push eax
push 0
push 0
call sub.KERNEL32.dll_CreateMutexW
push 0x7f00
push 0
call sub.USER32.dll_LoadCursorW
mov dword [0x7c1d70], eax
push dword [0x7c1fc8]
mov edx, 0x72b0ec
pop ecx
call fcn.0054d570
je 0x4efd0f
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
push 0x104
call fcn.005af190
push 0x7c1fc8
call fcn.005b12d0
push 0x104
mov eax, dword [0x7c1fc8]
push eax
xor eax, eax
push eax
call sub.KERNEL32.dll_GetModuleHandleW
push eax
call sub.KERNEL32.dll_GetModuleFileNameW
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
push dword [0x7c1fc8]
call fcn.0059ce59
push 0x7c1fc8
call fcn.005b12d0
push edx
call fcn.005b1230
pop edx
push eax
mov edx, dword [0x7c1fc8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.CompilersScintilla.dll
push edx
call fcn.005b1270
call fcn.0054d542
add dword [esp], edx
call fcn.0057efa0
call fcn.0054d560
mov ebx, eax
and ebx, ebx
jne 0x4efd69
push 0x10
mov eax, str.Cannot_initialize_Scintilla_engine__r_nMake_sure_the_Scintilla.dll_is_placed_in_the_Compilers_subdirectory_of_your_SpiderBasic_setup.
push eax
mov eax, 0x72e4d2
push eax
call fcn.00442949
jmp 0x4098fe
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
call fcn.0059d283
push 0x7c1c0c
call fcn.005b12d0
push dword [0x7c1e64]
mov edx, 0x72b0ec
pop ecx
call fcn.0054d570
je 0x4efdbd
push edx
call fcn.005b1230
pop edx
push eax
call fcn.004ae85f
mov edx, str.SpiderBasic.prefs
push edx
call fcn.005b1270
push 0x7c1e64
call fcn.005b12d0
push dword [0x7c1b40]
mov edx, 0x72b0ec
pop ecx
call fcn.0054d570
je 0x4efdf2
push edx
call fcn.005b1230
pop edx
push eax
call fcn.004ae85f
mov edx, str.Tools.prefs
push edx
call fcn.005b1270
push 0x7c1b40
call fcn.005b12d0
push dword [0x7c22d4]
mov edx, 0x72b0ec
pop ecx
call fcn.0054d570
je 0x4efe27
push edx
call fcn.005b1230
pop edx
push eax
call fcn.004ae85f
mov edx, str.Templates.prefs
push edx
call fcn.005b1270
push 0x7c22d4
call fcn.005b12d0
push dword [0x7c22ec]
mov edx, 0x72b0ec
pop ecx
call fcn.0054d570
je 0x4efe5c
push edx
call fcn.005b1230
pop edx
push eax
call fcn.004ae85f
mov edx, str.History.db
push edx
call fcn.005b1270
push 0x7c22ec
call fcn.005b12d0
mov ebx, dword [0x7c1fec]
and ebx, ebx
jne 0x4eff88
lea eax, [esp]
push eax
push 0x23
push 0
call sub.SHELL32.dll_SHGetSpecialFolderLocation
mov ebx, eax
and ebx, ebx
jne 0x4eff09
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
push 0x104
call fcn.005af190
push 0x7c1e18
call fcn.005b12d0
mov eax, dword [0x7c1e18]
push eax
push dword [esp + 4]
call sub.SHELL32.dll_SHGetPathFromIDListW
and eax, eax
je 0x4efee9
mov edx, dword [0x7c1e18]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.SpiderBasicExamples_
push edx
call fcn.005b1270
push 0x7c1e18
call fcn.005b12d0
jmp 0x4eff07
mov edx, dword [0x7c1fc8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
push 0x7c1e18
call fcn.005b12d0
jmp 0x4eff27
mov edx, dword [0x7c1fc8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
push 0x7c1e18
call fcn.005b12d0
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
push 1
push dword [0x7c1e18]
call fcn.005ade80
call fcn.005b1360
mov edx, 0x72dc3a
call fcn.0054d5b0
mov ecx, eax
call fcn.0054d570
jne 0x4eff88
mov edx, dword [0x7c1e18]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, 0x72dc3a
push edx
call fcn.005b1270
push 0x7c1e18
call fcn.005b12d0
mov ebx, dword [0x7c2300]
and ebx, ebx
jne 0x4f05d7
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
call fcn.005710ca
call fcn.0054d542
add dword [esp], edx
call fcn.0059cbbf
lea eax, [esp + 8]
push eax
call fcn.005b12d0
push edx
call fcn.005b1230
pop edx
push eax
mov edx, 0x72c272
push edx
call fcn.005b1270
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
call fcn.005710ca
pop eax
mov edx, 0x72c272
push edx
call fcn.005b1270
lea eax, [esp + 0xc]
push eax
call fcn.005b12d0
mov edx, dword [esp + 8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.___1_
push edx
call fcn.005b1270
lea eax, [esp + 0xc]
push eax
call fcn.005b12d0
mov edx, dword [esp + 8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.__P__
push edx
call fcn.005b1270
mov edx, dword [0x7c1e64]
push edx
call fcn.005b1270
mov edx, 0x72c272
push edx
call fcn.005b1270
lea eax, [esp + 0xc]
push eax
call fcn.005b12d0
mov edx, dword [esp + 8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.__T__
push edx
call fcn.005b1270
mov edx, dword [0x7c22d4]
push edx
call fcn.005b1270
mov edx, 0x72c272
push edx
call fcn.005b1270
lea eax, [esp + 0xc]
push eax
call fcn.005b12d0
mov edx, dword [esp + 8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.__A__
push edx
call fcn.005b1270
mov edx, dword [0x7c1b40]
push edx
call fcn.005b1270
mov edx, 0x72c272
push edx
call fcn.005b1270
lea eax, [esp + 0xc]
push eax
call fcn.005b12d0
mov edx, dword [esp + 8]
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1270
mov edx, str.__H__
push edx
call fcn.005b1270
mov edx, dword [0x7c22ec]
push edx
call fcn.005b1270
mov edx, 0x72c272
push edx
call fcn.005b1270
lea eax, [esp + 0xc]
push eax
call fcn.005b12d0
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
call fcn.005710ca
mov edx, 0x7444bc
push edx
call fcn.005b1270
lea eax, [esp + 0x10]
push eax
call fcn.005b12d0
call fcn.00595333
mov ebx, eax
cmp ebx, 0x3c
jl 0x4f0341
mov ebx, dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
push dword [esp + 0xc]
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.SoftwareClasses_
push edx
call fcn.005b1270
mov edx, dword [esp + 0x10]
push edx
call fcn.005b1270
mov edx, str._shellopencommand
push edx
call fcn.005b1270
call fcn.005b1360
push reloc.WS2_32.dll_accept
call fcn.0054d542
add dword [esp + 4], edx
call fcn.00433b7e
call fcn.0054d560
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
push dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.SoftwareClasses_
push edx
call fcn.005b1270
mov edx, dword [esp + 0x10]
push edx
call fcn.005b1270
mov edx, str.DefaultIcon
push edx
call fcn.005b1270
call fcn.005b1360
push reloc.WS2_32.dll_accept
call fcn.0054d542
add dword [esp + 4], edx
call fcn.00433b7e
call fcn.0054d560
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sb
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sbi
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sbp
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sbf
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
call fcn.00595333
mov ebx, eax
cmp ebx, 0x3c
jne 0x4f033c
push edx
call fcn.005b1230
pop edx
push eax
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.Applications_
push edx
call fcn.005b1270
mov edx, dword [esp + 0xc]
push edx
call fcn.005b1270
call fcn.005b1360
push connect
call fcn.0054d542
add dword [esp + 4], edx
call sub.SHLWAPI.dll_SHDeleteKeyW
call fcn.0054d560
mov ebx, eax
and ebx, ebx
jne 0x4f02fa
mov ebx, dword [esp + 0x10]
or ebx, 1
mov dword [esp + 0x10], ebx
mov eax, str.SoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.sb
push eax
push connect
call sub.SHLWAPI.dll_SHDeleteKeyW
mov ebx, eax
and ebx, ebx
jne 0x4f031b
mov ebx, dword [esp + 0x10]
or ebx, 1
mov dword [esp + 0x10], ebx
mov eax, str.SoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.sbi
push eax
push connect
call sub.SHLWAPI.dll_SHDeleteKeyW
mov ebx, eax
and ebx, ebx
jne 0x4f033c
mov ebx, dword [esp + 0x10]
or ebx, 1
mov dword [esp + 0x10], ebx
jmp 0x4f05b7
call sub.KERNEL32.dll_GetVersion
mov ebx, eax
and ebx, 0xff0000
and ebx, ebx
je 0x4f0489
mov ebx, dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
push dword [esp + 0xc]
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.Applications_
push edx
call fcn.005b1270
mov edx, dword [esp + 0x10]
push edx
call fcn.005b1270
mov edx, str._shellopencommand
push edx
call fcn.005b1270
call fcn.005b1360
push connect
call fcn.0054d542
add dword [esp + 4], edx
call fcn.00433b7e
call fcn.0054d560
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
push dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.Applications_
push edx
call fcn.005b1270
mov edx, dword [esp + 0x10]
push edx
call fcn.005b1270
mov edx, str.DefaultIcon
push edx
call fcn.005b1270
call fcn.005b1360
push connect
call fcn.0054d542
add dword [esp + 4], edx
call fcn.00433b7e
call fcn.0054d560
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.sb
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.sbi
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.sbp
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.sbf
push eax
push reloc.WS2_32.dll_accept
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
jmp 0x4f05b7
mov ebx, dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
push dword [esp + 0xc]
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.SoftwareClasses_
push edx
call fcn.005b1270
mov edx, dword [esp + 0x10]
push edx
call fcn.005b1270
mov edx, str._shellopencommand
push edx
call fcn.005b1270
call fcn.005b1360
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0054d542
add dword [esp + 4], edx
call fcn.00433b7e
call fcn.0054d560
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
push dword [esp + 0x10]
push edx
call fcn.005b1230
pop edx
push eax
mov edx, str.SoftwareClasses_
push edx
call fcn.005b1270
mov edx, dword [esp + 0x10]
push edx
call fcn.005b1270
mov edx, str.DefaultIcon
push edx
call fcn.005b1270
call fcn.005b1360
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.0054d542
add dword [esp + 4], edx
call fcn.00433b7e
call fcn.0054d560
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sb
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sbi
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sbp
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
mov ebx, dword [esp + 0x10]
push dword [esp + 4]
mov eax, str.SoftwareCLASSES.sbf
push eax
push reloc.OLEAUT32.dll_SysReAllocString
call fcn.00433b7e
or ebx, eax
mov dword [esp + 0x10], ebx
cmp dword [esp + 0x10], 0
je 0x4f05d7
push 0
push 0
push 0
push 0x8000000
call sub.SHELL32.dll_SHChangeNotify
call fcn.0040a66d
mov dword [0x7c1a4c], eax
mov eax, str.SpiderBasic_RunOnce
push eax
call sub.USER32.dll_RegisterWindowMessageW
mov dword [0x7c18d8], eax
mov eax, 1
jmp 0x4f05fa
push dword [esp + 4]
call fcn.005b1460
push dword [esp + 8]
call fcn.005b1460
push dword [esp + 0xc]
call fcn.005b1460
add esp, 0x14
pop ebx
ret