Function at 0x40981c
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x1508
call fcn.0040c020
push ebx
push esi
push edi
call fcn.0040979f
test al, al
jne 0x409840
call dword [sym.imp.kernel32.dll_GetLastError]
jmp 0x409ab9
xor ebx, ebx
cmp byte [0x4292a8], bl
je 0x40999b
cmp byte [ebp + 0xc], bl
je 0x40985b
mov eax, dword [ebp + 8]
mov dword [ebp + 8], eax
jmp 0x409895
cmp dword [ebp + 8], ebx
jne 0x409865
mov dword [ebp + 8], ebx
jmp 0x409895
push dword [ebp + 8]
call dword [sym.imp.kernel32.dll_lstrlenA]
mov esi, eax
inc esi
lea eax, [esi + esi]
add eax, 3
and al, 0xfc
call fcn.0040c020
mov edi, esp
push esi
push edi
push 0xffffffffffffffff
push dword [ebp + 8]
mov word [edi], bx
push ebx
push ebx
call dword [sym.imp.kernel32.dll_MultiByteToWideChar]
mov dword [ebp + 8], edi
lea eax, [ebp - 8]
push eax
lea eax, [ebp - 0x1508]
push 0x3e8
push eax
call dword [0x429274]
test eax, eax
jne 0x4098b9
mov eax, 0x2bd
jmp 0x409ab9
mov eax, dword [ebp - 8]
mov dword [ebp + 0xc], ebx
shr eax, 2
mov dword [ebp - 0x10], eax
je 0x409ab4
mov edi, dword [sym.imp.kernel32.dll_OpenProcess]
mov esi, dword [sym.imp.kernel32.dll_CloseHandle]
lea eax, [ebp - 0x1508]
mov dword [ebp - 4], eax
lea eax, [ebp - 0x568]
push 0x41bc40
push eax
call fcn.0040c5e4
mov eax, dword [ebp - 4]
pop ecx
pop ecx
push dword [eax]
push ebx
push 0x410
call edi
cmp eax, ebx
mov dword [ebp - 0xc], eax
je 0x409934
lea ecx, [ebp - 8]
push ecx
lea ecx, [ebp - 0x14]
push 4
push ecx
push eax
call dword [0x42927c]
test eax, eax
je 0x409934
lea eax, [ebp - 0x568]
push 0x104
push eax
push dword [ebp - 0x14]
push dword [ebp - 0xc]
call dword [0x429270]
push dword [ebp - 0xc]
call esi
push dword [ebp + 8]
lea eax, [ebp - 0x568]
push eax
call fcn.0040e835
pop ecx
test eax, eax
pop ecx
je 0x409962
inc dword [ebp + 0xc]
add dword [ebp - 4], 4
mov eax, dword [ebp + 0xc]
cmp eax, dword [ebp - 0x10]
jb 0x4098e0
jmp 0x409ab4
mov eax, dword [ebp + 0xc]
push dword [ebp + eax*4 - 0x1508]
push ebx
push 1
call edi
mov edi, eax
cmp edi, ebx
je 0x409991
push ebx
push edi
call dword [sym.imp.kernel32.dll_TerminateProcess]
test eax, eax
jne 0x409afb
mov ebx, 0x25a
jmp 0x409afb
mov eax, 0x25c
jmp 0x409ab9
cmp byte [ebp + 0xc], bl
je 0x4099dd
cmp dword [ebp + 8], ebx
jne 0x4099aa
mov dword [ebp - 4], ebx
jmp 0x4099e3
push dword [ebp + 8]
call dword [sym.imp.kernel32.dll_lstrlenW]
lea edi, [eax + eax + 2]
mov eax, edi
add eax, 3
and al, 0xfc
call fcn.0040c020
mov esi, esp
push ebx
push ebx
push edi
push esi
push 0xffffffffffffffff
push dword [ebp + 8]
mov byte [esi], bl
push ebx
push ebx
call dword [sym.imp.kernel32.dll_WideCharToMultiByte]
mov dword [ebp - 4], esi
jmp 0x4099e3
mov eax, dword [ebp + 8]
mov dword [ebp - 4], eax
push ebx
push 2
call dword [0x4292a4]
cmp eax, 0xffffffff
mov dword [ebp + 8], eax
jne 0x4099fe
mov eax, 0x2c0
jmp 0x409ab9
lea ecx, [ebp - 0x13c]
mov edi, 0x128
push ecx
push eax
mov dword [ebp - 0x13c], edi
call dword [0x429288]
mov esi, dword [sym.imp.kernel32.dll_CloseHandle]
test eax, eax
je 0x409aaf
push dword [ebp - 0x134]
push 8
call dword [0x4292a4]
cmp eax, 0xffffffff
mov dword [ebp + 0xc], eax
je 0x409ac4
lea ecx, [ebp - 0x360]
mov dword [ebp - 0x360], 0x224
push ecx
push eax
call dword [0x42929c]
test eax, eax
je 0x409a8c
push dword [ebp - 4]
lea eax, [ebp - 0x340]
push eax
call fcn.0040ba90
pop ecx
test eax, eax
pop ecx
je 0x409acb
lea eax, [ebp - 0x360]
mov dword [ebp - 0x360], 0x224
push eax
push dword [ebp + 0xc]
call dword [0x429294]
jmp 0x409a57
push dword [ebp + 0xc]
call esi
lea eax, [ebp - 0x13c]
mov dword [ebp - 0x13c], edi
push eax
push dword [ebp + 8]
call dword [0x429298]
test eax, eax
jne 0x409a25
push dword [ebp + 8]
call esi
mov eax, 0x25b
lea esp, [ebp - 0x1514]
pop edi
pop esi
pop ebx
leave
ret
mov edi, 0x2c0
jmp 0x409b0c
push dword [ebp - 0x134]
push ebx
push 1
call dword [sym.imp.kernel32.dll_OpenProcess]
mov edi, eax
cmp edi, ebx
je 0x409b02
push ebx
push edi
call dword [sym.imp.kernel32.dll_TerminateProcess]
test eax, eax
jne 0x409af1
mov ebx, 0x25a
push dword [ebp + 0xc]
call esi
push dword [ebp + 8]
call esi
push edi
call esi
mov eax, ebx
jmp 0x409ab9
push dword [ebp + 0xc]
call esi
mov edi, 0x25c
push dword [ebp + 8]
call esi
mov eax, edi
jmp 0x409ab9