Function at 0x101d258
Capabilities:
Check if file exists
Get file attributes

Disassembly:
push 0xfc
mov eax, 0x104ae84
call fcn.010411e8
mov esi, 0x1001dc8
push esi
lea eax, [ebp + 8]
push eax
mov dword [ebp - 4], 1
call fcn.0101d1ad
test al, al
je 0x101d47e
push esi
lea ecx, [ebp - 0x14]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::constructor_unsigned_short_int_const__]
xor esi, esi
push esi
push 0x1001a0c
lea ecx, [ebp + 8]
mov byte [ebp - 4], 2
call dword [sym.imp.unbcl.dll_public:_int___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::Find_unsigned_short_int_const___int_const]
test eax, eax
jge 0x101d354
lea ecx, [ebp - 0x10]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::constructor_void_]
push esi
push 0x23
lea ecx, [ebp + 8]
mov byte [ebp - 4], 3
call dword [sym.imp.unbcl.dll_public:_int___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::Find_unsigned_short_int__int_const]
cmp eax, esi
jl 0x101d2f0
push eax
lea eax, [ebp - 0x20]
push eax
lea ecx, [ebp + 8]
call dword [sym.imp.unbcl.dll_public:_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int______thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::Left_int_]
push eax
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 4
call dword [sym.imp.unbcl.dll_public:_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int_______thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::operator_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int____const__]
lea ecx, [ebp - 0x20]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
jmp 0x101d2fd
lea eax, [ebp + 8]
push eax
lea ecx, [ebp - 0x10]
call dword [sym.imp.unbcl.dll_public:_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int_______thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::operator_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int____const__]
lea ecx, [ebp - 0x1c]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::constructor_void_]
lea ecx, [ebp - 0x18]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::constructor_void_]
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x1c]
push eax
lea eax, [ebp - 0x10]
push eax
mov byte [ebp - 4], 6
call fcn.0101cbec
test eax, eax
jne 0x101d335
lea eax, [ebp - 0x10]
push eax
lea ecx, [ebp - 0x14]
call dword [sym.imp.unbcl.dll_public:_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int_______thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::operator_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int____const__]
lea ecx, [ebp - 0x18]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
lea ecx, [ebp - 0x1c]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
lea ecx, [ebp - 0x10]
mov byte [ebp - 4], 2
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
mov eax, dword [ebp - 0x14]
cmp dword [eax - 0xc], esi
je 0x101d36c
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x101d475
cmp dword [ebp + 0xc], esi
je 0x101d3c4
push esi
push ecx
lea eax, [ebp + 8]
mov ecx, esp
mov dword [ebp + 0xc], esp
push eax
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::constructor_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int____const__]
lea ecx, [ebp - 0x108]
call fcn.0101cfbb
mov eax, dword [ebp + 0x10]
mov byte [ebp - 4], 7
cmp dword [eax - 0xc], esi
je 0x101d3a5
push eax
lea ecx, [ebp - 0x108]
call sub.MFC42u.dll_CWnd::SetWindowTextW
lea ecx, [ebp - 0x108]
call sub.MFC42u.dll_CDialog::DoModal
lea ecx, [ebp - 0x108]
mov byte [ebp - 4], 2
call fcn.0101cf79
jmp 0x101d475
mov ecx, dword [0x105aff4]
cmp ecx, esi
je 0x101d3e6
cmp dword [ecx + 0x20], esi
jne 0x101d3e2
mov eax, dword [ecx]
push 1
call dword [eax + 4]
xor ecx, ecx
mov dword [0x105aff4], ecx
cmp ecx, esi
jne 0x101d431
push pe_nt_image_headers32
call sub.MFC42u.dll_operatornew
pop ecx
mov ecx, eax
mov dword [ebp + 0xc], ecx
mov byte [ebp - 4], 8
cmp ecx, esi
je 0x101d405
call fcn.0101d04e
jmp 0x101d407
xor eax, eax
mov byte [ebp - 4], 2
mov dword [0x105aff4], eax
call sub.MFC42u.dll_AfxGetModuleState
mov eax, dword [eax + 4]
push dword [eax + 0x24]
mov ecx, dword [0x105aff4]
push 0x96
call sub.MFC42u.dll_CDialog::Create
mov ecx, dword [0x105aff4]
mov eax, dword [ebp + 0x10]
cmp dword [eax - 0xc], esi
je 0x101d43f
push eax
call sub.MFC42u.dll_CWnd::SetWindowTextW
push ecx
lea eax, [ebp + 8]
mov ecx, esp
mov dword [ebp + 0xc], esp
push eax
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::constructor_class_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int____const__]
mov ecx, dword [0x105aff4]
call fcn.0101d0cc
mov ecx, dword [0x105aff4]
push 5
call sub.MFC42u.dll_CWnd::ShowWindow
mov eax, dword [0x105aff4]
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_BringWindowToTop]
lea ecx, [ebp - 0x14]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
lea ecx, [ebp + 8]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
lea ecx, [ebp + 0x10]
call dword [sym.imp.unbcl.dll_public:_void___thiscall_ATL::CStringT_unsigned_short_int__class_ATL::StrTraitATL_unsigned_short_int__class_ATL::ChTraitsCRT_unsigned_short_int___::destructor_void_]
call fcn.010412d4
ret 0xc