Function at 0x491e80
Capabilities:
Copy file
Get common file path

Disassembly:
push 0xffffffffffffffff
push 0x4fb9ab
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x4e8
push ebx
push esi
lea eax, [esp + 0x2f0]
push edi
push eax
call fcn.004ab6e0
lea ecx, [esp + 0x10]
push ecx
call fcn.00401350
add esp, 8
lea edx, [esp + 0x74]
push 0x80
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea eax, [esp + 0x474]
push 0x80
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.c:endpcache
call fcn.004f2beb
add esp, 4
lea ecx, [esp + 0x2c]
push 1
call fcn.004f0653
mov ecx, dword [0x4fe4e8]
mov dword [esp + 0x4fc], 0
push ecx
push 8
push str.c:endpcacheprocess_log.txt
lea ecx, [esp + 0x38]
call fcn.004f0727
lea edx, [esp + 0x74]
lea eax, [esp + 0xf4]
push edx
push str._sdrivers_beep.sys
push eax
call fcn.004f175f
lea ecx, [esp + 0x80]
lea edx, [esp + 0x200]
push ecx
push str._sdllcache_bk_beep.sys
push edx
call fcn.004f175f
lea eax, [esp + 0x8c]
lea ecx, [esp + 0x38c]
push eax
push str._sdllcache_beep.sys
push ecx
call fcn.004f175f
push str.c:endpcache
xor edi, edi
xor esi, esi
call fcn.004f2beb
lea edx, [esp + 0x11c]
push edx
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0x34
test eax, eax
jne 0x491f92
mov edi, 1
lea eax, [esp + 0x1f4]
push eax
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0xc
test eax, eax
jne 0x491fb6
mov esi, 1
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileA]
cmp edi, 1
jne 0x492012
lea ecx, [esp + 0xc]
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [esp + 0x2f4]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
push 0x526508
push 0xc30c10
call fcn.004f175f
add esp, 0x10
test esi, esi
jne 0x4920a7
lea eax, [esp + 0x1f4]
push esi
lea ecx, [esp + 0xf8]
push eax
push ecx
call ebx
jmp 0x4920a7
cmp esi, 1
push 0
jne 0x49203f
lea edx, [esp + 0xf8]
lea eax, [esp + 0x1f8]
push edx
push eax
call ebx
lea ecx, [esp + 0xf4]
push 0
lea edx, [esp + 0x1f8]
push ecx
push edx
jmp 0x49204f
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x378]
push eax
push ecx
call ebx
lea edx, [esp + 0xc]
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [esp + 0x2f8]
push eax
call fcn.004fa6c0
add esp, 4
push eax
push 0x5264d4
push 0xc30c10
call fcn.004f175f
mov edx, dword [0xe56d24]
mov ecx, dword [0xe56c74]
mov eax, dword [0xe56d88]
add esp, 0x10
inc edx
inc ecx
inc eax
mov dword [0xe56d24], edx
mov dword [0xe56c74], ecx
mov dword [0xe56d88], eax
push 0xc30c10
lea ecx, [esp + 0x3c]
call fcn.004f0087
push 0x402150
push 0xa
mov ecx, eax
call fcn.004eff40
mov ecx, eax
call fcn.004016a0
lea ecx, [esp + 0x74]
lea edx, [esp + 0xf4]
push ecx
push str._sdrivers_null.sys
push edx
call fcn.004f175f
lea eax, [esp + 0x80]
lea ecx, [esp + 0x200]
push eax
push str._sdllcache_bk_null.sys
push ecx
call fcn.004f175f
lea edx, [esp + 0x8c]
lea eax, [esp + 0x38c]
push edx
push str._sdllcache_null.sys
push eax
call fcn.004f175f
lea ecx, [esp + 0x118]
xor edi, edi
push ecx
xor esi, esi
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0x30
test eax, eax
jne 0x49213d
mov edi, 1
lea edx, [esp + 0x1f4]
push edx
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0xc
test eax, eax
jne 0x492161
mov esi, 1
cmp edi, 1
jne 0x4921b7
lea eax, [esp + 0xc]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [esp + 0x2f4]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
push eax
push 0x526458
push 0xd5301c
call fcn.004f175f
add esp, 0x10
test esi, esi
jne 0x49224c
lea edx, [esp + 0x1f4]
push esi
lea eax, [esp + 0xf8]
push edx
push eax
call ebx
jmp 0x49224c
cmp esi, 1
push 0
jne 0x4921e4
lea ecx, [esp + 0xf8]
lea edx, [esp + 0x1f8]
push ecx
push edx
call ebx
lea eax, [esp + 0xf4]
push 0
lea ecx, [esp + 0x1f8]
push eax
push ecx
jmp 0x4921f4
lea edx, [esp + 0xf8]
lea eax, [esp + 0x378]
push edx
push eax
call ebx
lea ecx, [esp + 0xc]
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [esp + 0x2f4]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
push 0x526420
push 0xd5301c
call fcn.004f175f
mov edx, dword [0xe56d24]
mov ecx, dword [0xe56c74]
mov eax, dword [0xe56d88]
add esp, 0x10
inc edx
inc ecx
inc eax
mov dword [0xe56d24], edx
mov dword [0xe56c74], ecx
mov dword [0xe56d88], eax
push 0xd5301c
lea ecx, [esp + 0x3c]
call fcn.004f0087
push 0x402150
push 0xa
mov ecx, eax
call fcn.004eff40
mov ecx, eax
call fcn.004016a0
lea eax, [esp + 0x74]
lea ecx, [esp + 0xf4]
push eax
push str._sdrivers_audstub.sys
push ecx
call fcn.004f175f
lea edx, [esp + 0x80]
lea eax, [esp + 0x200]
push edx
push str._sdllcache_bk_audstub.sys
push eax
call fcn.004f175f
lea ecx, [esp + 0x8c]
lea edx, [esp + 0x38c]
push ecx
push str._sdllcache_audstub.sys
push edx
call fcn.004f175f
lea eax, [esp + 0x118]
xor edi, edi
push eax
xor esi, esi
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0x30
test eax, eax
jne 0x4922e2
mov edi, 1
lea ecx, [esp + 0x1f4]
push ecx
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0xc
test eax, eax
jne 0x492306
mov esi, 1
cmp edi, 1
jne 0x49235c
lea edx, [esp + 0xc]
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [esp + 0x2f8]
push eax
call fcn.004fa6c0
add esp, 4
push eax
push 0x52639c
push 0xc36f10
call fcn.004f175f
add esp, 0x10
test esi, esi
jne 0x4923f1
lea ecx, [esp + 0x1f4]
push esi
lea edx, [esp + 0xf8]
push ecx
push edx
call ebx
jmp 0x4923f1
cmp esi, 1
push 0
jne 0x492389
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x1f8]
push eax
push ecx
call ebx
lea edx, [esp + 0xf4]
push 0
lea eax, [esp + 0x1f8]
push edx
push eax
jmp 0x492399
lea ecx, [esp + 0xf8]
lea edx, [esp + 0x378]
push ecx
push edx
call ebx
lea eax, [esp + 0xc]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [esp + 0x2f4]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
push eax
push 0x526364
push 0xc36f10
call fcn.004f175f
mov edx, dword [0xe56d24]
mov ecx, dword [0xe56c74]
mov eax, dword [0xe56d88]
add esp, 0x10
inc edx
inc ecx
inc eax
mov dword [0xe56d24], edx
mov dword [0xe56c74], ecx
mov dword [0xe56d88], eax
push 0xc36f10
lea ecx, [esp + 0x3c]
call fcn.004f0087
push 0x402150
push 0xa
mov ecx, eax
call fcn.004eff40
mov ecx, eax
call fcn.004016a0
lea edx, [esp + 0x74]
lea eax, [esp + 0xf4]
push edx
push str._sdrivers_swenum.sys
push eax
call fcn.004f175f
lea ecx, [esp + 0x80]
lea edx, [esp + 0x200]
push ecx
push str._sdllcache_bk_swenum.sys
push edx
call fcn.004f175f
lea eax, [esp + 0x8c]
lea ecx, [esp + 0x38c]
push eax
push str._sdllcache_swenum.sys
push ecx
call fcn.004f175f
lea edx, [esp + 0x118]
xor edi, edi
push edx
xor esi, esi
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0x30
test eax, eax
jne 0x492487
mov edi, 1
lea eax, [esp + 0x1f4]
push eax
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0xc
test eax, eax
jne 0x4924ab
mov esi, 1
cmp edi, 1
jne 0x492501
lea ecx, [esp + 0xc]
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [esp + 0x2f4]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
push 0x5262e0
push 0xda6800
call fcn.004f175f
add esp, 0x10
test esi, esi
jne 0x492596
lea eax, [esp + 0x1f4]
push esi
lea ecx, [esp + 0xf8]
push eax
push ecx
call ebx
jmp 0x492596
cmp esi, 1
push 0
jne 0x49252e
lea edx, [esp + 0xf8]
lea eax, [esp + 0x1f8]
push edx
push eax
call ebx
lea ecx, [esp + 0xf4]
push 0
lea edx, [esp + 0x1f8]
push ecx
push edx
jmp 0x49253e
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x378]
push eax
push ecx
call ebx
lea edx, [esp + 0xc]
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [esp + 0x2f8]
push eax
call fcn.004fa6c0
add esp, 4
push eax
push 0x5262a8
push 0xda6800
call fcn.004f175f
mov edx, dword [0xe56d24]
mov ecx, dword [0xe56c74]
mov eax, dword [0xe56d88]
add esp, 0x10
inc edx
inc ecx
inc eax
mov dword [0xe56d24], edx
mov dword [0xe56c74], ecx
mov dword [0xe56d88], eax
push 0xda6800
lea ecx, [esp + 0x3c]
call fcn.004f0087
push 0x402150
push 0xa
mov ecx, eax
call fcn.004eff40
mov ecx, eax
call fcn.004016a0
lea ecx, [esp + 0x74]
lea edx, [esp + 0xf4]
push ecx
push str._sdriverswmilib.sys
push edx
call fcn.004f175f
lea eax, [esp + 0x80]
lea ecx, [esp + 0x200]
push eax
push str._sdllcache_bkwmilib.sys
push ecx
call fcn.004f175f
lea edx, [esp + 0x8c]
lea eax, [esp + 0x38c]
push edx
push str._sdllcachewmilib.sys
push eax
call fcn.004f175f
lea ecx, [esp + 0x118]
xor edi, edi
push ecx
xor esi, esi
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0x30
test eax, eax
jne 0x49262c
mov edi, 1
lea edx, [esp + 0x1f4]
push edx
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0xc
test eax, eax
jne 0x492650
mov esi, 1
cmp edi, 1
jne 0x4926a6
lea eax, [esp + 0xc]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [esp + 0x2f4]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
push eax
push 0x526224
push 0xc43b90
call fcn.004f175f
add esp, 0x10
test esi, esi
jne 0x49273b
lea edx, [esp + 0x1f4]
push esi
lea eax, [esp + 0xf8]
push edx
push eax
call ebx
jmp 0x49273b
cmp esi, 1
push 0
jne 0x4926d3
lea ecx, [esp + 0xf8]
lea edx, [esp + 0x1f8]
push ecx
push edx
call ebx
lea eax, [esp + 0xf4]
push 0
lea ecx, [esp + 0x1f8]
push eax
push ecx
jmp 0x4926e3
lea edx, [esp + 0xf8]
lea eax, [esp + 0x378]
push edx
push eax
call ebx
lea ecx, [esp + 0xc]
push ecx
call fcn.004fa6c0
add esp, 4
lea edx, [esp + 0x2f4]
push eax
push edx
call fcn.004fa6c0
add esp, 4
push eax
push 0x5261ec
push 0xc43b90
call fcn.004f175f
mov edx, dword [0xe56d24]
mov ecx, dword [0xe56c74]
mov eax, dword [0xe56d88]
add esp, 0x10
inc edx
inc ecx
inc eax
mov dword [0xe56d24], edx
mov dword [0xe56c74], ecx
mov dword [0xe56d88], eax
push 0xc43b90
lea ecx, [esp + 0x3c]
call fcn.004f0087
push 0x402150
push 0xa
mov ecx, eax
call fcn.004eff40
mov ecx, eax
call fcn.004016a0
lea eax, [esp + 0x74]
lea ecx, [esp + 0xf4]
push eax
push str._sdriversmnmdd.sys
push ecx
call fcn.004f175f
lea edx, [esp + 0x80]
lea eax, [esp + 0x200]
push edx
push str._sdllcache_bkmnmdd.sys
push eax
call fcn.004f175f
lea ecx, [esp + 0x8c]
lea edx, [esp + 0x38c]
push ecx
push str._sdllcachemnmdd.sys
push edx
call fcn.004f175f
lea eax, [esp + 0x118]
xor edi, edi
push eax
xor esi, esi
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0x30
test eax, eax
jne 0x4927d1
mov edi, 1
lea ecx, [esp + 0x1f4]
push ecx
call fcn.004bd410
push 0x5144fc
push eax
call fcn.004f61e0
add esp, 0xc
test eax, eax
jne 0x4927f5
mov esi, 1
cmp edi, 1
jne 0x49284b
lea edx, [esp + 0xc]
push edx
call fcn.004fa6c0
add esp, 4
push eax
lea eax, [esp + 0x2f8]
push eax
call fcn.004fa6c0
add esp, 4
push eax
push 0x526168
push 0xc5149c
call fcn.004f175f
add esp, 0x10
test esi, esi
jne 0x4928e0
lea ecx, [esp + 0x1f4]
push esi
lea edx, [esp + 0xf8]
push ecx
push edx
call ebx
jmp 0x4928e0
cmp esi, 1
push 0
jne 0x492878
lea eax, [esp + 0xf8]
lea ecx, [esp + 0x1f8]
push eax
push ecx
call ebx
lea edx, [esp + 0xf4]
push 0
lea eax, [esp + 0x1f8]
push edx
push eax
jmp 0x492888
lea ecx, [esp + 0xf8]
lea edx, [esp + 0x378]
push ecx
push edx
call ebx
lea eax, [esp + 0xc]
push eax
call fcn.004fa6c0
add esp, 4
lea ecx, [esp + 0x2f4]
push eax
push ecx
call fcn.004fa6c0
add esp, 4
push eax
push 0x526130
push 0xc43b90
call fcn.004f175f
mov edx, dword [0xe56d24]
mov ecx, dword [0xe56c74]
mov eax, dword [0xe56d88]
add esp, 0x10
inc edx
inc ecx
inc eax
mov dword [0xe56d24], edx
mov dword [0xe56c74], ecx
mov dword [0xe56d88], eax
push 0xc5149c
lea ecx, [esp + 0x3c]
call fcn.004f0087
push 0x402150
push 0xa
mov ecx, eax
call fcn.004eff40
mov ecx, eax
call fcn.004016a0
lea ecx, [esp + 0x2c]
call fcn.004f076e
lea ecx, [esp + 0x40]
mov dword [esp + 0x4fc], 0xffffffff
call fcn.004f0714
lea ecx, [esp + 0x40]
call fcn.004f05fb
mov ecx, dword [esp + 0x4f4]
pop edi
pop esi
mov eax, 1
pop ebx
mov dword fs:[0], ecx
add esp, 0x4f4
ret