Function at 0x1001ca20
Capabilities:
Delete file
Get common file path
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100fc508
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x4ea8
call fcn.100d1260
mov eax, dword [0x10172eb8]
xor eax, ebp
mov dword [ebp - 0x20], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x4e38], ecx
mov dword [ebp - 0x14], 0x43297
mov dword [ebp - 0x379c], 0xffffffff
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_void___thiscall_CPreferredProfile::constructor_void_
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public:_void___thiscall_CProfileNameArray::constructor_void_
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public:_void___thiscall_CProfileNameArray::constructor_void_
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public:_void___thiscall_CProfileNameArray::constructor_void_
mov byte [ebp - 4], 3
mov dword [ebp - 0x2824], 0x40
mov dword [ebp - 0x1c], 0x2800
cmp dword [ebp + 8], 0
jne 0x1001cb17
mov dword [ebp - 0x4e20], 0x800432b1
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_void___thiscall_CPreferredProfile::destructor_void_
mov eax, dword [ebp - 0x4e20]
jmp 0x1001d4d0
push 0x104
push 0
lea eax, [ebp - 0x3998]
push eax
call fcn.100cac20
add esp, 0xc
lea ecx, [ebp - 0x3998]
push ecx
push 0x103
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
test eax, eax
jne 0x1001cb57
push 0x10114314
lea edx, [ebp - 0x3998]
push edx
call fcn.100d13f0
add esp, 8
lea eax, [ebp - 0x3998]
push eax
call fcn.100cb090
add esp, 4
mov ecx, 0x104
sub ecx, eax
push ecx
push 0x10114318
lea edx, [ebp - 0x3998]
push edx
call fcn.1001f1f0
add esp, 0xc
push 0x104
push 0
lea eax, [ebp - 0x2930]
push eax
call fcn.100cac20
add esp, 0xc
lea ecx, [ebp - 0x2930]
push ecx
push 0x103
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
mov dword [ebp - 0x399c], eax
cmp dword [ebp - 0x399c], 0
jne 0x1001cbcd
push 0x10114324
lea edx, [ebp - 0x2930]
push edx
call fcn.100d13f0
add esp, 8
lea eax, [ebp - 0x2930]
push eax
call fcn.100cb090
add esp, 4
mov ecx, 0x104
sub ecx, eax
push ecx
push 0x10114328
lea edx, [ebp - 0x2930]
push edx
call fcn.1001f1f0
add esp, 0xc
mov byte [ebp - 4], 4
push 0
push 0x80
push 2
push 0
push 0
push 0x40000000
lea eax, [ebp - 0x3998]
push eax
call dword [sym.imp.KERNEL32.dll_CreateFileA]
mov dword [ebp - 0x379c], eax
cmp dword [ebp - 0x379c], 0xffffffff
jne 0x1001cc7e
mov dword [ebp - 0x4e24], 0x8004329e
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_void___thiscall_CPreferredProfile::destructor_void_
mov eax, dword [ebp - 0x4e24]
jmp 0x1001d4d0
mov dword [ebp - 0x14], 0x43297
mov dword [ebp - 0x388c], 0
push 0
lea ecx, [ebp - 0x388c]
push ecx
push 0x2800
lea edx, [ebp - 0x2820]
push edx
mov eax, dword [ebp + 0xc]
push eax
call dword [sym.imp.KERNEL32.dll_ReadFile]
mov dword [ebp - 0x39a0], eax
cmp dword [ebp - 0x39a0], 0
jne 0x1001ccde
mov dword [ebp - 0x14], 0x800432c3
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x4e28], ecx
push 0x1014f068
lea edx, [ebp - 0x4e28]
push edx
call fcn.100cb4c0
mov dword [ebp - 0x18], 0
push 0
lea eax, [ebp - 0x18]
push eax
mov ecx, dword [ebp - 0x388c]
push ecx
lea edx, [ebp - 0x2820]
push edx
mov eax, dword [ebp - 0x379c]
push eax
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov dword [ebp - 0x39a0], eax
cmp dword [ebp - 0x39a0], 0
jne 0x1001cd36
mov dword [ebp - 0x14], 0x800432a5
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x4e2c], ecx
push 0x1014f068
lea edx, [ebp - 0x4e2c]
push edx
call fcn.100cb4c0
cmp dword [ebp - 0x388c], 0x2800
je 0x1001cc85
mov eax, dword [ebp - 0x379c]
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
mov dword [ebp - 0x379c], 0xffffffff
mov ecx, dword [ebp + 8]
push ecx
lea ecx, [ebp - 0x4af4]
call fcn.1000bcc0
mov dword [ebp - 0x4e3c], eax
mov byte [ebp - 4], 5
lea edx, [ebp - 0x2930]
push edx
lea eax, [ebp - 0x3998]
push eax
lea ecx, [ebp - 0x4af4]
call fcn.1000d890
mov byte [ebp - 0x4e18], 0
push 0x1ff
push 0
lea ecx, [ebp - 0x4e17]
push ecx
call fcn.100cac20
add esp, 0xc
mov byte [ebp - 0x4c18], 0
xor edx, edx
mov dword [ebp - 0x4c17], edx
mov byte [ebp - 0x3ad0], 0
push 0x103
push 0
lea eax, [ebp - 0x3acf]
push eax
call fcn.100cac20
add esp, 0xc
mov byte [ebp - 0x4c10], 0
push 0x103
push 0
lea ecx, [ebp - 0x4c0f]
push ecx
call fcn.100cac20
add esp, 0xc
mov dword [ebp - 0x4b08], 0x104
mov dword [ebp - 0x4e1c], 0x1ff
push 3
lea edx, [ebp - 0x2930]
push edx
lea eax, [ebp - 0x4c18]
push eax
call fcn.10003f80
add esp, 0xc
push 0
mov ecx, dword [ebp - 0x4e1c]
push ecx
lea edx, [ebp - 0x4e18]
push edx
lea eax, [ebp - 0x4c18]
push eax
call fcn.100315c0
add esp, 0x10
mov byte [ebp - 0x4af8], 0
xor ecx, ecx
mov word [ebp - 0x4af7], cx
mov byte [ebp - 0x4af5], cl
push 0x10114334
lea edx, [ebp - 0x4af8]
push edx
call fcn.100d13f0
add esp, 8
lea eax, [ebp - 0x4c10]
push eax
mov ecx, dword [ebp - 0x4b08]
push ecx
call dword [sym.imp.KERNEL32.dll_GetTempPathA]
lea edx, [ebp - 0x3ad0]
push edx
push 0
lea eax, [ebp - 0x4af8]
push eax
lea ecx, [ebp - 0x4c10]
push ecx
call dword [sym.imp.KERNEL32.dll_GetTempFileNameA]
lea edx, [ebp - 0x4e18]
push edx
lea ecx, [ebp - 0x4b04]
call fcn.1000bcc0
mov dword [ebp - 0x4e40], eax
mov byte [ebp - 4], 6
lea eax, [ebp - 0x3ad0]
push eax
lea ecx, [ebp - 0x2930]
push ecx
lea ecx, [ebp - 0x4b04]
call fcn.1000d500
push 0
mov edx, dword [ebp - 0x4e38]
mov eax, dword [edx + 0x1334]
push eax
lea ecx, [ebp - 0x4ae8]
call fcn.1001f210
mov dword [ebp - 0x4e44], eax
mov byte [ebp - 4], 7
lea ecx, [ebp - 0x3ad0]
push ecx
lea ecx, [ebp - 0x4ae8]
call fcn.1001f940
mov dword [ebp - 0x4e48], eax
mov edx, dword [ebp - 0x4e48]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x43297
je 0x1001cfa2
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x4e30], eax
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x4ae8]
call fcn.1001f380
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x4b04]
call fcn.1000bdb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4af4]
call fcn.1000bdb0
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_void___thiscall_CPreferredProfile::destructor_void_
mov eax, dword [ebp - 0x4e30]
jmp 0x1001d4d0
push 0x41
push 0
lea ecx, [ebp - 0x37e8]
push ecx
call fcn.100cac20
add esp, 0xc
mov edx, dword [ebp - 0x2824]
push edx
lea eax, [ebp - 0x37e8]
push eax
lea ecx, [ebp - 0x4ae8]
call fcn.1001fbf0
mov dword [ebp - 0x4e4c], eax
mov ecx, dword [ebp - 0x4e4c]
mov dword [ebp - 0x14], ecx
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d10a
lea edx, [ebp - 0x3798]
push edx
call fcn.1008d9a0
add esp, 4
lea eax, [ebp - 0x3798]
push eax
lea ecx, [ebp - 0x37e8]
push ecx
lea ecx, [ebp - 0x4ae8]
call fcn.10020300
mov dword [ebp - 0x4e50], eax
mov edx, dword [ebp - 0x4e50]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d0ca
lea eax, [ebp - 0x3798]
push eax
call fcn.10090e20
add esp, 4
mov dword [ebp - 0x4e54], eax
cmp dword [ebp - 0x4e54], 0
jne 0x1001d0ca
lea ecx, [ebp - 0x37e8]
push ecx
mov ecx, dword [ebp - 0x4e38]
call sym.PfMgrApi.dll_public:_long_int___thiscall_CITProfileDbController::ProfileExists_char_const__
mov dword [ebp - 0x4e58], eax
mov edx, dword [ebp - 0x4e58]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x80043aa0
jne 0x1001d0a0
lea eax, [ebp - 0x3798]
push eax
lea ecx, [ebp - 0x37e8]
push ecx
mov ecx, dword [ebp - 0x4e38]
call sym.PfMgrApi.dll_public:_long_int___thiscall_CITProfileDbController::Update_char_const___struct__INTEL_WLAN_PROFILE_V120__
mov dword [ebp - 0x4e5c], eax
mov edx, dword [ebp - 0x4e5c]
mov dword [ebp - 0x14], edx
jmp 0x1001d0ca
push 0
lea eax, [ebp - 0x3798]
push eax
lea ecx, [ebp - 0x37e8]
push ecx
mov ecx, dword [ebp - 0x4e38]
call sym.PfMgrApi.dll_public:_long_int___thiscall_CITProfileDbController::Save_char_const___struct__INTEL_WLAN_PROFILE_V120___int_
mov dword [ebp - 0x4e60], eax
mov edx, dword [ebp - 0x4e60]
mov dword [ebp - 0x14], edx
push 0x41
push 0
lea eax, [ebp - 0x37e8]
push eax
call fcn.100cac20
add esp, 0xc
mov ecx, dword [ebp - 0x2824]
push ecx
lea edx, [ebp - 0x37e8]
push edx
lea ecx, [ebp - 0x4ae8]
call fcn.1001fc60
mov dword [ebp - 0x4e64], eax
mov eax, dword [ebp - 0x4e64]
mov dword [ebp - 0x14], eax
jmp 0x1001cfdd
lea ecx, [ebp - 0x3888]
push ecx
lea ecx, [ebp - 0x4ae8]
call fcn.10022240
mov dword [ebp - 0x4e68], eax
mov edx, dword [ebp - 0x4e68]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d1f0
lea eax, [ebp - 0x3798]
push eax
call fcn.1008d9a0
add esp, 4
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_char____thiscall_CPreferredProfile::Name_void_
mov dword [ebp - 0x4e6c], eax
lea ecx, [ebp - 0x3798]
push ecx
mov edx, dword [ebp - 0x4e6c]
push edx
lea ecx, [ebp - 0x4ae8]
call fcn.10020300
mov dword [ebp - 0x4e70], eax
mov eax, dword [ebp - 0x4e70]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d1ca
lea ecx, [ebp - 0x3798]
push ecx
call fcn.10090e20
add esp, 4
mov dword [ebp - 0x4e74], eax
cmp dword [ebp - 0x4e74], 0
jne 0x1001d1ca
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_char____thiscall_CPreferredProfile::Name_void_
mov dword [ebp - 0x4e78], eax
mov edx, dword [ebp - 0x4e78]
push edx
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public:_bool___thiscall_CProfileNameArray::Add_char_const__
lea eax, [ebp - 0x3888]
push eax
lea ecx, [ebp - 0x4ae8]
call fcn.100227a0
mov dword [ebp - 0x4e7c], eax
mov ecx, dword [ebp - 0x4e7c]
mov dword [ebp - 0x14], ecx
jmp 0x1001d12b
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public:_unsigned_int___thiscall_CProfileNameArray::Size_void_const
mov dword [ebp - 0x4e80], eax
cmp dword [ebp - 0x4e80], 0
jbe 0x1001d22b
lea edx, [ebp - 0x39b4]
push edx
mov ecx, dword [ebp - 0x4e38]
call sym.PfMgrApi.dll_public:_long_int___thiscall_CITProfileDbController::SavePersistentList_class_CProfileNameArray__
mov dword [ebp - 0x4e84], eax
mov eax, dword [ebp - 0x4e84]
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x3888]
push ecx
lea ecx, [ebp - 0x4ae8]
call fcn.10022140
mov dword [ebp - 0x4e88], eax
mov edx, dword [ebp - 0x4e88]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d311
lea eax, [ebp - 0x3798]
push eax
call fcn.1008d9a0
add esp, 4
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_char____thiscall_CPreferredProfile::Name_void_
mov dword [ebp - 0x4e8c], eax
lea ecx, [ebp - 0x3798]
push ecx
mov edx, dword [ebp - 0x4e8c]
push edx
lea ecx, [ebp - 0x4ae8]
call fcn.10020300
mov dword [ebp - 0x4e90], eax
mov eax, dword [ebp - 0x4e90]
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d2eb
lea ecx, [ebp - 0x3798]
push ecx
call fcn.10090e20
add esp, 4
mov dword [ebp - 0x4e94], eax
cmp dword [ebp - 0x4e94], 0
jne 0x1001d2eb
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_char____thiscall_CPreferredProfile::Name_void_
mov dword [ebp - 0x4e98], eax
mov edx, dword [ebp - 0x4e98]
push edx
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public:_bool___thiscall_CProfileNameArray::Add_char_const__
lea eax, [ebp - 0x3888]
push eax
lea ecx, [ebp - 0x4ae8]
call fcn.10022680
mov dword [ebp - 0x4e9c], eax
mov ecx, dword [ebp - 0x4e9c]
mov dword [ebp - 0x14], ecx
jmp 0x1001d24c
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public:_unsigned_int___thiscall_CProfileNameArray::Size_void_const
mov dword [ebp - 0x4ea0], eax
cmp dword [ebp - 0x4ea0], 0
jbe 0x1001d34c
lea edx, [ebp - 0x39c8]
push edx
mov ecx, dword [ebp - 0x4e38]
call sym.PfMgrApi.dll_public:_long_int___thiscall_CITProfileDbController::SavePreLogonList_class_CProfileNameArray__
mov dword [ebp - 0x4ea4], eax
mov eax, dword [ebp - 0x4ea4]
mov dword [ebp - 0x14], eax
lea ecx, [ebp - 0x3888]
push ecx
lea ecx, [ebp - 0x4ae8]
call fcn.10022040
mov dword [ebp - 0x4ea8], eax
mov edx, dword [ebp - 0x4ea8]
mov dword [ebp - 0x14], edx
cmp dword [ebp - 0x14], 0x43297
jne 0x1001d3bc
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_char____thiscall_CPreferredProfile::Name_void_
mov dword [ebp - 0x4eac], eax
mov eax, dword [ebp - 0x4eac]
push eax
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public:_bool___thiscall_CProfileNameArray::Add_char_const__
lea ecx, [ebp - 0x3888]
push ecx
lea ecx, [ebp - 0x4ae8]
call fcn.10022560
mov dword [ebp - 0x4eb0], eax
mov edx, dword [ebp - 0x4eb0]
mov dword [ebp - 0x14], edx
jmp 0x1001d36d
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public:_unsigned_int___thiscall_CProfileNameArray::Size_void_const
mov dword [ebp - 0x4eb4], eax
cmp dword [ebp - 0x4eb4], 0
jbe 0x1001d3f7
lea eax, [ebp - 0x2944]
push eax
mov ecx, dword [ebp - 0x4e38]
call sym.PfMgrApi.dll_public:_long_int___thiscall_CITProfileDbController::SavePostLogonList_class_CProfileNameArray__
mov dword [ebp - 0x4eb8], eax
mov ecx, dword [ebp - 0x4eb8]
mov dword [ebp - 0x14], ecx
lea edx, [ebp - 0x3ad0]
push edx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea eax, [ebp - 0x3998]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
lea ecx, [ebp - 0x2930]
push ecx
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x4ae8]
call fcn.1001f380
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x4b04]
call fcn.1000bdb0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x4af4]
call fcn.1000bdb0
jmp 0x1001d47a
mov dword [ebp - 4], 3
mov dword [ebp - 0x4e34], 0x43297
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x2944]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x39c8]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x39b4]
call sym.PfMgrApi.dll_public_virtual:_void___thiscall_CProfileNameArray::destructor_void_
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x3888]
call sym.PfMgrApi.dll_public:_void___thiscall_CPreferredProfile::destructor_void_
mov eax, dword [ebp - 0x4e34]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x20]
xor ecx, ebp
call fcn.100ca7f5
mov esp, ebp
pop ebp
ret 8