Function at 0x4c3b7d
Capabilities:
Accept command line arguments
Copy file

Disassembly:
push 0x628
mov eax, 0x5d7ae1
call fcn.00506e69
lea eax, [ebp - 0x5f8]
mov dword [ebp - 0x5ec], 1
or edi, 0xffffffff
push eax
mov dword [ebp - 0x5f8], edi
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
xor esi, esi
mov dword [ebp - 0x5f4], eax
inc esi
cmp dword [ebp - 0x5f8], esi
jle 0x4c44a0
push esi
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5e8], esp
push str._backuppdb
call fcn.00413f4d
mov eax, dword [ebp - 0x5f4]
sub esp, 0x18
mov ecx, esp
xor ebx, ebx
mov dword [ebp - 4], ebx
push dword [eax + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
je 0x4c3fac
lea ecx, [ebp - 0x634]
call fcn.0042ca82
push ecx
mov ecx, esp
mov dword [ebp - 0x5e8], esp
push 0x5ffd5c
mov dword [ebp - 4], esi
call fcn.00413f09
push ecx
push esp
lea ecx, [ebp - 0x634]
mov byte [ebp - 4], 2
call fcn.0043944c
lea eax, [ebp - 0x5fc]
mov byte [ebp - 4], 1
push eax
lea ecx, [ebp - 0x634]
call fcn.00434114
push ecx
mov ecx, esp
mov dword [ebp - 0x5e8], esp
push 0x5ffdb4
mov byte [ebp - 4], 3
call fcn.00413f09
push ecx
push esp
lea ecx, [ebp - 0x634]
mov byte [ebp - 4], 4
call fcn.0043944c
lea eax, [ebp - 0x5f4]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x634]
call fcn.00434114
push ebx
push 0x20
push 3
push ebx
push ebx
push SysReAllocString
push dword [ebp - 0x5fc]
mov byte [ebp - 4], 5
call dword [sym.imp.KERNEL32.dll_CreateFileW]
mov esi, eax
cmp esi, edi
je 0x4c3f71
lea eax, [ebp - 0x604]
mov dword [ebp - 0x604], ebx
push eax
push ebx
push ebx
push esi
mov dword [ebp - 0x600], ebx
call dword [sym.imp.KERNEL32.dll_GetFileTime]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push edi
lea eax, [ebp - 0x604]
push eax
lea ecx, [ebp - 0x618]
call fcn.00451754
call fcn.0041279d
push eax
lea ecx, [ebp - 0x5ec]
call fcn.00411d94
lea eax, [ebp - 0x38]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x618]
call fcn.00489025
test eax, eax
je 0x4c3d1d
mov esi, dword [eax]
mov dword [ebp - 0x60c], esi
jmp 0x4c3d23
mov dword [ebp - 0x60c], edi
lea eax, [ebp - 0x5c]
push eax
lea ecx, [ebp - 0x618]
call fcn.00489025
test eax, eax
je 0x4c3d41
mov esi, dword [eax + 4]
mov dword [ebp - 0x5f0], esi
jmp 0x4c3d47
mov dword [ebp - 0x5f0], edi
lea eax, [ebp - 0x80]
push eax
lea ecx, [ebp - 0x618]
call fcn.00489025
test eax, eax
je 0x4c3d5d
mov edi, dword [eax + 8]
lea eax, [ebp - 0xa4]
push eax
lea ecx, [ebp - 0x618]
call fcn.00489025
test eax, eax
je 0x4c3d78
mov esi, dword [eax + 0xc]
jmp 0x4c3d7a
mov esi, ebx
lea eax, [ebp - 0xc8]
push eax
lea ecx, [ebp - 0x618]
call fcn.00489025
test eax, eax
je 0x4c3d96
mov eax, dword [eax + 0x10]
inc eax
jmp 0x4c3d98
mov eax, ebx
push dword [ebp - 0x60c]
lea ecx, [ebp - 0x618]
push dword [ebp - 0x5f0]
push edi
push esi
push eax
call fcn.00493c81
push eax
lea eax, [ebp - 0x5ec]
push 0x5ffddc
push eax
call fcn.00412690
lea eax, [ebp - 0x5f0]
push ebx
push eax
call fcn.0048ba90
lea eax, [ebp - 0x5f0]
mov byte [ebp - 4], 7
push eax
lea eax, [ebp - 0x610]
push str.pdbbackup_softmaster_
push eax
call fcn.0042e01c
push 0x5ffe20
push eax
lea eax, [ebp - 0x60c]
mov byte [ebp - 4], 8
push eax
call fcn.0042dfbd
add esp, 0x40
mov ecx, eax
push ecx
mov eax, esp
mov dword [ebp - 0x5e8], esp
lea edx, [ebp - 0x5ec]
mov byte [ebp - 4], 9
push edx
push ecx
push eax
call fcn.0043910d
add esp, 8
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x634]
push esp
call fcn.0043944c
lea eax, [ebp - 0x5e4]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x634]
call fcn.00434114
mov ecx, dword [ebp - 0x60c]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x610]
mov byte [ebp - 4], 0xd
lea ecx, [ecx - 0x10]
call fcn.00412ac4
lea eax, [ebp - 0x5e4]
push eax
call fcn.00467006
pop ecx
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x5e0], esp
push 0x5ffeac
call fcn.00413f09
push ecx
mov esi, esp
mov byte [ebp - 4], 0xe
mov dword [ebp - 0x5dc], esi
mov eax, dword [ebp - 0x5e4]
add eax, 0xfffffff0
push eax
call fcn.00412393
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0x5e8]
pop ecx
push eax
lea ecx, [ebp - 0x634]
mov byte [ebp - 4], 0xd
call fcn.00434114
mov edi, dword [sym.imp.KERNEL32.dll_CopyFileW]
push dword [eax]
push dword [ebp - 0x5fc]
call edi
mov ecx, dword [ebp - 0x5e8]
add ecx, 0xfffffff0
call fcn.00412ac4
push ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push str.softmaster.pdb
call fcn.00413f09
push ecx
mov esi, esp
mov byte [ebp - 4], 0xf
mov dword [ebp - 0x5e0], esi
mov eax, dword [ebp - 0x5e4]
add eax, 0xfffffff0
push eax
call fcn.00412393
add eax, 0x10
mov dword [esi], eax
lea eax, [ebp - 0x5e8]
pop ecx
push eax
lea ecx, [ebp - 0x634]
mov byte [ebp - 4], 0xd
call fcn.00434114
push dword [eax]
push dword [ebp - 0x5f4]
call edi
mov ecx, dword [ebp - 0x5e8]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x5e4]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x5f0]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x5ec]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x5f4]
mov dword [ebp - 0x5ec], ebx
lea ecx, [ecx - 0x10]
call fcn.00412ac4
mov ecx, dword [ebp - 0x5fc]
lea ecx, [ecx - 0x10]
call fcn.00412ac4
lea ecx, [ebp - 0x634]
call fcn.0042e60b
mov ecx, dword [ebp - 0x624]
lea ecx, [ecx - 0x10]
jmp 0x4c425d
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push 0x5fff34
call fcn.00413f4d
mov esi, dword [ebp - 0x5f4]
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 4], 0x10
push dword [esi + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
push 1
test eax, eax
je 0x4c3fff
push ebx
mov dword [ebp - 4], 0x11
push ebx
jmp 0x4c4044
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push 0x5fffd0
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x13
mov ecx, esp
push dword [esi + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
je 0x4c405e
xor eax, eax
mov dword [ebp - 4], 0x14
inc eax
push eax
push ebx
push eax
call fcn.004d2d1b
add esp, 0xc
jmp 0x4c446d
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push 0x600054
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x16
mov ecx, esp
push dword [esi + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
je 0x4c4124
push ebx
push 0x60006c
mov byte [0x6836cc], 1
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, eax
test esi, esi
je 0x4c449d
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
test eax, eax
jne 0x4c40cf
push 5
push esi
call edi
push esi
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x4c40df
push 1
push esi
call edi
mov dword [ebp - 0x5e8], 0x7ed
lea ecx, [ebp - 0x5e8]
mov dword [ebp - 0x604], 4
push 0x4a
pop eax
mov dword [ebp - 0x600], ecx
lea ecx, [ebp - 0x608]
push ecx
push ebx
push eax
push esi
mov dword [ebp - 0x608], eax
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
jmp 0x4c446d
cmp dword [ebp - 0x5f8], 3
jl 0x4c4350
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push str._download_soft
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x17
mov ecx, esp
push dword [esi + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
je 0x4c426d
push dword [esi + 8]
lea ecx, [ebp - 0x5e4]
call fcn.00413f09
mov eax, dword [ebp - 0x5e4]
mov dword [ebp - 4], 0x18
cmp dword [eax - 0xc], ebx
je 0x4c425a
push ecx
add eax, 0xfffffff0
mov esi, esp
push eax
mov dword [ebp - 0x5dc], esi
call fcn.00412393
pop ecx
add eax, 0x10
mov ecx, 0x6833d0
mov dword [esi], eax
call fcn.00464276
push ebx
push 0x600160
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, eax
test esi, esi
je 0x4c4254
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
mov edi, dword [sym.imp.USER32.dll_ShowWindow]
test eax, eax
jne 0x4c41e1
push 5
push esi
call edi
push esi
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x4c41f1
push 1
push esi
call edi
push dword [ebp - 0x5e4]
lea eax, [ebp - 0x1c8]
mov dword [ebp - 0x1d0], 0x7e9
push eax
call dword [sym.imp.KERNEL32.dll_lstrcpyW]
push 0x4a
pop eax
lea ecx, [ebp - 0x1d0]
mov dword [ebp - 0x1cc], 1
mov dword [ebp - 0x600], ecx
lea ecx, [ebp - 0x608]
push ecx
push ebx
push eax
push esi
mov dword [ebp - 0x608], eax
mov dword [ebp - 0x604], 0x108
call dword [sym.imp.USER32.dll_SendMessageW]
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
mov dword [ebp - 0x5ec], ebx
mov eax, dword [ebp - 0x5e4]
lea ecx, [eax - 0x10]
call fcn.00412ac4
mov esi, dword [ebp - 0x5ec]
jmp 0x4c44a0
cmp dword [ebp - 0x5f8], 3
jl 0x4c4350
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push 0x6001fc
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x19
mov ecx, esp
push dword [esi + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
je 0x4c4350
push dword [esi + 8]
call fcn.0058a233
pop ecx
mov esi, eax
push esi
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x4c449d
push esi
mov ecx, 0x6833d0
call fcn.004642b1
push ebx
push 0x600240
call dword [sym.imp.USER32.dll_FindWindowW]
mov edi, eax
test edi, edi
je 0x4c449d
push 0x60028c
push ebx
push 1
push ebx
call dword [sym.imp.KERNEL32.dll_CreateEventW]
push 0x4a
pop eax
lea ecx, [ebp - 0x608]
mov dword [ebp - 0x608], 0x7ea
mov dword [ebp - 0x614], ecx
lea ecx, [ebp - 0x61c]
push ecx
push ebx
push eax
push edi
mov dword [ebp - 0x600], esi
mov dword [ebp - 0x604], 1
mov dword [ebp - 0x61c], eax
mov dword [ebp - 0x618], 0xc
call dword [sym.imp.USER32.dll_SendMessageW]
jmp 0x4c446d
push 1
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push str._postdata
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x1a
mov ecx, esp
push dword [esi + 4]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
je 0x4c4471
mov ecx, dword [ebp - 0x5f8]
xor eax, eax
inc eax
mov byte [ebp - 0x5f0], bl
mov byte [ebp - 0x5f4], al
cmp ecx, 2
jle 0x4c43ef
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push str._autostartup
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x1b
mov ecx, esp
push dword [esi + 8]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
mov ecx, dword [ebp - 0x5f8]
add esp, 0x34
test eax, eax
setne byte [ebp - 0x5f0]
xor eax, eax
inc eax
cmp ecx, 3
jle 0x4c4432
push eax
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0x5dc], esp
push str._active
call fcn.00413f4d
sub esp, 0x18
mov dword [ebp - 4], 0x1c
mov ecx, esp
push dword [esi + 0xc]
call fcn.00413f4d
mov dword [ebp - 4], edi
call fcn.004f4859
add esp, 0x34
test eax, eax
setne byte [ebp - 0x5f4]
push dword [ebp - 0x5f4]
push dword [ebp - 0x5f0]
push 2
call fcn.004d2d1b
add esp, 0xc
push str.softmaster_post_data_finish
push ebx
push 0x1f0003
call dword [sym.imp.KERNEL32.dll_OpenEventW]
mov esi, eax
test esi, esi
je 0x4c446d
push esi
call dword [sym.imp.KERNEL32.dll_SetEvent]
push esi
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov esi, ebx
jmp 0x4c44a0
mov dword [ebp - 0x5fc], ebx
mov edi, 0x683704
push dword [edi]
push dword [esi + 4]
call fcn.0059b558
pop ecx
pop ecx
test eax, eax
je 0x4c44a8
inc dword [ebp - 0x5fc]
add edi, 0x18
cmp edi, 0x6837ac
jl 0x4c447c
xor esi, esi
inc esi
mov eax, esi
call fcn.00506db6
ret
imul eax, dword [ebp - 0x5fc], 0x18
mov edi, dword [sym.imp.KERNEL32.dll_lstrcpyW]
mov eax, dword [eax + 0x683700]
mov dword [0x6828a0], eax
push dword [esi + 4]
push 0x6828a8
call edi
cmp dword [ebp - 0x5f8], 2
jle 0x4c44dd
push dword [esi + 8]
push 0x6829a8
call edi
push ebx
push 0x600458
call dword [sym.imp.USER32.dll_FindWindowW]
mov esi, eax
test esi, esi
je 0x4c449d
push esi
call dword [sym.imp.USER32.dll_IsWindowVisible]
test eax, eax
jne 0x4c4503
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
push esi
call dword [sym.imp.USER32.dll_IsIconic]
test eax, eax
je 0x4c4517
push 1
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
mov eax, dword [0x6828a0]
mov dword [ebp - 0x5d4], eax
lea eax, [ebp - 0x5d0]
push 0x6828a8
push eax
mov dword [ebp - 0x5d8], 0x7eb
call edi
push 0x6829a8
lea eax, [ebp - 0x3d0]
push eax
call edi
lea ecx, [ebp - 0x5d8]
mov dword [ebp - 0x604], 0x408
jmp 0x4c40f9