Function at 0x40ec05
Capabilities:
Delete file

Disassembly:
push 0x74
mov eax, 0x44e869
call fcn.0044831c
mov ecx, dword [edi + 4]
mov eax, dword [ecx]
call dword [eax]
mov eax, dword [eax + 0xa0]
cmp eax, 4
push str.Arguments.v.sel
lea eax, [ebp - 0x34]
push eax
sete byte [ebp - 0xf]
call fcn.00401415
and dword [ebp - 4], 0
mov ecx, dword [edi + 4]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x34]
push ecx
lea ecx, [ebp - 0x50]
push ecx
mov ebx, eax
call fcn.00413c05
push eax
lea eax, [ebp - 0x80]
push eax
mov byte [ebp - 4], 1
call fcn.0042fa8b
mov byte [ebp - 4], 3
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 4
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
call fcn.0040114e
lea esi, [edi + 0x40]
call fcn.004047d9
lea esi, [edi + 0xc]
call fcn.0040fd3a
lea eax, [ebp - 0x70]
push eax
call fcn.0042fa3d
push str.SoftwareList
lea eax, [ebp - 0x34]
push eax
mov byte [ebp - 4], 5
call fcn.00401415
lea eax, [ebp - 0x70]
push eax
mov byte [ebp - 4], 6
mov ecx, dword [edi + 4]
xor esi, esi
push esi
lea eax, [ebp - 0x34]
push eax
mov eax, dword [ecx]
call dword [eax]
mov ecx, eax
call fcn.0041a340
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
call fcn.0040114e
push 0x455ea4
lea eax, [ebp - 0x34]
push eax
mov dword [ebp - 0x24], esi
call fcn.00401415
lea eax, [ebp - 0x34]
push eax
push 0x85
lea eax, [ebp - 0x3c]
push eax
mov byte [ebp - 4], 7
call fcn.0040e9c3
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
call fcn.0040114e
push str.RPChecker.exe
lea eax, [ebp - 0x34]
push eax
call fcn.00401415
lea eax, [ebp - 0x34]
push eax
push 0x86
lea eax, [ebp - 0x38]
push eax
mov byte [ebp - 4], 0xa
call fcn.0040e9c3
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
call fcn.0040114e
mov eax, dword [section..data]
mov ecx, section..data
mov dword [ebp - 0x40], esi
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x38]
cmp dword [eax - 0xc], esi
je 0x40ed73
mov eax, dword [ebp - 0x3c]
cmp dword [eax - 0xc], esi
je 0x40ed73
lea eax, [ebp - 0x24]
push eax
lea eax, [ebp - 0x38]
push eax
call fcn.0040eb60
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 0x3c]
mov ebx, dword [sym.imp.KERNEL32.DLL_DeleteFileW]
cmp dword [eax - 0xc], esi
je 0x40ed86
push eax
call ebx
jmp 0x40ed94
push 0x455ee8
lea eax, [ebp - 0x20]
push eax
call fcn.0040145c
mov eax, dword [ebp - 0x38]
cmp dword [eax - 0xc], esi
je 0x40eda4
push eax
call ebx
jmp 0x40f24d
push 0x455eec
lea eax, [ebp - 0x20]
push eax
call fcn.0040145c
jmp 0x40f24d
lea eax, [ebp - 0x34]
push eax
lea esi, [ebp - 0x70]
call fcn.0042fef5
mov byte [ebp - 4], 0xe
push dword [edi + 4]
lea eax, [ebp - 0x34]
push eax
lea esi, [edi + 0xc]
call fcn.0040f2b7
cmp byte [ebp - 0xf], 0
mov ebx, eax
mov dword [ebp - 0x28], ebx
je 0x40edf7
push 1
lea eax, [ebp - 0x34]
push eax
lea esi, [ebp - 0x80]
call fcn.0042fd9c
test al, al
je 0x40f23e
mov esi, ebx
call fcn.0040bac8
push 0x455ef4
lea eax, [ebp - 0x30]
push eax
call fcn.00401415
lea esi, [ebp - 0x18]
mov eax, ebx
mov byte [ebp - 4], 0xf
mov byte [ebp - 0xe], 0
mov byte [ebp - 0xd], 0
call fcn.0040b052
push str.realplayerab
mov eax, esi
push eax
mov byte [ebp - 4], 0x10
call fcn.0040fb84
test eax, eax
je 0x40ee5d
push str.realplayergup2
mov eax, esi
push eax
call fcn.0040fb84
test eax, eax
je 0x40ee5d
push str.realplayertve
mov eax, esi
push eax
call fcn.0040fb84
test eax, eax
jne 0x40ef95
cmp dword [ebx + 0x10], 0x40
jne 0x40ee72
push 0x31
xor ebx, ebx
lea esi, [ebp - 0x30]
call fcn.0040fc4c
mov ebx, dword [ebp - 0x28]
cmp dword [ebp - 0x40], 0
mov byte [ebp - 0xe], 1
je 0x40eef9
push str.realplayerab
lea eax, [ebp - 0x18]
push eax
call fcn.0040fb84
test eax, eax
jne 0x40ee98
test byte [ebp - 0x24], 1
je 0x40ee98
mov byte [ebp - 0xd], 1
push str.realplayergup2
lea eax, [ebp - 0x18]
push eax
call fcn.0040fb84
test eax, eax
jne 0x40eeb4
test byte [ebp - 0x24], 2
je 0x40eeb4
mov byte [ebp - 0xd], 1
push str.realplayertve
lea eax, [ebp - 0x18]
push eax
call fcn.0040fb84
test eax, eax
jne 0x40eed0
test byte [ebp - 0x24], 4
je 0x40eed0
mov byte [ebp - 0xd], 1
push dword [ebp - 0x24]
lea eax, [ebp - 0x20]
push 0x455f54
push eax
call fcn.00401766
add esp, 0xc
cmp byte [ebp - 0xd], 0
je 0x40eef0
and dword [ebx + 0x10], 0
jmp 0x40ef07
mov dword [ebx + 0x10], 0x40
jmp 0x40ef07
push 0x455f5c
lea eax, [ebp - 0x20]
push eax
call fcn.0040145c
mov esi, str.v.rpck
push esi
lea eax, [ebp - 0x44]
push eax
call fcn.00401415
mov byte [ebp - 4], 0x11
mov ecx, dword [edi + 4]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x44]
push ecx
lea ecx, [ebp - 0x54]
push ecx
mov ebx, eax
call fcn.00413c05
mov byte [ebp - 4], 0x12
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
mov byte [ebp - 4], 0x11
mov eax, dword [ebp - 0x54]
sete bl
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x44]
add eax, 0xfffffff0
call fcn.0040114e
test bl, bl
je 0x40ef92
push esi
lea eax, [ebp - 0x48]
push eax
call fcn.00401415
lea eax, [ebp - 0x20]
push eax
mov byte [ebp - 4], 0x13
mov ecx, dword [edi + 4]
lea eax, [ebp - 0x48]
push eax
mov eax, dword [ecx]
call dword [eax]
mov esi, eax
call fcn.00413d9a
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x48]
add eax, 0xfffffff0
call fcn.0040114e
mov ebx, dword [ebp - 0x28]
mov eax, dword [section..data]
mov ecx, section..data
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 0x2c], eax
mov byte [ebp - 4], 0x14
push dword [ebx + 0x10]
lea eax, [ebp - 0x2c]
push dword [ebp - 0x34]
push str._s.code_d
push eax
call fcn.00401766
add esp, 0x10
push dword [ebp - 0x2c]
lea eax, [ebp - 0x58]
push eax
call fcn.00408221
mov byte [ebp - 4], 0x15
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
lea eax, [edi + 0x40]
call fcn.0040a0ee
lea eax, [ebp - 0x58]
push eax
mov byte [ebp - 4], 0x14
call fcn.00404747
xor esi, esi
mov dword [ebp - 0x14], esi
cmp dword [ebx + 0x60], esi
jle 0x40f17c
cmp byte [ebp - 0xe], 0
je 0x40f115
test esi, esi
js 0x40f2a5
cmp esi, dword [ebx + 0x60]
jge 0x40f2a5
mov eax, dword [ebx + 0x5c]
mov ecx, esi
mov eax, dword [eax + ecx*4]
mov eax, dword [eax]
sub eax, 0x10
call fcn.0040167a
add eax, 0x10
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
mov byte [ebp - 4], 0x17
call fcn.00404a99
push str.rpgoogletb
xor ecx, ecx
lea esi, [ebp - 0x1c]
call fcn.00404a45
test eax, eax
jns 0x40f062
push str.rpchrome
xor ecx, ecx
call fcn.00404a45
test eax, eax
js 0x40f103
push str.rpgoogletb
xor ecx, ecx
lea esi, [ebp - 0x1c]
call fcn.00404a45
test eax, eax
js 0x40f094
mov eax, dword [ebp - 0x14]
cmp eax, dword [ebx + 0x60]
jge 0x40f2a5
mov ecx, dword [ebx + 0x5c]
mov ecx, dword [ecx + eax*4]
cmp dword [ecx + 4], 0x40
jne 0x40f0d2
xor ebx, ebx
push 0x31
inc ebx
jmp 0x40f0c4
push str.rpchrome
xor ecx, ecx
lea esi, [ebp - 0x1c]
call fcn.00404a45
test eax, eax
js 0x40f0cf
mov ecx, dword [ebp - 0x14]
cmp ecx, dword [ebx + 0x60]
jge 0x40f2a5
mov eax, dword [ebx + 0x5c]
mov eax, dword [eax + ecx*4]
cmp dword [eax + 4], 0x40
jne 0x40f0cf
push 0x31
push 2
pop ebx
lea esi, [ebp - 0x30]
call fcn.0040fc4c
mov ebx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x14]
cmp byte [ebp - 0xd], 0
je 0x40f0ed
cmp eax, dword [ebx + 0x60]
jge 0x40f2a5
mov ecx, dword [ebx + 0x5c]
mov eax, dword [ecx + eax*4]
and dword [eax + 4], 0
jmp 0x40f103
cmp eax, dword [ebx + 0x60]
jge 0x40f2a5
mov ecx, dword [ebx + 0x5c]
mov eax, dword [ecx + eax*4]
mov dword [eax + 4], 0x40
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x1c]
add eax, 0xfffffff0
call fcn.0040114e
mov esi, dword [ebp - 0x14]
test esi, esi
js 0x40f2a5
cmp esi, dword [ebx + 0x60]
jge 0x40f2a5
mov eax, dword [ebx + 0x5c]
lea eax, [eax + esi*4]
mov ecx, dword [eax]
push dword [ecx + 4]
lea eax, [ebp - 0x2c]
push dword [ecx]
push str._s.code_d
push eax
call fcn.00401766
add esp, 0x10
push dword [ebp - 0x2c]
lea eax, [ebp - 0x5c]
push eax
call fcn.00408221
mov byte [ebp - 4], 0x18
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
lea eax, [edi + 0x40]
call fcn.0040a0ee
lea eax, [ebp - 0x5c]
push eax
mov byte [ebp - 4], 0x14
call fcn.00404747
inc esi
mov dword [ebp - 0x14], esi
cmp esi, dword [ebx + 0x60]
jl 0x40effc
cmp byte [ebp - 0xe], 0
je 0x40f211
mov esi, str.v.rpckpre
push esi
lea eax, [ebp - 0x4c]
push eax
call fcn.00401415
mov byte [ebp - 4], 0x19
mov ecx, dword [edi + 4]
mov eax, dword [ecx]
call dword [eax]
lea ecx, [ebp - 0x4c]
push ecx
lea ecx, [ebp - 0x60]
push ecx
mov ebx, eax
call fcn.00413c05
mov byte [ebp - 4], 0x1a
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
mov byte [ebp - 4], 0x19
mov eax, dword [ebp - 0x60]
sete bl
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x4c]
add eax, 0xfffffff0
call fcn.0040114e
test bl, bl
je 0x40f211
push esi
lea eax, [ebp - 0x50]
push eax
call fcn.00401415
lea eax, [ebp - 0x30]
push eax
mov byte [ebp - 4], 0x1b
mov ecx, dword [edi + 4]
lea eax, [ebp - 0x50]
push eax
mov eax, dword [ecx]
call dword [eax]
mov esi, eax
call fcn.00413d9a
mov byte [ebp - 4], 0x14
mov eax, dword [ebp - 0x50]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0x10
mov eax, dword [ebp - 0x2c]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0xf
mov eax, dword [ebp - 0x18]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0xe
mov eax, dword [ebp - 0x30]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 0xd
mov eax, dword [ebp - 0x34]
add eax, 0xfffffff0
call fcn.0040114e
lea esi, [ebp - 0x70]
call fcn.0042fe74
test al, al
jne 0x40edb7
mov byte [ebp - 4], 0xc
mov eax, dword [ebp - 0x20]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 9
mov eax, dword [ebp - 0x38]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x3c]
add eax, 0xfffffff0
call fcn.0040114e
mov byte [ebp - 4], 4
call fcn.0042fc88
or dword [ebp - 4], 0xffffffff
lea esi, [ebp - 0x80]
call fcn.0042fc88
call fcn.004483f4
ret
push 0
push 0
push 1
push 0xc000008c
call dword [sym.imp.KERNEL32.DLL_RaiseException]