Function at 0x42eed0
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x52da47
mov eax, dword fs:[0]
push eax
sub esp, 0x98
mov eax, dword [0x589bb4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov ebx, ecx
mov dword [ebp - 0xa4], ebx
call fcn.0041a070
mov edi, eax
test edi, edi
je 0x42f2c5
push 0
push dword [ebx + 4]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push str.type
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42ef54
push eax
call fcn.004f2d8b
add esp, 4
push 0
push dword [ebx + 8]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push str.content
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42ef93
push eax
call fcn.004f2d8b
add esp, 4
push 0
push dword [ebx + 0x1c]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push 0x546ff8
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42efd2
push eax
call fcn.004f2d8b
add esp, 4
push 0
push dword [ebx + 0x14]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push 0x546fec
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42f011
push eax
call fcn.004f2d8b
add esp, 4
push 0
push dword [ebx + 0x18]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push 0x546ffc
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42f050
push eax
call fcn.004f2d8b
add esp, 4
push 0
push dword [ebx + 0x10]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push 0x547134
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42f08f
push eax
call fcn.004f2d8b
add esp, 4
push 0
push dword [ebx + 0xc]
lea ecx, [ebp - 0x94]
call fcn.004292c0
push dword [eax]
call fcn.0041a0a0
push eax
push 0x54713c
push edi
call fcn.00419ca0
mov eax, dword [ebp - 0x94]
lea ecx, [ebp - 0x90]
add esp, 0x10
cmp eax, ecx
je 0x42f0ce
push eax
call fcn.004f2d8b
add esp, 4
push 0x54725c
call fcn.0041a0a0
push eax
push str.askver
push edi
call fcn.00419ca0
push edi
call fcn.0041a5a0
mov ebx, eax
add esp, 0x14
test ebx, ebx
je 0x42f2bc
mov ecx, ebx
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x42f100
sub ecx, edx
je 0x42f2bc
call fcn.0040cb40
mov ecx, eax
test ecx, ecx
je 0x42f2e1
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x9c], eax
mov eax, str.9c2bfc39_1034_421b_999e_e55c69ab7a2c
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x9c]
test eax, 0xffff0000
jne 0x42f150
movzx eax, ax
push eax
call fcn.0040d5d0
jmp 0x42f15c
push 0x24
push str.9c2bfc39_1034_421b_999e_e55c69ab7a2c
call fcn.0040d780
mov dword [ebp - 4], 1
call fcn.0040cb40
mov ecx, eax
test ecx, ecx
je 0x42f2eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x98], eax
mov byte [ebp - 4], 2
test ebx, 0xffff0000
jne 0x42f19d
movzx eax, bx
lea ecx, [ebp - 0x98]
push eax
call fcn.0040d5d0
jmp 0x42f218
push 0
push 0
push 0xffffffffffffffff
push ebx
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
lea esi, [eax - 1]
test esi, esi
jle 0x42f20d
mov ecx, dword [ebp - 0x98]
mov edx, 1
mov eax, dword [ecx - 8]
sub edx, dword [ecx - 4]
sub eax, esi
or eax, edx
jge 0x42f1de
push esi
lea ecx, [ebp - 0x98]
call fcn.0040afd0
mov ecx, dword [ebp - 0x98]
push esi
push ecx
push 0xffffffffffffffff
push ebx
push 0
push 3
call dword [sym.imp.KERNEL32.dll_MultiByteToWideChar]
mov eax, dword [ebp - 0x98]
cmp esi, dword [eax - 8]
jg 0x42f2f5
mov dword [eax - 0xc], esi
xor ecx, ecx
mov eax, dword [ebp - 0x98]
mov word [eax + esi*2], cx
jmp 0x42f218
lea ecx, [ebp - 0x98]
call fcn.0041d620
lea eax, [ebp - 0x9c]
mov byte [ebp - 4], 3
push eax
lea eax, [ebp - 0x98]
push eax
lea eax, [ebp - 0xa0]
push eax
call fcn.0049c850
add esp, 0xc
mov ecx, dword [ebp - 0xa4]
push eax
add ecx, 0x20
mov byte [ebp - 4], 4
call fcn.0041c1d0
mov edx, dword [ebp - 0xa0]
or esi, 0xffffffff
mov byte [ebp - 4], 3
add edx, 0xfffffff0
mov eax, esi
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x42f270
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x98]
mov eax, esi
mov byte [ebp - 4], 1
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x42f291
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x9c]
mov dword [ebp - 4], 0xffffffff
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], esi
dec esi
test esi, esi
jg 0x42f2b3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ebx
call fcn.004f2d8b
add esp, 4
push edi
call fcn.0041a230
add esp, 4
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0049a7f8
mov esp, ebp
pop ebp
ret
push 0x80004005
call fcn.0040ab80
push 0x80004005
call fcn.0040ab80
push 0x80070057
call fcn.0040ab80
int3