Function at 0x471c88
Capabilities:
Create process on windows
Self delete

Disassembly:
push ebp
mov ebp, esp
mov ecx, 0x13
push 0
push 0
dec ecx
jne 0x471c90
push ebx
push esi
mov esi, dword [0x483bc0]
xor eax, eax
push ebp
push 0x4721a3
push dword fs:[eax]
mov dword fs:[eax], esp
lea eax, [ebp - 4]
mov edx, dword [0x483cc0]
mov edx, dword [edx]
call fcn.00404140
lea ecx, [ebp - 8]
mov edx, 0x4721b8
mov eax, dword [ebp - 4]
call fcn.00408c54
mov edx, dword [esi]
lea eax, [ebp - 0xc]
mov ecx, 0x4721c8
call fcn.004043b4
lea edx, [ebp - 0x10]
mov eax, dword [0x483cc0]
mov eax, dword [eax]
call fcn.00408d70
mov edx, dword [esi]
lea eax, [ebp - 0x20]
mov ecx, 0x4721dc
call fcn.004043b4
mov eax, dword [ebp - 0x20]
call fcn.00470914
mov dl, 1
mov eax, dword [0x415cac]
call fcn.004032a4
mov dword [ebp - 0x1c], eax
xor eax, eax
push ebp
push 0x472157
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, 0x4721f0
mov eax, dword [ebp - 0x10]
call fcn.00408214
test al, al
je 0x471f1c
mov eax, dword [ebp - 0xc]
call fcn.00408ab8
test al, al
je 0x471f1c
mov edx, dword [esi]
lea eax, [ebp - 0x14]
mov ecx, 0x472200
call fcn.004043b4
mov edx, 0x472210
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [ebp - 4]
push 0x472230
lea eax, [ebp - 0x24]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x24]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x47223c
push dword [ebp - 4]
push 0x472250
lea eax, [ebp - 0x28]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x472264
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472274
push dword [ebp - 0xc]
push 0x472284
push dword [ebp - 0x14]
push 0x472230
lea eax, [ebp - 0x2c]
mov edx, 5
call fcn.00404428
mov edx, dword [ebp - 0x2c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472290
push dword [ebp - 0x14]
push 0x4722a8
lea eax, [ebp - 0x30]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x30]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472230
push dword [ebp - 0x14]
push 0x472230
lea eax, [ebp - 0x34]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [esi]
push 0x4722bc
lea eax, [ebp - 0x38]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x38]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [esi]
push 0x4722d4
lea eax, [ebp - 0x3c]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x3c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [esi]
push 0x4722f0
lea eax, [ebp - 0x40]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [ebp - 4]
push 0x472230
lea eax, [ebp - 0x44]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x44]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [ebp - 8]
push 0x472230
lea eax, [ebp - 0x48]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x48]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
lea edx, [ebp - 0x4c]
mov eax, 0x47230c
call fcn.00470d88
mov edx, dword [ebp - 0x4c]
lea eax, [ebp - 0x18]
call fcn.00404330
lea eax, [ebp - 0x50]
mov edx, dword [ebp - 0x18]
call fcn.004048d4
mov ecx, dword [ebp - 0x50]
mov edx, 0x47230c
mov eax, dword [ebp - 0x14]
call fcn.00470e7c
jmp 0x4720b6
mov eax, dword [ebp - 8]
call fcn.00408ab8
test al, al
je 0x4720b6
lea edx, [ebp - 0x60]
mov eax, dword [ebp - 8]
call fcn.00457f48
lea eax, [ebp - 0x60]
push eax
lea edx, [ebp - 0x70]
mov eax, dword [ebp - 4]
call fcn.00457f48
lea eax, [ebp - 0x70]
pop edx
call fcn.0045811c
test al, al
jne 0x4720b6
mov edx, 0x472210
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [ebp - 4]
push 0x472230
lea eax, [ebp - 0x74]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x74]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x47223c
push dword [ebp - 4]
push 0x472250
lea eax, [ebp - 0x78]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x78]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov edx, 0x472264
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472274
push dword [ebp - 8]
push 0x472284
push dword [ebp - 4]
push 0x472230
lea eax, [ebp - 0x7c]
mov edx, 5
call fcn.00404428
mov edx, dword [ebp - 0x7c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472290
push dword [ebp - 4]
push 0x4722a8
lea eax, [ebp - 0x80]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x80]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472230
push dword [ebp - 4]
push 0x472230
lea eax, [ebp - 0x84]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x84]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [esi]
push 0x4722bc
lea eax, [ebp - 0x88]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x88]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [esi]
push 0x4722d4
lea eax, [ebp - 0x8c]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x8c]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
push 0x472220
push dword [esi]
push 0x4722f0
lea eax, [ebp - 0x90]
mov edx, 3
call fcn.00404428
mov edx, dword [ebp - 0x90]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, dword [ebp - 0x1c]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jle 0x472141
mov edx, dword [esi]
lea eax, [ebp - 0x94]
mov ecx, 0x4721dc
call fcn.004043b4
mov edx, dword [ebp - 0x94]
mov eax, dword [ebp - 0x1c]
mov ecx, dword [eax]
call dword [ecx + 0x74]
call sub.kernel32.dll_GetCurrentProcessId
push eax
push 0
push 0x200
call sub.kernel32.dll_OpenProcess
mov ebx, eax
push 0x80
push ebx
call sub.kernel32.dll_SetPriorityClass
push ebx
call sub.kernel32.dll_CloseHandle
push 0
mov eax, dword [esi]
call fcn.00404568
push eax
push 0
mov edx, dword [esi]
lea eax, [ebp - 0x98]
mov ecx, 0x4721dc
call fcn.004043b4
mov eax, dword [ebp - 0x98]
call fcn.00404568
push eax
push 0
push 0
call sub.shell32.dll_ShellExecuteA
push 0
call sub.kernel32.dll_ExitProcess_1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x47215e
mov eax, dword [ebp - 0x1c]
call fcn.004032d4
ret