Function at 0x4c9beb
Capabilities:
Get common file path
Read .ini file
Set current directory

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x59f598
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x3bc
push esi
push edi
mov dword [ebp - 0x354], ecx
lea ecx, [ebp - 0x288]
call dword [sym.imp.GDISPLAY.dll_public:_void___thiscall_ReferenceSystem::constructor_void_]
call fcn.0040fa80
mov dword [ebp - 0x148], eax
lea ecx, [ebp - 0x18]
call sub.MFC42.DLL_CString::CString
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x150]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x298]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x204]
call sub.MFC42.DLL_CString::CString
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1f0]
call sub.MFC42.DLL_CStdioFile::CStdioFile
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1f8]
call fcn.0042ca80
mov byte [ebp - 4], 5
mov dword [ebp - 0x10], 0
mov dword [ebp - 0x290], 0
mov dword [ebp - 0x14c], 0
mov eax, dword [ebp - 0x354]
mov esi, dword [eax + 0xd4]
add esi, 0x290
mov ecx, 0x20
lea edi, [ebp - 0x288]
rep movsd dword es:[edi], dword [esi]
cmp dword [ebp + 8], 0
jne 0x4c9d01
call fcn.0040fa80
cmp dword [eax + 0x11c], 3
je 0x4c9d01
push 0xffffffffffffffff
push 0
push 0
push 0
push str.FIDIA_WS_LOWPRIVILEGE
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0x80]
push edx
call fcn.00436ac0
add esp, 0x10
jmp 0x4cb1ce
lea ecx, [ebp - 0x1f8]
call fcn.0042cb10
push 1
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
call fcn.00408c06
push str.MXTEST
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd4]
add edx, 0x530
push edx
call fcn.0040adf0
and eax, 0xff
test eax, eax
je 0x4c9d62
push str.Graphic_Test
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd0]
push ecx
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 8
jmp 0x4c9d90
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd4]
mov ecx, dword [eax + 0x530]
push ecx
push str.Disp_:__s
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd0]
push eax
call dword [sym.imp.MSVCRT.dll_sprintf]
add esp, 0xc
push 5
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd0]
mov ecx, dword [edx + 0x140]
call sub.MFC42.DLL_CWnd::ShowWindow
push 0
push 0
push 0
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
add ecx, 0x310
push ecx
lea edx, [ebp - 0x288]
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
add ecx, 0x28
call dword [sym.imp.GDISPLAY.dll_public:_void___thiscall_Object::Rotate_class_ReferenceSystem___class_ReferenceSystem___enum_Axis__double_]
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd4]
mov dword [edx + 0x10], 0
lea eax, [ebp - 0x144]
push eax
push 0x12c
call dword [sym.imp.KERNEL32.dll_GetCurrentDirectoryA]
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
call fcn.00405b20
add eax, 0x484
push eax
lea ecx, [ebp - 0x150]
call fcn.0058dfec
push str.PROGRAM_
lea ecx, [ebp - 0x150]
call fcn.0058e586
lea ecx, [ebp - 0x150]
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push 0x5f3bd0
push 0
push str.PPTest
call fcn.0040acc0
mov ecx, eax
add ecx, 0x108
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov dword [ebp - 0x1f4], eax
cmp dword [ebp - 0x1f4], 0
jne 0x4c9ef8
push 0x2c0
call fcn.00403600
mov dword [ebp - 0x2ac], eax
mov byte [ebp - 4], 6
cmp dword [ebp - 0x2ac], 0
je 0x4c9eba
push 0
push str.All_Files__._.ISO_Files__.iso_.iso
push 6
push 0
push 0
push 1
mov ecx, dword [ebp - 0x2ac]
call fcn.0045d34a
mov dword [ebp - 0x358], eax
jmp 0x4c9ec4
mov dword [ebp - 0x358], 0
mov edx, dword [ebp - 0x358]
mov dword [ebp - 0x2a8], edx
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x2a8]
mov dword [ebp - 0x200], eax
mov ecx, dword [ebp - 0x200]
add ecx, 0x200
push ecx
mov ecx, dword [ebp - 0x354]
call fcn.004cc588
cmp dword [ebp - 0x1f4], 0
jne 0x4c9f1e
mov edx, dword [ebp - 0x200]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x200]
call dword [eax + 0xc0]
cmp eax, 1
jne 0x4cb1ce
push 0xe0
mov ecx, dword [ebp - 0x354]
call fcn.004c4055
mov ecx, dword [ebp - 0x200]
add ecx, 0x200
push ecx
mov ecx, dword [ebp - 0x354]
call fcn.004cc7ad
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0xd0]
call dword [sym.imp.GDISPLAY.dll_public:_void___thiscall_CGraphDisplay::HideColorCode_void_]
mov ecx, dword [ebp - 0x354]
call fcn.004cd010
cmp dword [ebp - 0x1f4], 0
je 0x4ca025
push 0x5f3c14
push 0x80
lea eax, [ebp - 0x1dc]
push eax
push str.0.25
push str.PPTTolMicron
call fcn.0040acc0
mov ecx, eax
add ecx, 0x108
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x1dc]
push ecx
call dword [sym.imp.MSVCRT.dll_atof]
add esp, 4
fstp dword [ebp - 0x2a4]
push 0x40000000
push 0
fld dword [ebp - 0x2a4]
sub esp, 8
fstp qword [esp]
call sub.MSVCRT.dll_pow
add esp, 0x10
fdiv qword [0x5b09b0]
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd4]
fstp qword [eax + 0x860]
push 0x5f3c38
push 7
push str.PPTNumLevels
call fcn.0040acc0
mov ecx, eax
add ecx, 0x108
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileIntA]
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd4]
mov word [edx + 0x870], ax
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd0]
mov ecx, dword [ecx + 0x12c]
call sub.MFC42.DLL_CCmdTarget::BeginWaitCursor
cmp dword [ebp - 0x1f4], 0
jne 0x4ca090
lea edx, [ebp - 0x2b0]
push edx
mov ecx, dword [ebp - 0x200]
call sub.MFC42.DLL_CFileDialog::GetFileName
mov dword [ebp - 0x35c], eax
mov eax, dword [ebp - 0x35c]
mov dword [ebp - 0x360], eax
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x360]
push ecx
lea ecx, [ebp - 0x298]
call fcn.0058dfec
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2b0]
call fcn.0058df86
jmp 0x4ca0d6
push 0x5f3c54
push 0x80
lea edx, [ebp - 0x1dc]
push edx
push 0x5f3c60
push str.PPTFileISO
call fcn.0040acc0
mov ecx, eax
add ecx, 0x108
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea eax, [ebp - 0x1dc]
push eax
lea ecx, [ebp - 0x298]
call fcn.0058e0f4
push 0
push 0x4040
lea ecx, [ebp - 0x298]
call fcn.00403d90
push eax
lea ecx, [ebp - 0x1f0]
call sub.MFC42.DLL_CStdioFile::Open
test eax, eax
je 0x4ca109
lea ecx, [ebp - 0x18]
push ecx
lea ecx, [ebp - 0x1f0]
call sub.MFC42.DLL_CStdioFile::ReadString_1
jmp 0x4ca13a
push 0xffffffffffffffff
push 0
push 0
push 0
push str.FIDIA_WINGRAPH_NOTOPENING
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
push eax
call fcn.00436ac0
add esp, 0x10
jmp 0x4cb1ce
push 0
push 1
push 0
push str.FIDIA_WS_ENTERISO
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x158], ax
mov ax, word [ebp - 0x158]
push eax
push 0x2710
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
call fcn.00506eb7
mov dword [ebp - 0x14], eax
cmp dword [ebp - 0x14], 0
jne 0x4ca1ce
push 0
push 0
push 0
push 0
push 0x5f3ca4
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
call fcn.00488a88
jmp 0x4cb1ce
mov ecx, dword [ebp - 0x14]
call fcn.005091d4
cmp eax, 1
je 0x4ca278
push 0
push 0
push 0
push 0
push str.FIDIA_WS_ISOREFUSED
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.00488a88
mov cx, word [ebp - 0x158]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x28]
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x2b8], ecx
mov edx, dword [ebp - 0x2b8]
mov dword [ebp - 0x2b4], edx
cmp dword [ebp - 0x2b4], 0
je 0x4ca269
push 1
mov eax, dword [ebp - 0x2b4]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2b4]
call dword [edx + 4]
mov dword [ebp - 0x364], eax
jmp 0x4ca273
mov dword [ebp - 0x364], 0
jmp 0x4cb1ce
mov ax, word [ebp - 0x158]
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.004a42bc
push 0xdc
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [ebp - 0x2c0], eax
mov byte [ebp - 4], 8
cmp dword [ebp - 0x2c0], 0
je 0x4ca2e6
mov ecx, dword [ebp - 0x2c0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBarState::constructor_void_]
mov dword [ebp - 0x368], eax
jmp 0x4ca2f0
mov dword [ebp - 0x368], 0
mov ecx, dword [ebp - 0x368]
mov dword [ebp - 0x2bc], ecx
mov byte [ebp - 4], 5
mov edx, dword [ebp - 0x2bc]
mov dword [ebp - 0x290], edx
push 0
mov eax, dword [ebp - 0x290]
push eax
call fcn.0040fa80
mov ecx, dword [eax + 0xe4]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::SetState_class_CSoftkeyBarState___int_]
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0x80]
mov eax, dword [ebp - 0x290]
mov dword [edx + 0x4e0], eax
mov dword [ebp - 0x208], 0
jmp 0x4ca359
mov ecx, dword [ebp - 0x208]
add ecx, 1
mov dword [ebp - 0x208], ecx
cmp dword [ebp - 0x208], 8
jge 0x4ca3bc
push 0x600680
push 0x600684
mov edx, dword [ebp - 0x208]
push edx
call fcn.0040fa80
mov ecx, dword [eax + 0xe4]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::SetButtonText_int__char_const___char_const__]
push 0
push 0
mov eax, dword [ebp - 0x208]
push eax
call fcn.0040fa80
mov ecx, dword [eax + 0xe4]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::SetButtonPress_int__int__int_]
push 0
mov ecx, dword [ebp - 0x208]
push ecx
call fcn.0040fa80
mov ecx, dword [eax + 0xe4]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::EnableKey_int__int_]
jmp 0x4ca34a
push 0xdc
call sub.MFC42.DLL_operatornew
add esp, 4
mov dword [ebp - 0x2c8], eax
mov byte [ebp - 4], 9
cmp dword [ebp - 0x2c8], 0
je 0x4ca3f0
mov ecx, dword [ebp - 0x2c8]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBarState::constructor_void_]
mov dword [ebp - 0x36c], eax
jmp 0x4ca3fa
mov dword [ebp - 0x36c], 0
mov edx, dword [ebp - 0x36c]
mov dword [ebp - 0x2c4], edx
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x2c4]
mov dword [ebp - 0x10], eax
push 1
mov ecx, dword [ebp - 0x10]
push ecx
call fcn.0040fa80
mov ecx, dword [eax + 0xe0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::SetState_class_CSoftkeyBarState___int_]
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov ecx, dword [ebp - 0x10]
mov dword [eax + 0x4dc], ecx
push 0xc
call fcn.00403600
mov dword [ebp - 0x2d0], eax
mov byte [ebp - 4], 0xa
cmp dword [ebp - 0x2d0], 0
je 0x4ca46d
mov ecx, dword [ebp - 0x2d0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CFidiaMenu::constructor_void_]
mov dword [ebp - 0x370], eax
jmp 0x4ca477
mov dword [ebp - 0x370], 0
mov edx, dword [ebp - 0x370]
mov dword [ebp - 0x2cc], edx
mov byte [ebp - 4], 5
mov eax, dword [ebp - 0x2cc]
mov dword [ebp - 0x14c], eax
push 0xcf
mov ecx, dword [ebp - 0x14c]
call fcn.0043cde0
mov ecx, dword [ebp - 0x14c]
push ecx
call fcn.0040fa80
mov ecx, dword [eax + 0xe0]
call dword [sym.imp.FIDIASK.dll_public:_void___thiscall_CSoftkeyBar::SetMenu_class_CMenu__]
push 0
lea edx, [ebp - 0x18]
push edx
push 1
push 0
push str.FIDIA_WS_EXECISO
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
lea ecx, [ebp - 0x2d4]
call sub.MFC42.DLL_CString::CString_1
mov dword [ebp - 0x374], eax
mov eax, dword [ebp - 0x374]
mov dword [ebp - 0x378], eax
mov byte [ebp - 4], 0xb
mov ecx, dword [ebp - 0x378]
push ecx
lea edx, [ebp - 0x2d8]
push edx
call sub.MFC42.DLL_operator_1
mov dword [ebp - 0x37c], eax
mov eax, dword [ebp - 0x37c]
mov dword [ebp - 0x380], eax
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x380]
call fcn.00403d90
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x158], ax
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x2d8]
call fcn.0058df86
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2d4]
call fcn.0058df86
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
mov edx, dword [ecx + 0x5bc]
add edx, 1
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
mov dword [ecx + 0x5bc], edx
push 0
mov dx, word [ebp - 0x158]
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x5c4
call fcn.004615c0
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0x80]
mov dword [edx + 0x5e0], 0
push 1
mov ax, word [ebp - 0x158]
push eax
push 0x2bf20
lea ecx, [ebp - 0x18]
call fcn.00403d90
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
call fcn.00506fbb
mov dword [ebp - 0x2a0], eax
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov ecx, dword [eax + 0x5bc]
sub ecx, 1
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov dword [eax + 0x5bc], ecx
mov cx, word [ebp - 0x158]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x5c4
call sub.MFC42.DLL_CMapWordToPtr::RemoveKey
cmp dword [ebp - 0x2a0], 0
jne 0x4ca67c
push 0
push 0
push 0
push 0
push str.FIDIA_WS_TIMEOUT
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.00488a88
jmp 0x4ca746
mov ecx, dword [ebp - 0x2a0]
call fcn.005091d4
cmp eax, 3
jne 0x4ca700
mov ecx, dword [ebp - 0x2a0]
mov dword [ebp - 0x2e0], ecx
mov edx, dword [ebp - 0x2e0]
mov dword [ebp - 0x2dc], edx
cmp dword [ebp - 0x2dc], 0
je 0x4ca6c8
push 1
mov eax, dword [ebp - 0x2dc]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2dc]
call dword [edx + 4]
mov dword [ebp - 0x384], eax
jmp 0x4ca6d2
mov dword [ebp - 0x384], 0
mov ax, word [ebp - 0x158]
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
jmp 0x4cb1ce
mov eax, dword [ebp - 0x2a0]
mov dword [ebp - 0x2e8], eax
mov ecx, dword [ebp - 0x2e8]
mov dword [ebp - 0x2e4], ecx
cmp dword [ebp - 0x2e4], 0
je 0x4ca73c
push 1
mov edx, dword [ebp - 0x2e4]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x2e4]
call dword [eax + 4]
mov dword [ebp - 0x388], eax
jmp 0x4ca746
mov dword [ebp - 0x388], 0
mov cx, word [ebp - 0x158]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x28]
mov ecx, dword [ebp - 0x354]
cmp dword [ecx + 0x148], 0
je 0x4ca783
jmp 0x4cb1ce
push 0
push str.Executing_batch_START
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x24]
mov word [ebp - 0x158], ax
mov cx, word [ebp - 0x158]
push ecx
push 0x2710
push 0
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
call fcn.0050710a
mov dword [ebp - 0x15c], eax
cmp dword [ebp - 0x15c], 0
jne 0x4ca82c
push 0
push 0
push str.____Refused_to_enter_batch_auto_mode
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.00488a88
mov cx, word [ebp - 0x158]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x28]
jmp 0x4cb1ce
mov ecx, dword [ebp - 0x15c]
mov dword [ebp - 0x2f0], ecx
mov edx, dword [ebp - 0x2f0]
mov dword [ebp - 0x2ec], edx
cmp dword [ebp - 0x2ec], 0
je 0x4ca868
push 1
mov eax, dword [ebp - 0x2ec]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x2ec]
call dword [edx + 4]
mov dword [ebp - 0x38c], eax
jmp 0x4ca872
mov dword [ebp - 0x38c], 0
mov ax, word [ebp - 0x158]
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
mov ecx, dword [ebp - 0x354]
call fcn.004c92e1
push 0xe0
mov ecx, dword [ebp - 0x354]
call fcn.004c4055
push 0x10
call fcn.00403600
mov dword [ebp - 0x2f8], eax
mov byte [ebp - 4], 0xd
cmp dword [ebp - 0x2f8], 0
je 0x4ca8e3
mov ecx, dword [ebp - 0x2f8]
call sub.MFC42.DLL_CFile::CFile_1
mov dword [ebp - 0x390], eax
jmp 0x4ca8ed
mov dword [ebp - 0x390], 0
mov eax, dword [ebp - 0x390]
mov dword [ebp - 0x2f4], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2f4]
mov dword [ebp - 0x294], ecx
push 0x5f3d34
push 0x2e
lea ecx, [ebp - 0x298]
call sub.MFC42.DLL_CString::ReverseFind
add eax, 1
push eax
lea edx, [ebp - 0x2fc]
push edx
lea ecx, [ebp - 0x298]
call sub.MFC42.DLL_CString::Left
mov dword [ebp - 0x394], eax
mov eax, dword [ebp - 0x394]
mov dword [ebp - 0x398], eax
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x398]
push ecx
lea edx, [ebp - 0x300]
push edx
call sub.MFC42.DLL_operator
mov dword [ebp - 0x39c], eax
mov eax, dword [ebp - 0x39c]
mov dword [ebp - 0x3a0], eax
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x3a0]
push ecx
lea ecx, [ebp - 0x204]
call fcn.0058dfec
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x300]
call fcn.0058df86
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x2fc]
call fcn.0058df86
push 0
push 0x1041
lea ecx, [ebp - 0x204]
call fcn.00403d90
push eax
mov edx, dword [ebp - 0x294]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x294]
call dword [eax + 0x28]
push 0
push 0x600688
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x29c], ax
push 0
push 0x60068c
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x1fc], ax
push 0
mov eax, dword [ebp - 0x294]
push eax
push 0
mov cx, word [ebp - 0x1fc]
push ecx
mov dx, word [ebp - 0x29c]
push edx
push 0xffffffffffffffff
push 0
push 0
push 0
lea ecx, [ebp - 0x204]
call fcn.00403d90
push eax
push 0x64
push 0x5f3d38
push 0x190
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
call fcn.0050f2dd
mov dword [ebp - 0x28c], eax
cmp dword [ebp - 0x28c], 0
je 0x4caa8f
mov ecx, dword [ebp - 0x28c]
mov dword [ecx + 0x1c], 1
jmp 0x4caaeb
mov edx, dword [ebp - 0x294]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x294]
call dword [eax + 0x54]
mov ecx, dword [ebp - 0x294]
mov dword [ebp - 0x308], ecx
mov edx, dword [ebp - 0x308]
mov dword [ebp - 0x304], edx
cmp dword [ebp - 0x304], 0
je 0x4caadc
push 1
mov eax, dword [ebp - 0x304]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x304]
call dword [edx + 4]
mov dword [ebp - 0x3a4], eax
jmp 0x4caae6
mov dword [ebp - 0x3a4], 0
jmp 0x4cb1ce
push 0
push 0x5f3d40
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x158], ax
mov ax, word [ebp - 0x158]
push eax
push 0x2710
push 4
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
call fcn.0050710a
mov dword [ebp - 0x15c], eax
mov dx, word [ebp - 0x158]
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x310], eax
mov ecx, dword [ebp - 0x310]
mov dword [ebp - 0x30c], ecx
cmp dword [ebp - 0x30c], 0
je 0x4caba8
push 1
mov edx, dword [ebp - 0x30c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x30c]
call dword [eax + 4]
mov dword [ebp - 0x3a8], eax
jmp 0x4cabb2
mov dword [ebp - 0x3a8], 0
push 0
push 1
push 0
push str.FIDIA_WS_FILECOPY
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x29c], ax
push 0
push 1
push 0
push str.FIDIA_WS_STARTINGSESSION
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x1fc], ax
push 0
push 0
push 0
mov ax, word [ebp - 0x1fc]
push eax
mov cx, word [ebp - 0x29c]
push ecx
push 0x1d4c0
push 0
push 0
push 0
push 0x5f3d88
push 0x12c
lea ecx, [ebp - 0x298]
call fcn.00403d90
push eax
push 0x64
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
call fcn.0050f2dd
mov dword [ebp - 0x154], eax
cmp dword [ebp - 0x154], 0
je 0x4cad6e
mov eax, dword [ebp - 0x154]
cmp dword [eax + 0x34], 2
jne 0x4cad6e
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x318], ecx
mov edx, dword [ebp - 0x318]
mov dword [ebp - 0x314], edx
cmp dword [ebp - 0x314], 0
je 0x4cacd2
push 1
mov ecx, dword [ebp - 0x314]
call fcn.0043cdb0
mov dword [ebp - 0x3ac], eax
jmp 0x4cacdc
mov dword [ebp - 0x3ac], 0
lea ecx, [ebp - 0x1f8]
call fcn.0042cb10
push 0
push 0
push 0
push 0
push str.FIDIA_WS_COPYREFUSED
call dword [sym.imp.LANGUAGE.dll_char_const____cdecl_ReadLanguageString_char_const___char_const___int_]
add esp, 0xc
push eax
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.00488a88
lea ecx, [ebp - 0x1f8]
call fcn.0042cac0
mov cx, word [ebp - 0x1fc]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x28]
mov cx, word [ebp - 0x29c]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x28]
jmp 0x4cadd7
mov ecx, dword [ebp - 0x154]
mov dword [ebp - 0x320], ecx
mov edx, dword [ebp - 0x320]
mov dword [ebp - 0x31c], edx
cmp dword [ebp - 0x31c], 0
je 0x4cada4
push 1
mov ecx, dword [ebp - 0x31c]
call fcn.0043cdb0
mov dword [ebp - 0x3b0], eax
jmp 0x4cadae
mov dword [ebp - 0x3b0], 0
mov ax, word [ebp - 0x1fc]
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.0044a190
cmp eax, 1
je 0x4cadfa
push 0x3e8
call fcn.00437020
add esp, 4
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
call fcn.0044a190
cmp eax, 1
je 0x4cae1d
push 0x3e8
call fcn.00437020
add esp, 4
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
call fcn.0044a190
cmp eax, 1
je 0x4cae40
push 0x3e8
call fcn.00437020
add esp, 4
push 0
push 0x5f3da8
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x158], ax
mov ax, word [ebp - 0x158]
push eax
push 0x2710
push 6
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
call fcn.0050710a
mov dword [ebp - 0x15c], eax
mov dx, word [ebp - 0x158]
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x328], eax
mov ecx, dword [ebp - 0x328]
mov dword [ebp - 0x324], ecx
cmp dword [ebp - 0x324], 0
je 0x4caefd
push 1
mov edx, dword [ebp - 0x324]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x324]
call dword [eax + 4]
mov dword [ebp - 0x3b4], eax
jmp 0x4caf07
mov dword [ebp - 0x3b4], 0
push 0
push str.Executing_batch_STOP
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x24]
mov word [ebp - 0x158], ax
mov ax, word [ebp - 0x158]
push eax
push 0x2710
push 1
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
call fcn.0050710a
mov dword [ebp - 0x15c], eax
cmp dword [ebp - 0x15c], 0
jne 0x4cafb0
push 0
push 0
push str.____Refused_to_exit_batch_auto_mode
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
call fcn.00488a88
mov ax, word [ebp - 0x158]
push eax
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0x80]
add ecx, 0x44
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov edx, dword [eax + 0x44]
call dword [edx + 0x28]
jmp 0x4cb1ce
mov eax, dword [ebp - 0x15c]
mov dword [ebp - 0x330], eax
mov ecx, dword [ebp - 0x330]
mov dword [ebp - 0x32c], ecx
cmp dword [ebp - 0x32c], 0
je 0x4cafec
push 1
mov edx, dword [ebp - 0x32c]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x32c]
call dword [eax + 4]
mov dword [ebp - 0x3b8], eax
jmp 0x4caff6
mov dword [ebp - 0x3b8], 0
mov cx, word [ebp - 0x158]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0x80]
add ecx, 0x44
mov eax, dword [ebp - 0x354]
mov edx, dword [eax + 0x80]
mov eax, dword [edx + 0x44]
call dword [eax + 0x28]
push 0xbb8
call fcn.00437020
add esp, 4
push 0
mov ecx, dword [ebp - 0x354]
mov ecx, dword [ecx + 0xd4]
call fcn.00408c06
push str.Not_active
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd0]
push eax
call sub.MSVCRT.dll_strcpy
add esp, 8
push 0
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd0]
mov ecx, dword [edx + 0x140]
call sub.MFC42.DLL_CWnd::ShowWindow
cmp dword [ebp - 0x1f4], 0
je 0x4cb0c8
push 0x5f3e04
push 0x80
lea eax, [ebp - 0x1dc]
push eax
lea ecx, [ebp - 0x298]
call fcn.00403d90
push eax
push str.PPTFileDGT
call fcn.0040acc0
mov ecx, eax
add ecx, 0x108
call fcn.00403d90
push eax
call dword [sym.imp.KERNEL32.dll_GetPrivateProfileStringA]
lea ecx, [ebp - 0x1dc]
push ecx
lea ecx, [ebp - 0x298]
call fcn.0058e0f4
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd4]
add eax, 0x534
push eax
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd4]
add edx, 0x48
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
add ecx, 0x2c
push ecx
lea edx, [ebp - 0x298]
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
call fcn.004067a4
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd4]
add edx, 0x538
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
add ecx, 0x80
push ecx
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd4]
add eax, 0x64
push eax
lea ecx, [ebp - 0x204]
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0xd4]
call fcn.004067a4
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd0]
mov dword [ecx + 0x20c], 2
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0xd0]
mov dword [eax + 0x210], 2
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0xd4]
add edx, 0x9c
push edx
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0xd4]
add ecx, 0x9c
push ecx
mov edx, dword [ebp - 0x354]
mov ecx, dword [edx + 0xd4]
call fcn.00409e06
mov ecx, dword [ebp - 0x354]
call fcn.004c8a67
cmp dword [ebp - 0x1f4], 0
jne 0x4cb21d
mov eax, dword [ebp - 0x200]
mov dword [ebp - 0x338], eax
mov ecx, dword [ebp - 0x338]
mov dword [ebp - 0x334], ecx
cmp dword [ebp - 0x334], 0
je 0x4cb213
push 1
mov edx, dword [ebp - 0x334]
mov eax, dword [edx]
mov ecx, dword [ebp - 0x334]
call dword [eax + 4]
mov dword [ebp - 0x3bc], eax
jmp 0x4cb21d
mov dword [ebp - 0x3bc], 0
cmp dword [ebp - 0x14c], 0
je 0x4cb319
mov ecx, dword [ebp - 0x354]
mov edx, dword [ecx + 0x80]
mov eax, dword [edx + 0x4dc]
mov dword [ebp - 0x340], eax
mov ecx, dword [ebp - 0x340]
mov dword [ebp - 0x33c], ecx
cmp dword [ebp - 0x33c], 0
je 0x4cb26c
push 1
mov ecx, dword [ebp - 0x33c]
call fcn.004a6570
mov dword [ebp - 0x3c0], eax
jmp 0x4cb276
mov dword [ebp - 0x3c0], 0
mov edx, dword [ebp - 0x354]
mov eax, dword [edx + 0x80]
mov ecx, dword [eax + 0x4e0]
mov dword [ebp - 0x348], ecx
mov edx, dword [ebp - 0x348]
mov dword [ebp - 0x344], edx
cmp dword [ebp - 0x344], 0
je 0x4cb2b8
push 1
mov ecx, dword [ebp - 0x344]
call fcn.004a6570
mov dword [ebp - 0x3c4], eax
jmp 0x4cb2c2
mov dword [ebp - 0x3c4], 0
mov eax, dword [ebp - 0x354]
mov ecx, dword [eax + 0x80]
call fcn.004a43cc
mov ecx, dword [ebp - 0x14c]
mov dword [ebp - 0x350], ecx
mov edx, dword [ebp - 0x350]
mov dword [ebp - 0x34c], edx
cmp dword [ebp - 0x34c], 0
je 0x4cb30f
push 1
mov eax, dword [ebp - 0x34c]
mov edx, dword [eax]
mov ecx, dword [ebp - 0x34c]
call dword [edx + 4]
mov dword [ebp - 0x3c8], eax
jmp 0x4cb319
mov dword [ebp - 0x3c8], 0
lea eax, [ebp - 0x144]
push eax
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
lea ecx, [ebp - 0x1f8]
call fcn.0042cb10
mov ecx, dword [ebp - 0x354]
mov dword [ecx + 0x148], 0
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x1f8]
call fcn.0042caa0
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x1f0]
call fcn.0058e1a8
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x204]
call fcn.0058df86
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x298]
call fcn.0058df86
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x150]
call fcn.0058df86
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
call fcn.0058df86
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret 4