Function at 0x413e00
Capabilities:
Check os version
Copy file
Delete file
Hide graphical window
Set file attributes

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4f8
mov eax, dword [0x533d80]
xor eax, ebp
mov dword [ebp - 4], eax
push ebx
mov ebx, dword [ebp + 8]
lea eax, [ebp - 0x484]
push esi
push edi
push 0x98
push 0
push eax
mov dword [ebp - 0x4c8], ebx
call fcn.00402b12
add esp, 0xc
mov dword [ebp - 0x488], 0x9c
lea eax, [ebp - 0x488]
push eax
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov ecx, dword [ebp - 0x484]
mov eax, dword [ebp - 0x480]
cmp ecx, 6
jb 0x413f92
cmp eax, 1
jae 0x413e85
cmp ecx, 6
jne 0x413f92
test eax, eax
jne 0x413f92
cmp word [ebp - 0x3f4], 2
jne 0x413f92
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign_new.exe
lea eax, [ebp - 0x25c]
push 0xc8
push eax
call fcn.00401b7c
lea eax, [ebp - 0x25c]
push 0x5001d1
push eax
call fcn.00404ff2
add esp, 0x20
test eax, eax
jle 0x41409d
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign.exe
lea eax, [ebp - 0xcc]
push 0xc8
push eax
call fcn.00401b7c
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign_new.exe
lea eax, [ebp - 0x194]
push 0xc8
push eax
call fcn.00401b7c
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign_legacy.exe
lea eax, [ebp - 0x324]
push 0xc8
push eax
call fcn.00401b7c
add esp, 0x48
push 0
push 0
call fcn.00402031
push eax
push str._s_scrollctl_legacy.dll
lea eax, [ebp - 0x3ec]
push 0xc8
push eax
call fcn.00401b7c
add esp, 0x18
lea eax, [ebp - 0xcc]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0
lea eax, [ebp - 0xcc]
push eax
lea eax, [ebp - 0x194]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x194]
push eax
call esi
lea eax, [ebp - 0x324]
push eax
call esi
lea eax, [ebp - 0x3ec]
jmp 0x41409a
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign_legacy.exe
lea eax, [ebp - 0x3ec]
push 0xc8
push eax
call fcn.00401b7c
lea eax, [ebp - 0x3ec]
push 0x5001d1
push eax
call fcn.00404ff2
add esp, 0x20
test eax, eax
jle 0x41409d
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign.exe
lea eax, [ebp - 0x194]
push 0xc8
push eax
call fcn.00401b7c
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign_new.exe
lea eax, [ebp - 0x324]
push 0xc8
push eax
call fcn.00401b7c
push 0
push 0
call fcn.00402031
push eax
push str._s_smsign_legacy.exe
lea eax, [ebp - 0xcc]
push 0xc8
push eax
call fcn.00401b7c
add esp, 0x48
push 0
push 0
call fcn.00402031
push eax
push str._s_scrollctl_new.dll
lea eax, [ebp - 0x25c]
push 0xc8
push eax
call fcn.00401b7c
add esp, 0x18
lea eax, [ebp - 0x194]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
push 0
lea eax, [ebp - 0x194]
push eax
lea eax, [ebp - 0xcc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
mov esi, dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x324]
push eax
call esi
lea eax, [ebp - 0xcc]
push eax
call esi
lea eax, [ebp - 0x25c]
push eax
call esi
mov esi, dword [sym.imp.USER32.dll_LoadIconA]
push 0x533b80
push ebx
mov dword [ebp - 0x4f8], 0x30
mov dword [ebp - 0x4f4], 3
mov dword [ebp - 0x4f0], 0x4014b5
mov dword [ebp - 0x4ec], 0
mov dword [ebp - 0x4e8], 0x1e
mov dword [ebp - 0x4e4], ebx
call esi
push 0x7f00
push 0
mov dword [ebp - 0x4e0], eax
call dword [sym.imp.USER32.dll_LoadCursorA]
push 0x533b80
push ebx
mov dword [ebp - 0x4dc], eax
mov dword [ebp - 0x4d8], 5
mov dword [ebp - 0x4d4], 0
mov dword [ebp - 0x4d0], 0x500d6c
call esi
mov dword [ebp - 0x4cc], eax
lea eax, [ebp - 0x4f8]
push eax
call dword [sym.imp.USER32.dll_RegisterClassExA]
mov esi, dword [sym.imp.USER32.dll_RegisterWindowMessageA]
push str._MSGNET_CLIENT_CLOSED_
call esi
push str._MSGNET_CLIENT_BANNER_SOFTWARE_VERSION_MISMATCH_
mov dword [0x536140], eax
call esi
push str._MSGNET_CLIENT_BANNER_PID_NOTIFY
mov dword [0x536144], eax
call esi
push 0
push 0
push 0
push 0x533b80
push ebx
mov dword [0x536148], eax
call dword [sym.imp.USER32.dll_CreateDialogParamA]
push 1
mov ebx, eax
push 0x417
mov dword [ebp - 0x4c4], ebx
call dword [sym.imp.USER32.dll_ChangeWindowMessageFilter]
push 0
push ebx
call dword [sym.imp.USER32.dll_ShowWindow]
push 0xa
mov dword [0x535360], ebx
push ebx
mov ebx, dword [sym.imp.USER32.dll_GetDlgItem]
call ebx
push eax
call dword [sym.imp.USER32.dll_GetDC]
mov edi, eax
lea eax, [ebp - 0x4c0]
push eax
push edi
call dword [sym.imp.GDI32.dll_GetTextMetricsA]
mov ecx, dword [ebp - 0x4a8]
push edi
mov edi, dword [ebp - 0x4c4]
push edi
lea ecx, [ecx + ecx*4]
shl ecx, 4
movzx esi, cx
call dword [sym.imp.USER32.dll_ReleaseDC]
push 0
movsx eax, si
push eax
push 0x194
push 0xa
push edi
call ebx
push eax
call dword [sym.imp.USER32.dll_SendMessageA]
push dword [ebp - 0x4c8]
push edi
call fcn.004119a0
mov esi, dword [0x535360]
add esp, 8
call fcn.00401915
mov ecx, dword [ebp - 4]
mov eax, esi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00402a5e
mov esp, ebp
pop ebp
ret