Function at 0x407d53
Capabilities:
Persist via run registry key

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x10
cmp byte [ebp + 8], 1
push ebx
push esi
push edi
mov esi, 0x415628
mov edi, 0x41ba28
jne 0x407daa
push 1
lea eax, [ebp - 0x10]
sub esp, 0x10
mov ebx, esp
push esi
push edi
push esi
push eax
call sub.MSVCP60.dll_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____cdecl_std::operator_unsigned_short_int_const___class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const__
add esp, 0xc
push eax
push ebx
call sub.MSVCP60.dll_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____cdecl_std::operator_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const___unsigned_short_int_const__
add esp, 0xc
push dword [ebp + 0x14]
push str.SoftwareMicrosoftWindowsCurrentVersionRun_
push closesocket
call fcn.0040b7b9
add esp, 0x20
lea ecx, [ebp - 0x10]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
cmp byte [ebp + 0xc], 1
jne 0x407dee
push 1
lea eax, [ebp - 0x10]
sub esp, 0x10
mov ebx, esp
push esi
push edi
push esi
push eax
call sub.MSVCP60.dll_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____cdecl_std::operator_unsigned_short_int_const___class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const__
add esp, 0xc
push eax
push ebx
call sub.MSVCP60.dll_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____cdecl_std::operator_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const___unsigned_short_int_const__
add esp, 0xc
push dword [ebp + 0x14]
push str.SoftwareMicrosoftWindowsCurrentVersionRun_
push closesocket
call fcn.0040b7b9
add esp, 0x20
lea ecx, [ebp - 0x10]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
cmp byte [ebp + 0x10], 1
jne 0x407e32
push 1
lea eax, [ebp - 0x10]
sub esp, 0x10
mov ebx, esp
push esi
push edi
push esi
push eax
call sub.MSVCP60.dll_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____cdecl_std::operator_unsigned_short_int_const___class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const__
add esp, 0xc
push eax
push ebx
call sub.MSVCP60.dll_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int_____cdecl_std::operator_class_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int___const___unsigned_short_int_const__
add esp, 0xc
push dword [ebp + 0x14]
push str.SoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun_
push closesocket
call fcn.0040b7b9
add esp, 0x20
lea ecx, [ebp - 0x10]
call dword [sym.imp.MSVCP60.dll_public:_void___thiscall_std::basic_string_unsigned_short_int__struct_std::char_traits_unsigned_short_int___class_std::allocator_unsigned_short_int__::destructor_void_]
pop edi
pop esi
pop ebx
leave
ret