Function at 0x407316
Capabilities:
Bypass windows file protection
Get file attributes
Read file on windows
Resolve function by parsing pe exports
Terminate process

Disassembly:
mov eax, 0xb3d0
call fcn.00416600
mov eax, dword [0x43565c]
xor eax, esp
mov dword [esp + 0xb3cc], eax
push ebx
mov bl, byte [esp + 0xb3d8]
push ebp
push esi
push edi
push 0x42a844
mov byte [esp + 0x17], 0
call dword [sym.imp.KERNEL32.dll_GetModuleHandleW]
mov esi, eax
test esi, esi
je 0x4073a5
push str.SetDllDirectoryW
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov edi, eax
test edi, edi
je 0x407379
movzx ecx, bl
neg ecx
sbb ecx, ecx
and ecx, 0x42a584
push ecx
mov ecx, edi
call dword [0x42a230]
call edi
push str.SetDefaultDllDirectories
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov esi, eax
test esi, esi
je 0x4073a5
movzx ecx, bl
xor ecx, 1
inc ecx
shl ecx, 0xb
push ecx
mov ecx, esi
call dword [0x42a230]
call esi
mov byte [esp + 0x13], 1
mov eax, dword [str.xlistpos]
or ebp, 0xffffffff
mov dword [esp + 0x18], str.version.dll
mov esi, 0x800
mov dword [esp + 0x1c], str.DXGIDebug.dll
mov dword [esp + 0x20], str.sfc_os.dll
cmp byte [eax], 0x78
mov dword [esp + 0x24], str.SSPICLI.DLL
mov dword [esp + 0x28], str.rsaenh.dll
mov dword [esp + 0x2c], str.UXTheme.dll
mov dword [esp + 0x30], str.dwmapi.dll
mov dword [esp + 0x34], str.cryptbase.dll
mov dword [esp + 0x38], str.lpk.dll
mov dword [esp + 0x3c], str.usp10.dll
mov dword [esp + 0x40], str.clbcatq.dll
mov dword [esp + 0x44], str.comres.dll
mov dword [esp + 0x48], str.ws2_32.dll
mov dword [esp + 0x4c], str.ws2help.dll
mov dword [esp + 0x50], str.psapi.dll
mov dword [esp + 0x54], str.ieframe.dll
mov dword [esp + 0x58], str.ntshrui.dll
mov dword [esp + 0x5c], str.atl.dll
mov dword [esp + 0x60], str.setupapi.dll
mov dword [esp + 0x64], str.apphelp.dll
mov dword [esp + 0x68], str.userenv.dll
mov dword [esp + 0x6c], str.netapi32.dll
mov dword [esp + 0x70], str.shdocvw.dll
mov dword [esp + 0x74], str.crypt32.dll
mov dword [esp + 0x78], str.msasn1.dll
mov dword [esp + 0x7c], str.cryptui.dll
mov dword [esp + 0x80], str.wintrust.dll
mov dword [esp + 0x84], str.shell32.dll
mov dword [esp + 0x88], str.secur32.dll
mov dword [esp + 0x8c], str.cabinet.dll
mov dword [esp + 0x90], str.oleaccrc.dll
mov dword [esp + 0x94], str.ntmarta.dll
mov dword [esp + 0x98], str.profapi.dll
mov dword [esp + 0x9c], str.WindowsCodecs.dll
mov dword [esp + 0xa0], str.srvcli.dll
mov dword [esp + 0xa4], str.cscapi.dll
mov dword [esp + 0xa8], str.slc.dll
mov dword [esp + 0xac], str.imageres.dll
mov dword [esp + 0xb0], str.dnsapi.DLL
mov dword [esp + 0xb4], str.iphlpapi.DLL
mov dword [esp + 0xb8], str.WINNSI.DLL
mov dword [esp + 0xbc], str.netutils.dll
mov dword [esp + 0xc0], str.mpr.dll
mov dword [esp + 0xc4], str.devrtl.dll
mov dword [esp + 0xc8], str.propsys.dll
mov dword [esp + 0xcc], str.mlang.dll
mov dword [esp + 0xd0], str.samcli.dll
mov dword [esp + 0xd4], str.samlib.dll
mov dword [esp + 0xd8], str.wkscli.dll
mov dword [esp + 0xdc], str.dfscli.dll
mov dword [esp + 0xe0], str.browcli.dll
mov dword [esp + 0xe4], str.rasadhlp.dll
mov dword [esp + 0xe8], str.dhcpcsvc6.dll
mov dword [esp + 0xec], str.dhcpcsvc.dll
mov dword [esp + 0xf0], str.XmlLite.dll
mov dword [esp + 0xf4], str.linkinfo.dll
mov dword [esp + 0xf8], str.cryptsp.dll
mov dword [esp + 0xfc], str.RpcRtRemote.dll
mov dword [esp + 0x100], str.aclui.dll
mov dword [esp + 0x104], str.dsrole.dll
mov dword [esp + 0x108], str.peerdist.dll
je 0x4076e6
push eax
call fcn.0041ebfd
mov edi, eax
xor ebx, ebx
pop ecx
test edi, edi
je 0x4076e8
push esi
lea eax, [esp + 0x1318]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push ebx
push ebx
push 3
push ebx
push 1
push 0x80000000
lea eax, [esp + 0x132c]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, ebp
je 0x4076d8
push ebx
push ebx
push edi
push esi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
cmp eax, edi
jne 0x4076d8
push ebx
lea eax, [esp + 0x18]
push eax
push 0x7ffe
lea eax, [esp + 0x33e8]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_ReadFile]
test eax, eax
je 0x4076d8
mov eax, dword [esp + 0x14]
and eax, 0xfffffffe
cmp eax, 0x8000
jae 0x4078ea
xor ecx, ecx
mov word [esp + eax + 0x33dc], cx
lea eax, [esp + 0x10c]
push 0x104
push eax
lea eax, [esp + 0x33e4]
push eax
jmp 0x4076cd
lea eax, [esp + 0x10c]
push eax
call fcn.004072b7
push 0x104
lea eax, [esp + 0x110]
push eax
push edi
call fcn.00406d80
mov edi, eax
test edi, edi
jne 0x4076b2
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, 0x800
jmp 0x4076e8
xor ebx, ebx
push esi
lea eax, [esp + 0x318]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push esi
lea eax, [esp + 0x318]
push eax
call fcn.00404029
push eax
lea eax, [esp + 0x23e4]
push eax
call fcn.00407077
mov edi, ebx
mov esi, ebx
call fcn.004033b7
cmp eax, 0x600
jb 0x407751
push dword [esp + esi*4 + 0x18]
call fcn.004072b7
test eax, eax
je 0x407751
push ebp
push str.DXGIDebug.dll
push ebp
push dword [esp + esi*4 + 0x24]
push 0x1001
push 0x400
call dword [sym.imp.KERNEL32.dll_CompareStringW]
cmp eax, 2
jne 0x40777a
mov esi, dword [esp + esi*4 + 0x18]
lea eax, [esp + 0x314]
push 0x800
push esi
push eax
call fcn.004040e4
lea eax, [esp + 0x314]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, ebp
jne 0x407782
inc ebx
cmp ebx, 8
jb 0x407716
jmp 0x407784
mov edi, esi
cmp byte [esp + 0x13], 0
jne 0x4077c0
xor esi, esi
mov ebx, dword [esp + esi*4 + 0x38]
lea eax, [esp + 0x314]
push 0x800
push ebx
push eax
call fcn.004040e4
lea eax, [esp + 0x314]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, ebp
jne 0x4077be
inc esi
cmp esi, 0x35
jb 0x40778d
jmp 0x4077c0
mov edi, ebx
test edi, edi
je 0x4078cf
lea eax, [esp + 0x314]
push eax
call fcn.00404073
call fcn.004033b7
cmp eax, 0x600
jb 0x407847
push str.dwmapi.dll
call fcn.004072b7
push str.uxtheme.dll
call fcn.004072b7
lea eax, [esp + 0x23dc]
push eax
lea eax, [esp + 0x318]
push eax
push edi
push 0xf1
call fcn.004053b7
push eax
lea eax, [esp + 0x1324]
push 0x864
push eax
call fcn.004030bd
add esp, 0x18
push 0x30
push 0xf0
call fcn.004053b7
push eax
lea eax, [esp + 0x131c]
push eax
push 0
call fcn.00411e94
jmp 0x4078c7
lea eax, [esp + 0x23dc]
push eax
lea eax, [esp + 0x318]
push eax
push edi
push str.Please_remove__s_from__s_folder._It_is_unsecure_to_run__s_until_it_is_done.
lea eax, [esp + 0x1324]
push 0x864
push eax
call fcn.004030bd
add esp, 0x18
call dword [sym.imp.KERNEL32.dll_AllocConsole]
test eax, eax
je 0x4078c7
call dword [sym.imp.KERNEL32.dll_GetCurrentProcessId]
push eax
call dword [sym.imp.KERNEL32.dll_AttachConsole]
push 0
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x131c]
push eax
call fcn.0041b233
pop ecx
push eax
lea eax, [esp + 0x1320]
push eax
push 0xfffffffffffffff4
call dword [sym.imp.KERNEL32.dll_GetStdHandle]
push eax
call dword [sym.imp.KERNEL32.dll_WriteConsoleW]
push 0x2710
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.KERNEL32.dll_FreeConsole]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov ecx, dword [esp + 0xb3dc]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.00416559
add esp, 0xb3d0
ret 4
call fcn.004167a5
int3