Function at 0x413620
Capabilities:
Accept command line arguments

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xd8
mov eax, dword [0x533d80]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 0xc]
push esi
mov esi, dword [ebp + 8]
push edi
mov dword [ebp - 0xd8], eax
xor edi, edi
mov eax, dword [ebp + 0x14]
mov dword [ebp - 0xd0], esi
mov dword [ebp - 0xd4], ebx
test eax, eax
jne 0x413660
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push ebx
push esi
push eax
call fcn.00413a00
add esp, 0xc
test eax, eax
je 0x4138db
mov eax, dword [ebp - 0xd4]
xor ebx, ebx
cmp dword [eax], ebx
jle 0x4138db
mov esi, eax
nop word [eax + eax]
mov eax, dword [ebp - 0xd0]
push 0x500e14
push dword [eax + ebx*4]
call fcn.00402f9f
add esp, 8
test eax, eax
jne 0x4136ce
test edi, edi
je 0x4136c4
cmp edi, 3
je 0x4136c4
cmp edi, 1
jne 0x4138d2
lea edi, [eax + 2]
jmp 0x4138d2
mov edi, 1
jmp 0x4138d2
mov eax, dword [ebp - 0xd0]
push str._BroadcastSettingChange
push dword [eax + ebx*4]
call fcn.00402f9f
add esp, 8
test eax, eax
je 0x4138ee
mov eax, dword [ebp - 0xd0]
push str._runkey
push dword [eax + ebx*4]
call fcn.00402f9f
mov ecx, dword [ebp - 0xd0]
add esp, 8
mov ecx, dword [ecx + ebx*4]
test eax, eax
jne 0x413720
mov byte [ecx], al
mov dword [0x5353d4], 1
jmp 0x4138d2
push str._nodebug
push ecx
call fcn.00402f9f
add esp, 8
test eax, eax
jne 0x41373a
lea edi, [eax + 3]
jmp 0x4138d2
mov eax, dword [ebp - 0xd0]
push str._delete_service
push dword [eax + ebx*4]
call fcn.00402f9f
add esp, 8
test eax, eax
jne 0x413765
mov eax, dword [ebp - 0xd8]
mov dword [eax], 2
jmp 0x4138d2
mov eax, dword [ebp - 0xd0]
push str._force_update
push dword [eax + ebx*4]
call fcn.00402f9f
add esp, 8
test eax, eax
je 0x41390f
mov eax, dword [ebp - 0xd0]
push str._stop
push dword [eax + ebx*4]
call fcn.00402f9f
add esp, 8
test eax, eax
jne 0x4138d2
mov eax, dword [ebp - 0xd8]
mov dword [eax], 3
test edi, edi
jle 0x4137be
push str.stopping_n
call fcn.00401e6a
add esp, 4
inc ebx
cmp ebx, dword [esi]
jge 0x4138d2
push 0x64
lea eax, [ebp - 0xcc]
push eax
push str.WINRSH_SERVER
push 0
call fcn.00401a37
add esp, 0x10
test eax, eax
jne 0x4138d2
lea eax, [ebp - 0xcc]
push eax
call fcn.00404011
mov esi, eax
push 0x20
push esi
call fcn.00404c41
push 9
push esi
call fcn.00404c41
mov eax, dword [ebp - 0xd0]
push 0x64
push dword [eax + ebx*4]
push 0x535370
call fcn.00401ae6
push 0x64
lea eax, [ebp - 0x68]
push eax
push esi
call fcn.00404269
add esp, 0x2c
test eax, eax
jns 0x413840
push 0x64
lea eax, [ebp - 0x68]
push str.STOP
push eax
call fcn.00401ae6
add esp, 0xc
push 0x535370
call fcn.00404007
lea eax, [ebp - 0x68]
push eax
call fcn.00404007
push 0x64
push 0x535370
call fcn.00403229
add esp, 0x10
test eax, eax
je 0x4138b4
lea eax, [ebp - 0x68]
push 0x64
push eax
call fcn.00403229
add esp, 8
test eax, eax
je 0x4138b4
mov ecx, 0x535370
lea eax, [ebp - 0x68]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x4138a0
test dl, dl
je 0x41389c
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x4138a0
add eax, 2
add ecx, 2
test dl, dl
jne 0x413880
xor eax, eax
jmp 0x4138a5
sbb eax, eax
or eax, 1
test eax, eax
jne 0x4138b4
test edi, edi
jle 0x4138cc
push str.Valid_password_n
jmp 0x4138c4
mov byte [0x535370], 0
test edi, edi
jle 0x4138cc
push str.no_valid_passord_n
call fcn.00401e6a
add esp, 4
mov esi, dword [ebp - 0xd4]
inc ebx
cmp ebx, dword [esi]
jl 0x413690
mov ecx, dword [ebp - 4]
mov eax, edi
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.00402a5e
mov esp, ebp
pop ebp
ret
push 0
push 0x64
push 1
push str.Environment
push 0
push 0x1a
push 0xffff
call dword [sym.imp.USER32.dll_SendMessageTimeoutA]
push 0
call fcn.0040367a
push 0
push 0
push 0
mov dword [0x53536c], 0
call fcn.004054f2
add esp, 0xc
push 0
call fcn.0040367a
int3