Function at 0x4fe33c
Capabilities:
Check if file exists
Copy file
Delete file
Get common file path
Get file attributes
Read .ini file
Set file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x575850
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x260c
call fcn.0054c740
call fcn.004fd17e
mov dword [ebp - 0x6b0], eax
lea eax, [ebp - 0x510]
push eax
call fcn.00529440
add esp, 4
cmp dword [ebp - 0x6b0], 1
jne 0x4fe395
push 0x5c9024
lea ecx, [ebp - 0x510]
push ecx
call fcn.0054bea0
add esp, 8
cmp dword [ebp - 0x6b0], 2
jne 0x4fe3b2
push 0x5c9044
lea edx, [ebp - 0x510]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x510]
push eax
lea ecx, [ebp - 0x61c]
push ecx
call fcn.0054be90
add esp, 8
push 0x5c9060
lea edx, [ebp - 0x61c]
push edx
call fcn.0054bea0
add esp, 8
push 0x5c9064
lea eax, [ebp - 0x61c]
push eax
call fcn.0054bea0
add esp, 8
mov dword [0x6811ac], 0
mov dword [ebp - 0x6a8], 0
mov dword [ebp - 0x7bc], 0
mov dword [ebp - 0x6b8], 0
push pe_nt_image_headers32
push 0
lea ecx, [ebp - 0x7b8]
push ecx
call fcn.0054bf90
add esp, 0xc
lea edx, [ebp - 0x61c]
push edx
push pe_nt_image_headers32
lea eax, [ebp - 0x7b8]
push eax
push 0x6857e0
push 0
push 0x5c9074
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x7b8]
mov dword [ebp - 0x514], ecx
mov edx, dword [ebp - 0x514]
movsx eax, byte [edx]
test eax, eax
je 0x4fe800
lea ecx, [ebp - 0x61c]
push ecx
push 0x80
lea edx, [ebp - 0x844]
push edx
push 0x6857e4
mov eax, dword [ebp - 0x514]
push eax
push 0x5c9084
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0xa00
push 0
lea ecx, [ebp - 0x1244]
push ecx
call fcn.0054bf90
add esp, 0xc
lea edx, [ebp - 0x61c]
push edx
push 0xa00
lea eax, [ebp - 0x1244]
push eax
lea ecx, [ebp - 0x844]
push ecx
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionA]
lea edx, [ebp - 0x1244]
push edx
lea eax, [ebp - 0x12c4]
push eax
call fcn.0054be90
add esp, 8
push 0x2c
lea ecx, [ebp - 0x12c4]
push ecx
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x7c4], eax
mov edx, dword [ebp - 0x7c4]
add edx, 1
mov dword [ebp - 0x7c4], edx
mov eax, dword [ebp - 0x7c4]
mov byte [eax], 0
push 0x67fda4
push 0x67fd9c
push 0x5c9094
lea ecx, [ebp - 0x6a4]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edx, [ebp - 0x1244]
mov dword [ebp - 0x7c0], edx
mov eax, dword [ebp - 0x7c0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4fe741
push 0x2c
mov edx, dword [ebp - 0x7c0]
push edx
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x12d4], eax
push 0x3d
mov eax, dword [ebp - 0x7c0]
push eax
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x12d4], eax
cmp dword [ebp - 0x12d4], 0
je 0x4fe59f
push 0x2c
mov ecx, dword [ebp - 0x12d4]
push ecx
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x12d4], eax
cmp dword [ebp - 0x12d4], 0
je 0x4fe70f
mov edx, dword [ebp - 0x12d4]
add edx, 1
mov dword [ebp - 0x12d4], edx
mov eax, dword [ebp - 0x12d4]
movsx ecx, byte [eax]
cmp ecx, 0x20
jne 0x4fe5da
mov edx, dword [ebp - 0x12d4]
add edx, 1
mov dword [ebp - 0x12d4], edx
jmp 0x4fe5bb
mov eax, dword [ebp - 0x12d4]
push eax
mov ecx, dword [0x6811ac]
shl ecx, 7
add ecx, 0x67fdac
push ecx
call fcn.0054be90
add esp, 8
lea edx, [ebp - 0x6a4]
push edx
mov eax, dword [0x6811ac]
shl eax, 7
add eax, 0x67fdac
push eax
call fcn.0054cb20
add esp, 8
test eax, eax
je 0x4fe624
mov dword [ebp - 0x7bc], 1
push 0x5c90ac
mov ecx, dword [ebp - 0x12d4]
push ecx
call fcn.0054cb20
add esp, 8
mov dword [ebp - 0x12d0], eax
cmp dword [ebp - 0x12d0], 0
je 0x4fe692
push 5
push 0
lea edx, [ebp - 0x12cc]
push edx
call fcn.0054bf90
add esp, 0xc
push 4
mov eax, dword [ebp - 0x12d0]
add eax, 4
push eax
lea ecx, [ebp - 0x12cc]
push ecx
call fcn.0054c7e0
add esp, 0xc
lea edx, [ebp - 0x12cc]
push edx
call fcn.00529529
add esp, 4
mov ecx, dword [0x6811ac]
mov word [ecx*2 + 0x680dac], ax
push 0x5c90b4
mov edx, dword [ebp - 0x12d4]
push edx
call fcn.0054cb20
add esp, 8
mov dword [ebp - 0x12d0], eax
cmp dword [ebp - 0x12d0], 0
je 0x4fe700
push 5
push 0
lea eax, [ebp - 0x12cc]
push eax
call fcn.0054bf90
add esp, 0xc
push 4
mov ecx, dword [ebp - 0x12d0]
add ecx, 4
push ecx
lea edx, [ebp - 0x12cc]
push edx
call fcn.0054c7e0
add esp, 0xc
lea eax, [ebp - 0x12cc]
push eax
call fcn.00529529
add esp, 4
mov ecx, dword [0x6811ac]
mov word [ecx*2 + 0x680fac], ax
mov edx, dword [0x6811ac]
add edx, 1
mov dword [0x6811ac], edx
mov eax, dword [ebp - 0x7c0]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4fe72d
mov edx, dword [ebp - 0x7c0]
add edx, 1
mov dword [ebp - 0x7c0], edx
jmp 0x4fe70f
mov eax, dword [ebp - 0x7c0]
add eax, 1
mov dword [ebp - 0x7c0], eax
jmp 0x4fe540
cmp dword [ebp - 0x7bc], 0
jne 0x4fe7ce
lea ecx, [ebp - 0x6a4]
push ecx
mov edx, dword [0x6811ac]
shl edx, 7
add edx, 0x67fdac
push edx
call fcn.0054be90
add esp, 8
mov eax, dword [0x6811ac]
add eax, 1
mov dword [0x6811ac], eax
lea ecx, [ebp - 0x6a4]
push ecx
lea edx, [ebp - 0x12c4]
push edx
push 0x5c90bc
lea eax, [ebp - 0x1354]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea ecx, [ebp - 0x1354]
push ecx
mov edx, dword [ebp - 0x7c0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x61c]
push eax
lea ecx, [ebp - 0x1244]
push ecx
lea edx, [ebp - 0x844]
push edx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileSectionA]
mov eax, dword [ebp - 0x514]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4fe7ec
mov edx, dword [ebp - 0x514]
add edx, 1
mov dword [ebp - 0x514], edx
jmp 0x4fe7ce
mov eax, dword [ebp - 0x514]
add eax, 1
mov dword [ebp - 0x514], eax
jmp 0x4fe45f
cmp dword [ebp + 0xc], 0
je 0x4fe810
mov eax, 1
jmp 0x4ff6ca
push pe_nt_image_headers32
push 0
lea ecx, [ebp - 0x7b8]
push ecx
call fcn.0054bf90
add esp, 0xc
lea edx, [ebp - 0x510]
push edx
call fcn.00529440
add esp, 4
cmp dword [ebp - 0x6b0], 1
jne 0x4fe852
push 0x5c90c4
lea eax, [ebp - 0x510]
push eax
call fcn.0054bea0
add esp, 8
cmp dword [ebp - 0x6b0], 2
jne 0x4fe86f
push 0x5c90e4
lea ecx, [ebp - 0x510]
push ecx
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x6ac]
call fcn.00401420
mov dword [ebp - 4], 0
push str.smi32xpc.inf
lea edx, [ebp - 0x510]
push edx
push 0x5c9110
lea eax, [ebp - 0x6ac]
push eax
call fcn.0055f827
add esp, 0x10
lea ecx, [ebp - 0x6ac]
call fcn.005287a0
push eax
push pe_nt_image_headers32
lea ecx, [ebp - 0x7b8]
push ecx
push 0x6857e8
push 0
push 0x5c9118
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea edx, [ebp - 0x7b8]
mov dword [ebp - 0x514], edx
mov eax, dword [ebp - 0x514]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4feba9
lea ecx, [ebp - 0x6ac]
call fcn.005287a0
push eax
push 0x80
lea edx, [ebp - 0x13dc]
push edx
push 0x6857ec
mov eax, dword [ebp - 0x514]
push eax
push 0x5c9128
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
push 0xa00
push 0
lea ecx, [ebp - 0x1ddc]
push ecx
call fcn.0054bf90
add esp, 0xc
lea ecx, [ebp - 0x6ac]
call fcn.005287a0
push eax
push 0xa00
lea edx, [ebp - 0x1ddc]
push edx
lea eax, [ebp - 0x13dc]
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileSectionA]
lea ecx, [ebp - 0x1ddc]
push ecx
lea edx, [ebp - 0x1e5c]
push edx
call fcn.0054be90
add esp, 8
push 0x2c
lea eax, [ebp - 0x1e5c]
push eax
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x135c], eax
mov ecx, dword [ebp - 0x135c]
add ecx, 1
mov dword [ebp - 0x135c], ecx
mov edx, dword [ebp - 0x135c]
mov byte [edx], 0
push 0x67fda4
push 0x67fd9c
push str.USBVID__04sPID__04s
lea eax, [ebp - 0x6a4]
push eax
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea ecx, [ebp - 0x1ddc]
mov dword [ebp - 0x1358], ecx
mov edx, dword [ebp - 0x1358]
movsx eax, byte [edx]
test eax, eax
je 0x4feae5
push 0x2c
mov ecx, dword [ebp - 0x1358]
push ecx
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x1e60], eax
push 0x3d
mov edx, dword [ebp - 0x1358]
push edx
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x1e60], eax
cmp dword [ebp - 0x1e60], 0
je 0x4fea21
push 0x2c
mov eax, dword [ebp - 0x1e60]
push eax
call fcn.0054d0e0
add esp, 8
mov dword [ebp - 0x1e60], eax
cmp dword [ebp - 0x1e60], 0
je 0x4feab3
mov ecx, dword [ebp - 0x1e60]
add ecx, 1
mov dword [ebp - 0x1e60], ecx
mov edx, dword [ebp - 0x1e60]
movsx eax, byte [edx]
cmp eax, 0x20
jne 0x4fea5c
mov ecx, dword [ebp - 0x1e60]
add ecx, 1
mov dword [ebp - 0x1e60], ecx
jmp 0x4fea3d
mov edx, dword [ebp - 0x1e60]
push edx
mov eax, dword [0x6811ac]
shl eax, 7
add eax, 0x67fdac
push eax
call fcn.0054be90
add esp, 8
lea ecx, [ebp - 0x6a4]
push ecx
mov edx, dword [0x6811ac]
shl edx, 7
add edx, 0x67fdac
push edx
call fcn.0054cb20
add esp, 8
test eax, eax
je 0x4feaa6
mov dword [ebp - 0x7bc], 1
mov eax, dword [0x6811ac]
add eax, 1
mov dword [0x6811ac], eax
mov ecx, dword [ebp - 0x1358]
movsx edx, byte [ecx]
test edx, edx
je 0x4fead1
mov eax, dword [ebp - 0x1358]
add eax, 1
mov dword [ebp - 0x1358], eax
jmp 0x4feab3
mov ecx, dword [ebp - 0x1358]
add ecx, 1
mov dword [ebp - 0x1358], ecx
jmp 0x4fe9c2
cmp dword [ebp - 0x7bc], 0
jne 0x4feb77
lea edx, [ebp - 0x6a4]
push edx
mov eax, dword [0x6811ac]
shl eax, 7
add eax, 0x67fdac
push eax
call fcn.0054be90
add esp, 8
mov ecx, dword [0x6811ac]
add ecx, 1
mov dword [0x6811ac], ecx
lea edx, [ebp - 0x6a4]
push edx
lea eax, [ebp - 0x1e5c]
push eax
push 0x5c9150
lea ecx, [ebp - 0x1ee0]
push ecx
call dword [sym.imp.USER32.dll_wsprintfA]
add esp, 0x10
lea edx, [ebp - 0x1ee0]
push edx
mov eax, dword [ebp - 0x1358]
push eax
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x6ac]
call fcn.005287a0
push eax
lea ecx, [ebp - 0x1ddc]
push ecx
lea edx, [ebp - 0x13dc]
push edx
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileSectionA]
mov eax, dword [ebp - 0x514]
movsx ecx, byte [eax]
test ecx, ecx
je 0x4feb95
mov edx, dword [ebp - 0x514]
add edx, 1
mov dword [ebp - 0x514], edx
jmp 0x4feb77
mov eax, dword [ebp - 0x514]
add eax, 1
mov dword [ebp - 0x514], eax
jmp 0x4fe8d7
mov dword [ebp - 0x518], 0
cmp dword [ebp - 0x6b0], 0
jne 0x4febf7
push 0
push 0x6857f0
push str.Not_Win2000_or_WinXP_OS
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x25ec], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x25ec]
jmp 0x4ff6ca
xor ecx, ecx
cmp dword [ebp + 8], 0
sete cl
push ecx
call fcn.004fdfed
add esp, 4
cmp dword [ebp + 8], 0
je 0x4ff1c5
lea edx, [ebp - 0x40c]
push edx
call fcn.004fdf48
add esp, 4
test eax, eax
jne 0x4fec4d
mov dword [ebp - 0x25f0], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x25f0]
jmp 0x4ff6ca
lea eax, [ebp - 0x20c]
push eax
call fcn.004fdf48
add esp, 4
test eax, eax
jne 0x4fec87
mov dword [ebp - 0x25f4], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x25f4]
jmp 0x4ff6ca
push 0x5c9170
lea ecx, [ebp - 0x40c]
push ecx
call fcn.0054bea0
add esp, 8
push 0x5c9184
lea edx, [ebp - 0x20c]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
je 0x4fece1
lea ecx, [ebp - 0x20c]
push ecx
lea edx, [ebp - 0x40c]
push edx
call fcn.0054f1a6
add esp, 8
push 0x200
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x200
lea ecx, [ebp - 0x20c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x5c9198
lea edx, [ebp - 0x40c]
push edx
call fcn.0054bea0
add esp, 8
push 0x5c91ac
lea eax, [ebp - 0x20c]
push eax
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x40c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
je 0x4fed5f
lea edx, [ebp - 0x20c]
push edx
lea eax, [ebp - 0x40c]
push eax
call fcn.0054f1a6
add esp, 8
call fcn.004fd612
lea ecx, [ebp - 0x20e0]
push ecx
call fcn.00529440
add esp, 4
lea edx, [ebp - 0x510]
push edx
lea eax, [ebp - 0x20e0]
push eax
call fcn.0054be90
add esp, 8
push str.SMI32x2k.INF
lea ecx, [ebp - 0x20e0]
push ecx
call fcn.0054bea0
add esp, 8
lea edx, [ebp - 0x20e0]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
jne 0x4fedf4
push 0
push 0x6857f4
push str.Not_Find_SMI32x2k.INF
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x25f8], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x25f8]
jmp 0x4ff6ca
push 0x200
lea eax, [ebp - 0x22e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x5c91e8
lea ecx, [ebp - 0x22e0]
push ecx
call fcn.0054bea0
add esp, 8
push 0
lea edx, [ebp - 0x22e0]
push edx
lea eax, [ebp - 0x20e0]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea ecx, [ebp - 0x20e0]
push ecx
call fcn.00529440
add esp, 4
lea edx, [ebp - 0x510]
push edx
lea eax, [ebp - 0x20e0]
push eax
call fcn.0054be90
add esp, 8
push str.SMI32x2k.SYS
lea ecx, [ebp - 0x20e0]
push ecx
call fcn.0054bea0
add esp, 8
lea edx, [ebp - 0x20e0]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
jne 0x4feec0
push 0
push 0x6857f8
push str.Not_Find_SMI32x2k.SYS
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x25fc], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x25fc]
jmp 0x4ff6ca
push 0x200
lea eax, [ebp - 0x22e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x5c9224
lea ecx, [ebp - 0x22e0]
push ecx
call fcn.0054bea0
add esp, 8
push 0
lea edx, [ebp - 0x22e0]
push edx
lea eax, [ebp - 0x20e0]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea ecx, [ebp - 0x510]
push ecx
lea edx, [ebp - 0x20e0]
push edx
call fcn.0054be90
add esp, 8
push str.SMI32xPC.INF
lea eax, [ebp - 0x20e0]
push eax
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x20e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
jne 0x4fef7d
push 0
push 0x6857fc
push str.Not_Find_SMI32xPC.INF
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2600], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x2600]
jmp 0x4ff6ca
push 0x200
lea edx, [ebp - 0x22e0]
push edx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x5c926c
lea eax, [ebp - 0x22e0]
push eax
call fcn.0054bea0
add esp, 8
push 0
lea ecx, [ebp - 0x22e0]
push ecx
lea edx, [ebp - 0x20e0]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
lea eax, [ebp - 0x510]
push eax
lea ecx, [ebp - 0x20e0]
push ecx
call fcn.0054be90
add esp, 8
push str.SMI32xPC.SYS
lea edx, [ebp - 0x20e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x20e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
jne 0x4ff03a
push 0
push 0x685800
push str.Not_Find_SMI32xPC.SYS
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2604], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x2604]
jmp 0x4ff6ca
push 0x200
lea ecx, [ebp - 0x22e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x5c92a8
lea edx, [ebp - 0x22e0]
push edx
call fcn.0054bea0
add esp, 8
push 0
lea eax, [ebp - 0x22e0]
push eax
lea ecx, [ebp - 0x20e0]
push ecx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
push 0
push 0
push 1
call fcn.004fd88d
add esp, 0xc
mov dword [ebp - 0x624], 0
jmp 0x4ff09f
mov edx, dword [ebp - 0x624]
add edx, 1
mov dword [ebp - 0x624], edx
mov eax, dword [ebp - 0x624]
cmp eax, dword [0x6811ac]
jge 0x4ff1b1
mov ecx, dword [ebp - 0x624]
shl ecx, 7
add ecx, 0x67fdac
push ecx
call fcn.004fdd7e
add esp, 4
mov dword [ebp - 0x6b4], eax
mov dword [ebp - 0x6b4], 1
cmp dword [ebp - 0x6b4], 0
je 0x4ff1ac
lea edx, [ebp - 0x40c]
push edx
call fcn.00529440
add esp, 4
lea eax, [ebp - 0x510]
push eax
lea ecx, [ebp - 0x40c]
push ecx
call fcn.0054be90
add esp, 8
push 0x5c92c8
lea edx, [ebp - 0x40c]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
jne 0x4ff176
push 0
push 0x685804
push 0x5c92d8
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2608], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x2608]
jmp 0x4ff6ca
lea ecx, [ebp - 0x518]
push ecx
push 1
lea edx, [ebp - 0x40c]
push edx
mov eax, dword [ebp - 0x624]
shl eax, 7
add eax, 0x67fdac
push eax
push 0
call sub.newdev.dll_UpdateDriverForPlugAndPlayDevicesA
test eax, eax
jne 0x4ff1a2
jmp 0x4ff1ac
mov dword [ebp - 0x6b8], 1
jmp 0x4ff090
mov dword [ebp - 0x6b8], 1
call fcn.004fd565
jmp 0x4ff6a8
lea ecx, [ebp - 0x40c]
push ecx
call fcn.004fdf48
add esp, 4
test eax, eax
jne 0x4ff1ff
mov dword [ebp - 0x260c], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x260c]
jmp 0x4ff6ca
lea edx, [ebp - 0x20c]
push edx
call fcn.004fdf48
add esp, 4
test eax, eax
jne 0x4ff239
mov dword [ebp - 0x2610], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x2610]
jmp 0x4ff6ca
push str.infusbstor.inf
lea eax, [ebp - 0x40c]
push eax
call fcn.0054bea0
add esp, 8
push str.infusbstor.iXX
lea ecx, [ebp - 0x20c]
push ecx
call fcn.0054bea0
add esp, 8
lea edx, [ebp - 0x20c]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
je 0x4ff298
lea eax, [ebp - 0x40c]
push eax
lea ecx, [ebp - 0x20c]
push ecx
call fcn.0054f1a6
add esp, 8
jmp 0x4ff33e
cmp dword [ebp - 0x6b0], 1
jne 0x4ff2e1
lea edx, [ebp - 0x510]
push edx
lea eax, [ebp - 0x25e8]
push eax
call fcn.0054be90
add esp, 8
push 0x5c9318
lea ecx, [ebp - 0x25e8]
push ecx
call fcn.0054bea0
add esp, 8
push str.Win2000usbstor.inf
lea edx, [ebp - 0x25e8]
push edx
call fcn.0054bea0
add esp, 8
jmp 0x4ff328
cmp dword [ebp - 0x6b0], 2
jne 0x4ff328
lea eax, [ebp - 0x510]
push eax
lea ecx, [ebp - 0x25e8]
push ecx
call fcn.0054be90
add esp, 8
push 0x5c9334
lea edx, [ebp - 0x25e8]
push edx
call fcn.0054bea0
add esp, 8
push str.WinXPusbstor.inf
lea eax, [ebp - 0x25e8]
push eax
call fcn.0054bea0
add esp, 8
push 0
lea ecx, [ebp - 0x40c]
push ecx
lea edx, [ebp - 0x25e8]
push edx
call dword [sym.imp.KERNEL32.dll_CopyFileA]
push 0x200
lea eax, [ebp - 0x40c]
push eax
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push 0x200
lea ecx, [ebp - 0x20c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.infusbstor.pnf
lea edx, [ebp - 0x40c]
push edx
call fcn.0054bea0
add esp, 8
push str.infusbstor.pXX
lea eax, [ebp - 0x20c]
push eax
call fcn.0054bea0
add esp, 8
lea ecx, [ebp - 0x20c]
push ecx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
je 0x4ff3bc
lea edx, [ebp - 0x40c]
push edx
lea eax, [ebp - 0x20c]
push eax
call fcn.0054f1a6
add esp, 8
push 0x200
lea ecx, [ebp - 0x24e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str._system32driversSMI32x2k.SYS
lea edx, [ebp - 0x24e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24e4], eax
mov ecx, dword [ebp - 0x24e4]
and ecx, 1
test ecx, ecx
je 0x4ff411
push 0x20
lea edx, [ebp - 0x24e0]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x200
lea ecx, [ebp - 0x24e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.infSMI32x2k.INF
lea edx, [ebp - 0x24e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24e4], eax
mov ecx, dword [ebp - 0x24e4]
and ecx, 1
test ecx, ecx
je 0x4ff473
push 0x20
lea edx, [ebp - 0x24e0]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x200
lea ecx, [ebp - 0x24e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.infSMI32x2k.PNF
lea edx, [ebp - 0x24e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24e4], eax
mov ecx, dword [ebp - 0x24e4]
and ecx, 1
test ecx, ecx
je 0x4ff4d5
push 0x20
lea edx, [ebp - 0x24e0]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x200
lea ecx, [ebp - 0x24e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str._system32driversSMI32xPC.SYS
lea edx, [ebp - 0x24e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24e4], eax
mov ecx, dword [ebp - 0x24e4]
and ecx, 1
test ecx, ecx
je 0x4ff537
push 0x20
lea edx, [ebp - 0x24e0]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x200
lea ecx, [ebp - 0x24e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.infSMI32xPC.INF
lea edx, [ebp - 0x24e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24e4], eax
mov ecx, dword [ebp - 0x24e4]
and ecx, 1
test ecx, ecx
je 0x4ff599
push 0x20
lea edx, [ebp - 0x24e0]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x200
lea ecx, [ebp - 0x24e0]
push ecx
call dword [sym.imp.KERNEL32.dll_GetWindowsDirectoryA]
push str.infSMI32xPC.PNF
lea edx, [ebp - 0x24e0]
push edx
call fcn.0054bea0
add esp, 8
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x24e4], eax
mov ecx, dword [ebp - 0x24e4]
and ecx, 1
test ecx, ecx
je 0x4ff5fb
push 0x20
lea edx, [ebp - 0x24e0]
push edx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesA]
lea eax, [ebp - 0x24e0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x40c]
push ecx
call fcn.00529440
add esp, 4
lea edx, [ebp - 0x510]
push edx
lea eax, [ebp - 0x40c]
push eax
call fcn.0054be90
add esp, 8
push str._smi32x2k.inf
lea ecx, [ebp - 0x40c]
push ecx
call fcn.0054bea0
add esp, 8
lea edx, [ebp - 0x40c]
push edx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov dword [ebp - 0x620], eax
cmp dword [ebp - 0x620], 0xffffffff
jne 0x4ff695
push 0
push 0x685808
push str.Not_Find_smi32x2k.inf
push 0
call dword [sym.imp.USER32.dll_MessageBoxA]
mov dword [ebp - 0x2614], 0
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x2614]
jmp 0x4ff6ca
push 0
push 1
push 1
call fcn.004fd88d
add esp, 0xc
call fcn.004fd565
mov dword [ebp - 0x2618], 1
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x6ac]
call fcn.0056206c
mov eax, dword [ebp - 0x2618]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret