Function at 0x678e80
Capabilities:
Create process on windows
Get common file path

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe78
push ebx
push esi
lea esi, [ebp - 0x84]
push edi
mov dword [ebp - 4], edx
mov ebx, eax
mov dword [esi + 8], 0x718380
mov dword [esi + 0xc], esp
mov eax, 0x56498f
mov dword [esi + 4], eax
xor edx, edx
mov word [esi + 0x10], 0
mov dword [esi + 0x1c], edx
mov ecx, dword fs:[0]
mov dword [esi], ecx
mov dword fs:[0], esi
mov dword [esi + 0x1c], 1
lea edx, [ebp - 4]
lea eax, [ebp - 4]
call fcn.006966d4
inc dword [esi + 0x1c]
mov word [esi + 0x10], 8
cmp byte [ebx + 0x264], 0
je 0x678f06
dec dword [esi + 0x1c]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00696870
mov ecx, dword [esi]
mov dword fs:[0], ecx
jmp 0x67939f
mov eax, dword [ebp - 4]
call fcn.004eebd4
test al, al
jne 0x678f30
dec dword [esi + 0x1c]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00696870
mov ecx, dword [esi]
mov dword fs:[0], ecx
jmp 0x67939f
mov byte [ebp - 0x188], 0
lea eax, [ebp - 0x188]
push eax
push 0x104
call sub.KERNEL32.DLL_GetTempPathA
mov word [esi + 0x10], 0x14
call sub.KERNEL32.DLL_GetCurrentProcessId
mov edx, eax
lea eax, [ebp - 0x10]
call fcn.0069682c
push eax
inc dword [esi + 0x1c]
mov edx, str.krkrot
lea eax, [ebp - 0xc]
call fcn.0069669c
inc dword [esi + 0x1c]
xor edx, edx
mov dword [ebp - 8], edx
lea ecx, [ebp - 8]
inc dword [esi + 0x1c]
pop edx
call fcn.006968c8
dec dword [esi + 0x1c]
lea eax, [ebp - 0x10]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0xc]
mov edx, 2
call fcn.00696870
mov word [esi + 0x10], 8
mov word [esi + 0x10], 0x20
xor eax, eax
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x14]
inc dword [esi + 0x1c]
lea edx, [ebp - 8]
lea eax, [ebp - 0x188]
call fcn.00696be0
lea edx, [ebp - 0x14]
lea eax, [ebx + 0x270]
call fcn.006968a0
dec dword [esi + 0x1c]
lea eax, [ebp - 0x14]
mov edx, 2
call fcn.00696870
mov eax, dword [ebx + 0x270]
call fcn.00696668
cmp dword [ebp - 8], 0
je 0x678ffb
mov edx, dword [ebp - 8]
jmp 0x679000
mov edx, 0x71644a
push edx
push 0
push 0
push 0
call sub.KERNEL32.DLL_CreateEventA
mov word [esi + 0x10], 8
mov word [esi + 0x10], 0x2c
mov edi, eax
xor eax, eax
mov dword [ebp - 0x18], eax
lea edx, [ebp - 0x18]
inc dword [esi + 0x1c]
mov eax, dword [ebx + 0x21c]
call fcn.004bac74
lea edx, [ebp - 0x18]
lea eax, [ebx + 0x274]
call fcn.006968a0
dec dword [esi + 0x1c]
lea eax, [ebp - 0x18]
mov edx, 2
call fcn.00696870
mov word [esi + 0x10], 0x38
xor ecx, ecx
mov dword [ebp - 0x1c], ecx
lea edx, [ebp - 0x1c]
inc dword [esi + 0x1c]
mov eax, dword [ebx + 0x23c]
call fcn.004bac74
lea edx, [ebp - 0x1c]
mov eax, dword [ebx + 0x21c]
mov edx, dword [edx]
call fcn.004baca4
dec dword [esi + 0x1c]
lea eax, [ebp - 0x1c]
mov edx, 2
call fcn.00696870
push 0
xor ecx, ecx
mov word [esi + 0x10], 0x44
mov dword [ebp - 0x20], ecx
lea ecx, [ebp - 0x20]
inc dword [esi + 0x1c]
lea edx, [ebp - 4]
mov eax, 0x71644c
call fcn.00696be0
lea eax, [ebp - 0x20]
push eax
mov edx, str.____cmddesc
lea eax, [ebp - 0x24]
call fcn.0069669c
inc dword [esi + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x28], ecx
lea ecx, [ebp - 0x28]
inc dword [esi + 0x1c]
lea edx, [ebp - 0x24]
pop eax
call fcn.006968c8
lea edx, [ebp - 0x28]
mov eax, ebx
push edx
call fcn.004c0ea0
mov edx, eax
lea eax, [ebp - 0x2c]
call fcn.0069682c
inc dword [esi + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x30], ecx
mov edx, eax
inc dword [esi + 0x1c]
lea ecx, [ebp - 0x30]
pop eax
call fcn.006968c8
lea edx, [ebp - 0x30]
push edx
mov edx, 0x71676a
lea eax, [ebp - 0x34]
call fcn.0069669c
inc dword [esi + 0x1c]
xor eax, eax
mov dword [ebp - 0x38], eax
lea edx, [ebp - 0x34]
inc dword [esi + 0x1c]
lea ecx, [ebp - 0x38]
pop eax
call fcn.006968c8
lea eax, [ebp - 0x38]
xor edx, edx
mov dword [ebp - 0x3c], edx
lea ecx, [ebp - 0x3c]
inc dword [esi + 0x1c]
lea edx, [ebx + 0x270]
call fcn.006968c8
lea eax, [ebp - 0x3c]
push eax
mov edx, 0x71676d
lea eax, [ebp - 0x40]
call fcn.0069669c
inc dword [esi + 0x1c]
xor eax, eax
mov dword [ebp - 0x44], eax
lea edx, [ebp - 0x40]
inc dword [esi + 0x1c]
lea ecx, [ebp - 0x44]
pop eax
call fcn.006968c8
lea eax, [ebp - 0x44]
xor edx, edx
mov dword [ebp - 0x48], edx
lea ecx, [ebp - 0x48]
inc dword [esi + 0x1c]
lea edx, [ebp - 8]
call fcn.006968c8
lea eax, [ebp - 0x48]
push eax
mov edx, 0x71644c
lea eax, [ebp - 0x4c]
call fcn.0069669c
inc dword [esi + 0x1c]
xor eax, eax
mov dword [ebp - 0x50], eax
lea edx, [ebp - 0x4c]
inc dword [esi + 0x1c]
lea ecx, [ebp - 0x50]
pop eax
call fcn.006968c8
cmp dword [ebp - 0x50], 0
je 0x6791af
mov edx, dword [ebp - 0x50]
jmp 0x6791b4
mov edx, 0x71644a
push edx
call sub.KERNEL32.DLL_WinExec
cmp eax, 0x1f
mov edx, 2
setbe al
and eax, 1
push eax
lea eax, [ebp - 0x50]
dec dword [esi + 0x1c]
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x4c]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x48]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x44]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x40]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x38]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x34]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x30]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x2c]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x28]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x24]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 0x20]
mov edx, 2
call fcn.00696870
pop ecx
test cl, cl
je 0x6792d5
mov word [esi + 0x10], 0x50
xor eax, eax
mov dword [ebp - 0x54], eax
lea edx, [ebp - 0x54]
inc dword [esi + 0x1c]
mov eax, dword [ebx + 0x238]
call fcn.004bac74
lea edx, [ebp - 0x54]
mov eax, dword [ebx + 0x21c]
mov edx, dword [edx]
call fcn.004baca4
dec dword [esi + 0x1c]
lea eax, [ebp - 0x54]
mov edx, 2
call fcn.00696870
push 0x2710
push edi
call sub.KERNEL32.DLL_WaitForSingleObject
cmp eax, 0x102
jne 0x679362
push edi
call sub.KERNEL32.DLL_CloseHandle
push esi
push 0
push 0
push 0
push 3
push fcn.00403a38
push 0
xor ecx, ecx
mov word [esi + 0x10], 0x5c
mov dword [ebp - 0x58], ecx
lea ecx, [ebp - 0x58]
inc dword [esi + 0x1c]
lea edx, [ebp - 4]
mov eax, str.The_program__
call fcn.00696be0
lea eax, [ebp - 0x58]
push eax
mov edx, str.__did_not_reply_
lea eax, [ebp - 0x5c]
call fcn.0069669c
inc dword [esi + 0x1c]
xor ecx, ecx
mov dword [ebp - 0x60], ecx
lea ecx, [ebp - 0x60]
inc dword [esi + 0x1c]
lea edx, [ebp - 0x5c]
pop eax
call fcn.006968c8
lea ecx, [ebp - 0x60]
mov ecx, dword [ecx]
mov dl, 1
mov eax, dword [0x4eda40]
call fcn.004f1bd4
push eax
push 0x401ddc
call fcn.00573d9d
add esp, 0x24
push edi
call sub.KERNEL32.DLL_CloseHandle
mov eax, ebx
call fcn.00676d70
mov byte [ebx + 0x264], 1
dec dword [esi + 0x1c]
lea eax, [ebp - 8]
mov edx, 2
call fcn.00696870
dec dword [esi + 0x1c]
lea eax, [ebp - 4]
mov edx, 2
call fcn.00696870
mov ecx, dword [esi]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret