Function at 0x43f3d0
Capabilities:
Check if file exists
Contain obfuscated stackstrings
Create process on windows
Encode data using base64
Get file attributes
Terminate process

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x488788
mov eax, dword fs:[0]
push eax
sub esp, 0x360
mov eax, dword [0x4c0e0c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0x248], edi
push 0x4426c0
mov dword [ebp - 0x230], 0
call dword [sym.imp.KERNEL32.dll_SetUnhandledExceptionFilter]
mov ebx, dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push str.AmCustButton.dll
call ebx
push 0x10e
lea eax, [ebp - 0x120]
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
test eax, eax
je 0x43f484
lea eax, [ebp - 0x120]
push 0x2e
push eax
call dword [sym.imp.VCRUNTIME140.dll_strrchr]
add esp, 8
test eax, eax
je 0x43f484
mov ecx, dword [str.LOC.dll]
mov dword [eax], ecx
mov ecx, dword [0x49a694]
mov dword [eax + 4], ecx
lea eax, [ebp - 0x120]
push eax
call ebx
mov esi, eax
mov dword [0x4c2e98], esi
test esi, esi
je 0x43f484
call sub.mfc140.dll_Ordinal_2241
mov dword [eax + 0xc], esi
lea eax, [ebp - 0x230]
mov dword [ebp - 0x22c], 0
push eax
lea eax, [ebp - 0x22c]
push eax
call fcn.00441020
mov ebx, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::destructor_void_]
add esp, 8
test eax, eax
je 0x43f5d1
cmp dword [ebp - 0x230], 0
je 0x43f4c2
xor eax, eax
jmp 0x440fd5
push 0xffffffffffffffff
push 4
push 6
call sub.mfc140.dll_Ordinal_2297
cmp eax, 7
jne 0x43f50f
push 0xffffffffffffffff
push 4
push 0x147
call sub.mfc140.dll_Ordinal_2297
cmp eax, 6
jne 0x43f5d1
push dword [ebp - 0x22c]
push 1
push 1
call dword [sym.imp.KERNEL32.dll_OpenProcess]
test eax, eax
je 0x43f5d1
push 1
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
jmp 0x43f5d1
push 0
push 0
push 0
push 1
push 0
lea ecx, [ebp - 0x36c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AProgressReporter::constructor_unsigned_int__int__unsigned_int__struct_HWND_____int_]
lea ecx, [ebp - 0x23c]
mov dword [ebp - 4], 0
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
push 0x145
lea ecx, [ebp - 0x23c]
mov byte [ebp - 4], 1
call dword [sym.imp.FSUTIL.dll_public:_int___thiscall_AString::LoadStringA_unsigned_int_]
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x22c]
push eax
call fcn.00441020
add esp, 8
test eax, eax
je 0x43f5b6
mov esi, dword [sym.imp.FSUTIL.dll_public:_int___thiscall_AProgressReporter::checkCancel_void_]
nop dword [eax]
lea ecx, [ebp - 0x36c]
call esi
test eax, eax
jne 0x43f5b6
push 0xffffffffffffffff
lea eax, [ebp - 0x23c]
push eax
lea ecx, [ebp - 0x36c]
call dword [sym.imp.FSUTIL.dll_public:_int___thiscall_AProgressReporter::setProgress_class_AString_const___int_]
push 0x3e8
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x230]
push eax
lea eax, [ebp - 0x22c]
push eax
call fcn.00441020
add esp, 8
test eax, eax
jne 0x43f570
lea ecx, [ebp - 0x23c]
call ebx
lea ecx, [ebp - 0x36c]
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.FSUTIL.dll_public_virtual:_void___thiscall_AProgressReporter::destructor_void_]
lea ecx, [ebp - 0x324]
call fcn.0043d2e0
lea eax, [ebp - 0x324]
mov dword [ebp - 4], 2
push eax
mov ecx, edi
call sub.mfc140.dll_Ordinal_11972
lea ecx, [ebp - 0x324]
call fcn.00441280
test eax, eax
je 0x43f613
lea ecx, [ebp - 0x324]
call fcn.0043f3b0
push eax
mov ecx, edi
call fcn.004433e0
push 0
call fcn.00477270
mov esi, eax
add esp, 4
mov dword [ebp - 0x22c], esi
test esi, esi
je 0x440ef1
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x4c]
mov dword [ebp - 0x240], eax
cmp eax, 0x100000
jne 0x43f8bc
call fcn.00443880
test eax, eax
je 0x440fc6
push str.EXIT_ON_NEW_OS
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
mov eax, dword [esi]
lea ecx, [ebp - 0x228]
push ecx
mov ecx, esi
mov byte [ebp - 4], 5
mov dword [ebp - 0x230], 1
call dword [eax + 0x20]
test eax, eax
je 0x43f694
call dword [sym.imp.FSUTIL.dll_int___cdecl_isOSTooNew_void_]
mov byte [ebp - 0x221], 1
test eax, eax
jne 0x43f69b
mov byte [ebp - 0x221], 0
lea ecx, [ebp - 0x228]
mov dword [ebp - 4], 2
call ebx
cmp byte [ebp - 0x221], 0
jne 0x440fc6
lea ecx, [ebp - 0x280]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
lea eax, [ebp - 0x280]
mov byte [ebp - 4], 6
push eax
call fcn.0041de00
add esp, 4
lea ecx, [ebp - 0x228]
push str.FX_CLOUD_SYNC
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 7
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x228]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 6
mov esi, eax
call ebx
test esi, esi
je 0x43f738
push 1
push dword [ebp - 0x280]
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_atoi]
add esp, 4
push eax
call dword [sym.imp.FSUTIL.dll_int___cdecl_startCheckForUpdate_int__int_]
add esp, 8
test eax, eax
jne 0x43f8ad
mov esi, dword [ebp - 0x22c]
push 0
push 0x4c0f10
push 0x4c0ef4
push 0
push esi
call sub.VCRUNTIME140.dll___RTDynamicCast
add esp, 0x14
test eax, eax
jne 0x43f767
push 0x1001
call dword [sym.imp.SAiCloud.dll_int___cdecl_InitCloud_unsigned_long_int_]
add esp, 4
push str.INSTALL_DESIGN_ONLY
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
mov eax, dword [esi]
lea ecx, [ebp - 0x228]
push ecx
mov ecx, esi
mov byte [ebp - 4], 8
call dword [eax + 0x20]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 6
mov esi, eax
call ebx
test esi, esi
jne 0x43f8ad
push str.SentinelKeyActivator.dll
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
push 0x1001
mov ecx, edi
call dword [sym.imp.PMCORE.dll_protected:_int___thiscall_ABaseApp::Initialize_unsigned_short_int_]
push 1
mov ecx, edi
mov dword [ebp - 0x23c], eax
call fcn.0043ddf0
test eax, eax
je 0x43f8ad
push dword [edi + 0x50]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
lea esi, [edi + 0xe2c]
mov ecx, esi
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__strdup]
mov ecx, esp
mov dword [edi + 0x50], eax
push esi
call dword [sym.imp.mfc140.dll_Ordinal_300]
call sub.PMResource.dll_void___cdecl_PMSetAppTitle_class_ATL::CStringT_char__class_StrTraitMFC_DLL_char__class_ATL::ChTraitsCRT_char____
add esp, 4
lea ecx, [ebp - 0x228]
push str.PM_Allow_Multiple_Runs
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
mov esi, dword [ebp - 0x22c]
lea ecx, [ebp - 0x228]
push ecx
mov ecx, esi
mov byte [ebp - 4], 9
mov dword [ebp - 0x230], 2
mov eax, dword [esi]
call dword [eax + 0x20]
test eax, eax
jne 0x43f850
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x98]
mov byte [ebp - 0x221], 1
test eax, eax
je 0x43f857
mov byte [ebp - 0x221], 0
lea ecx, [ebp - 0x228]
mov dword [ebp - 4], 6
call ebx
cmp byte [ebp - 0x221], 0
je 0x43f8df
push 0
lea eax, [edi + 0xf4]
push eax
call dword [sym.imp.USER32.dll_FindWindowA]
mov esi, eax
test esi, esi
jne 0x43f89d
call fcn.00443850
mov esi, eax
test esi, esi
je 0x43f8df
push 0xffffffffffffffff
push 0x10
push 0x148
call sub.mfc140.dll_Ordinal_2297
push esi
call dword [sym.imp.USER32.dll_SetForegroundWindow]
push 5
push esi
call dword [sym.imp.USER32.dll_ShowWindow]
lea ecx, [ebp - 0x280]
xor esi, esi
call ebx
jmp 0x440fc8
test eax, eax
je 0x43f652
cmp eax, 0x1000000
je 0x440fbd
cmp eax, 0x2000000
je 0x440fbd
jmp 0x440efb
call dword [sym.imp.FSUTIL.dll_int___cdecl_isWindowsXP_void_]
test eax, eax
je 0x43f998
lea ecx, [ebp - 0x22c]
call dword [sym.imp.mfc140.dll_Ordinal_316]
movsx eax, word [edi + 0xd6]
push eax
lea eax, [ebp - 0x22c]
mov byte [ebp - 4], 0xa
push str.GlobalScanvecAmiable__d
push eax
call dword [sym.imp.mfc140.dll_Ordinal_4807]
lea eax, [ebp - 0x22c]
push eax
call fcn.0043d4c0
add esp, 0x10
test eax, eax
je 0x43f988
lea ecx, [ebp - 0x230]
call dword [sym.imp.mfc140.dll_Ordinal_316]
push 0xc9
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0xb
call dword [sym.imp.mfc140.dll_Ordinal_8426]
push 0
push 0
lea ecx, [ebp - 0x230]
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
call sub.mfc140.dll_Ordinal_2298
lea ecx, [ebp - 0x230]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x22c]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x280]
xor esi, esi
call ebx
jmp 0x440fc8
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 6
call dword [sym.imp.mfc140.dll_Ordinal_1044]
push str.Amiable
mov ecx, edi
call sub.mfc140.dll_Ordinal_13830
push dword [edi + 0x6c]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
add esp, 4
lea ecx, [ebp - 0x27c]
push str.Production_
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
lea ecx, [ebp - 0x288]
mov byte [ebp - 4], 0xc
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
movsx eax, word [edi + 0xd6]
push eax
lea eax, [ebp - 0x288]
mov byte [ebp - 4], 0xd
push 0x491888
push eax
call dword [sym.imp.FSUTIL.dll_public:_class_AString____cdecl_AString::Format_char_const__]
add esp, 0xc
lea eax, [ebp - 0x288]
lea ecx, [ebp - 0x27c]
push eax
call dword [sym.imp.FSUTIL.dll_public:_class_AString_const____thiscall_AString::operator_class_AString_const__]
push dword [ebp - 0x27c]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__strdup]
add esp, 4
mov dword [edi + 0x6c], eax
lea eax, [edi + 0xe2c]
lea ecx, [edi + 0xe30]
push eax
call dword [sym.imp.mfc140.dll_Ordinal_1526]
push 0
call sub.mfc140.dll_Ordinal_2200
add esp, 4
call sub.mfc140.dll_Ordinal_2301
test eax, eax
je 0x440ed2
push 0
call dword [sym.imp.USER32.dll_GetDC]
mov esi, dword [sym.imp.GDI32.dll_GetDeviceCaps]
mov ebx, eax
push 0xe
push ebx
call esi
push 0xc
push ebx
mov edi, eax
call esi
cmp eax, 0x20
mov ecx, 0x18
mov edx, 1
cmove eax, ecx
imul eax, edi
mov edi, dword [ebp - 0x248]
push ebx
push 0
mov ecx, eax
shl edx, cl
mov dword [edi + 0xe4], edx
call dword [sym.imp.USER32.dll_ReleaseDC]
cmp dword [ebp - 0x23c], 0
je 0x43fbba
lea ecx, [ebp - 0x2b8]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_APtrList::constructor_void_]
push str.Icon_Filenames
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0xe
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0xf
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x2b8]
mov edx, dword [eax]
push ecx
lea ecx, [ebp - 0x228]
push ecx
mov ecx, eax
call dword [edx + 0x14]
mov ebx, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::destructor_void_]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0xe
call ebx
mov eax, dword [ebp - 0x2b0]
lea ecx, [ebp - 0x234]
mov esi, dword [eax + 8]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
push str.AppData
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0x10
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
push str.AppIcons
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
push esi
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_class_AString_const__]
push dword [ebp - 0x234]
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x43fb7e
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::GetApplDir_void_]
mov esi, dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x234]
push str.AppData
call esi
push str.AppIcons
lea ecx, [ebp - 0x234]
call esi
push str.DefaultPM.ico
lea ecx, [ebp - 0x234]
call esi
push 1
lea eax, [edi + 0xe40]
push eax
lea eax, [edi + 0xe44]
push eax
push 0
push dword [ebp - 0x234]
call dword [sym.imp.SHELL32.dll_ExtractIconExA]
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 4], 0xd
call dword [sym.imp.FSUTIL.dll_public_virtual:_void___thiscall_APtrList::destructor_void_]
jmp 0x43fbc0
mov ebx, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::destructor_void_]
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
cmp dword [ebp - 0x23c], 0
push 0
je 0x440eba
mov ecx, edi
call fcn.0043ddf0
push str.PM_CHECK_EFI_CUT_LICENSE
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0x11
mov dword [ebp - 0x230], 4
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x228]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
test eax, eax
je 0x43fc35
push 0
call fcn.00477270
add esp, 4
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x34]
mov byte [ebp - 0x221], 1
test eax, eax
je 0x43fc3c
mov byte [ebp - 0x221], 0
xor esi, esi
mov dword [ebp - 4], 0xd
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x23c], esi
mov dword [ebp - 0x230], esi
call ebx
cmp byte [ebp - 0x221], 0
je 0x43ffec
push 0x30
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x244], eax
mov byte [ebp - 4], 0x12
test eax, eax
je 0x43fc88
mov ecx, eax
call dword [sym.imp.CutJobGenerator.dll_public:_void___thiscall_CXFClient::constructor_void_]
jmp 0x43fc8a
xor eax, eax
push 0x490e40
push str.License_Server_IP
mov dword [0x4c2eb8], eax
mov ecx, edi
push 0x494ac0
lea eax, [ebp - 0x240]
mov byte [ebp - 4], 0xd
push eax
call fcn.004434d0
mov ecx, dword [0x4c2eb8]
push eax
mov byte [ebp - 4], 0x13
lea ecx, [ecx + 4]
call dword [sym.imp.mfc140.dll_Ordinal_1526]
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0xd
call dword [sym.imp.mfc140.dll_Ordinal_1044]
mov ecx, dword [0x4c2eb8]
lea ecx, [ecx + 4]
call dword [sym.imp.mfc140.dll_Ordinal_8146]
test al, al
jne 0x43fcfe
mov ecx, dword [0x4c2eb8]
lea eax, [ebp - 0x264]
push eax
call dword [sym.imp.CutJobGenerator.dll_public:_int___thiscall_CXFClient::ConnectByIP_int__]
test eax, eax
jne 0x43fd35
mov ecx, dword [0x4c2eb8]
push 0
call dword [sym.imp.CutJobGenerator.dll_public:_int___thiscall_CXFClient::RequestIP_int_]
test eax, eax
je 0x440ed2
mov ecx, dword [0x4c2eb8]
lea ecx, [ecx + 4]
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
push str.License_Server_IP
push 0x494ac0
mov ecx, edi
call fcn.00443650
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
mov ecx, dword [0x4c2eb8]
lea eax, [ebp - 0x234]
push eax
mov byte [ebp - 4], 0x14
call dword [sym.imp.CutJobGenerator.dll_public:_int___thiscall_CXFClient::RequestLanguage_class_AString__]
test eax, eax
je 0x43ffe0
lea ecx, [ebp - 0x22c]
call dword [sym.imp.mfc140.dll_Ordinal_316]
lea eax, [ebp - 0x244]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x22c]
push eax
lea eax, [ebp - 0x240]
push eax
call dword [sym.imp.FSUTIL.dll_class_ATL::CStringT_char__class_StrTraitMFC_DLL_char__class_ATL::ChTraitsCRT_char______cdecl_getLanguageFolder_class_ATL::CStringT_char__class_StrTraitMFC_DLL_char__class_ATL::ChTraitsCRT_char______int__]
add esp, 0xc
lea ecx, [ebp - 0x240]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_protected:_struct_AStringData____thiscall_AString::GetData_void_const]
cmp dword [eax + 4], 0
je 0x43fde7
push dword [ebp - 0x234]
lea ecx, [ebp - 0x228]
call dword [sym.imp.mfc140.dll_Ordinal_310]
push eax
lea eax, [ebp - 0x22c]
mov byte [ebp - 4], 0x16
mov esi, 8
push eax
mov dword [ebp - 0x23c], esi
mov dword [ebp - 0x230], esi
call fcn.0043d330
add esp, 8
test al, al
jne 0x43fe27
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_protected:_struct_AStringData____thiscall_AString::GetData_void_const]
cmp dword [eax + 4], 0
jne 0x43fe30
push str.English
lea ecx, [ebp - 0x240]
call dword [sym.imp.mfc140.dll_Ordinal_310]
push eax
lea eax, [ebp - 0x22c]
or esi, 0x10
push eax
mov dword [ebp - 0x23c], esi
call fcn.0043d330
add esp, 8
test al, al
je 0x43fe30
mov byte [ebp - 0x221], 1
jmp 0x43fe37
mov byte [ebp - 0x221], 0
mov eax, dword [ebp - 0x23c]
test al, 0x10
je 0x43fe5c
and eax, 0xffffffef
lea ecx, [ebp - 0x240]
mov dword [ebp - 0x23c], eax
call dword [sym.imp.mfc140.dll_Ordinal_1044]
mov eax, dword [ebp - 0x23c]
mov dword [ebp - 4], 0x15
test al, 8
je 0x43fe7c
and eax, 0xfffffff7
lea ecx, [ebp - 0x228]
mov dword [ebp - 0x23c], eax
call dword [sym.imp.mfc140.dll_Ordinal_1044]
cmp byte [ebp - 0x221], 0
je 0x43ffd4
lea ecx, [ebp - 0x234]
call dword [sym.imp.FSUTIL.dll_protected:_struct_AStringData____thiscall_AString::GetData_void_const]
cmp dword [eax + 4], 0
jne 0x43feac
push str.English
lea ecx, [ebp - 0x234]
call dword [0x48f528]
push 0xffffffffffffffff
push 0
push 0x880
call sub.mfc140.dll_Ordinal_2297
mov ebx, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x230]
call ebx
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x17
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::GetExecutableDir_void_]
push str.Install_Manager.exe
lea ecx, [ebp - 0x230]
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x238]
call ebx
mov ebx, eax
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
lea ecx, [ebp - 0x23c]
push str.__CLANG__RS2
mov byte [ebp - 4], 0x18
call esi
mov edi, eax
push str._s__fl__L:
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x19
call esi
mov esi, dword [sym.imp.FSUTIL.dll_class_AString___cdecl_operator_class_AString_const___class_AString_const__]
lea ecx, [ebp - 0x234]
push ecx
push eax
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1a
push eax
call esi
push edi
push eax
lea eax, [ebp - 0x240]
mov byte [ebp - 4], 0x1b
push eax
call esi
add esp, 0x18
push 1
push dword [ebx]
push dword [eax]
push dword [ebp - 0x230]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov ebx, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::destructor_void_]
lea ecx, [ebp - 0x240]
call ebx
lea ecx, [ebp - 0x248]
call ebx
lea ecx, [ebp - 0x228]
call ebx
lea ecx, [ebp - 0x23c]
call ebx
lea ecx, [ebp - 0x238]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x230]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x22c]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x234]
call ebx
lea ecx, [ebp - 0x288]
xor esi, esi
call ebx
lea ecx, [ebp - 0x27c]
call ebx
lea ecx, [ebp - 0x280]
call ebx
jmp 0x440fc8
lea ecx, [ebp - 0x22c]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0xd
call ebx
push 0x490e40
push 0
call dword [sym.imp.api_ms_win_crt_locale_l1_1_0.dll_setlocale]
add esp, 8
lea ecx, [ebp - 0x228]
push str.FX_TINTTEK_OEM
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0x1c
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x228]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0xd
mov esi, eax
call ebx
test esi, esi
je 0x44004f
call dword [sym.imp.PMCORE.dll_initTTLicense]
test eax, eax
jne 0x44004f
push 0x100
jmp 0x440eca
push 0x2bc
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x264], eax
mov byte [ebp - 4], 0x1d
test eax, eax
je 0x44007b
mov ecx, eax
call fcn.0045e4a0
mov esi, eax
mov dword [ebp - 0x22c], eax
jmp 0x440083
xor esi, esi
mov dword [ebp - 0x22c], esi
mov eax, dword [esi]
mov ecx, esi
push 0
push 0
push 0xcf8000
push 0xc8
mov byte [ebp - 4], 0xd
call dword [eax + 0x170]
test eax, eax
je 0x440ed2
push 0
push dword [esi + 0x20]
call dword [sym.imp.USER32.dll_SetMenu]
mov dword [esi + 0x88], 0
mov eax, dword [edi + 0xd8]
mov dword [edi + 0x20], esi
cmp eax, 0x50
jne 0x4401b0
push str.PM_ArrangeSetupsAsTree
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0x1e
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x228]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0xd
mov esi, eax
call ebx
push 0xb0
call sub.mfc140.dll_Ordinal_1507
add esp, 4
test esi, esi
mov esi, eax
mov dword [ebp - 0x264], esi
je 0x440169
mov byte [ebp - 4], 0x1f
test esi, esi
je 0x44014a
call fcn.0046bcc0
push eax
call fcn.0046b910
push eax
call fcn.00443d00
push eax
push 0xc8
mov ecx, esi
call sub.mfc140.dll_Ordinal_816
jmp 0x44014c
xor eax, eax
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
mov dword [edi + 0x105c], eax
call sub.mfc140.dll_Ordinal_1860
mov esi, dword [ebp - 0x22c]
jmp 0x440361
mov byte [ebp - 4], 0x20
test esi, esi
je 0x440191
call fcn.0046bcc0
push eax
call fcn.00475ae0
push eax
call fcn.00443d00
push eax
push 0xc8
mov ecx, esi
call sub.mfc140.dll_Ordinal_816
jmp 0x440193
xor eax, eax
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
mov dword [edi + 0x1060], eax
call sub.mfc140.dll_Ordinal_1860
mov esi, dword [ebp - 0x22c]
jmp 0x440361
cmp eax, 0x51
jne 0x44020a
push 0xb0
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 0x21
test eax, eax
je 0x4401fd
call fcn.00475800
push eax
call fcn.00475540
push eax
call fcn.00443d00
mov ecx, dword [ebp - 0x238]
push eax
push 0xce
call sub.mfc140.dll_Ordinal_816
mov dword [edi + 0x1064], eax
jmp 0x440355
xor eax, eax
mov dword [edi + 0x1064], eax
jmp 0x440355
cmp eax, 0xa0
jne 0x440ed2
push 0xb0
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 0x22
test eax, eax
je 0x440254
call sub.mfc140.dll_Ordinal_7398
push eax
call fcn.0046f610
push eax
call fcn.00443d00
mov ecx, dword [ebp - 0x238]
push eax
push 0xcb
call sub.mfc140.dll_Ordinal_816
jmp 0x440256
xor eax, eax
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
mov dword [edi + 0x104c], eax
call sub.mfc140.dll_Ordinal_1860
push 0xb0
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 0x23
test eax, eax
je 0x4402a7
call sub.mfc140.dll_Ordinal_7398
push eax
call fcn.0046f620
push eax
call fcn.00443d00
mov ecx, dword [ebp - 0x238]
push eax
push 0xcc
call sub.mfc140.dll_Ordinal_816
jmp 0x4402a9
xor eax, eax
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
mov dword [edi + 0x1054], eax
call sub.mfc140.dll_Ordinal_1860
push 0xb0
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 0x24
test eax, eax
je 0x4402fa
call sub.mfc140.dll_Ordinal_7398
push eax
call fcn.0046f650
push eax
call fcn.00443d00
mov ecx, dword [ebp - 0x238]
push eax
push 0xa8
call sub.mfc140.dll_Ordinal_816
jmp 0x4402fc
xor eax, eax
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
mov dword [edi + 0x1050], eax
call sub.mfc140.dll_Ordinal_1860
push 0xb0
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x238], eax
mov byte [ebp - 4], 0x25
test eax, eax
je 0x44034d
call sub.mfc140.dll_Ordinal_7398
push eax
call fcn.0046f660
push eax
call fcn.00443d00
mov ecx, dword [ebp - 0x238]
push eax
push 0xa9
call sub.mfc140.dll_Ordinal_816
jmp 0x44034f
xor eax, eax
mov dword [edi + 0x1058], eax
push eax
mov ecx, edi
mov byte [ebp - 4], 0xd
call sub.mfc140.dll_Ordinal_1860
lea ecx, [ebp - 0x284]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x284]
mov byte [ebp - 4], 0x26
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::GetExecutableDir_void_]
lea eax, [ebp - 0x238]
push eax
lea ecx, [ebp - 0x284]
call dword [sym.imp.FSUTIL.dll_public:_class_AString___thiscall_AFilePath::GetFullPath_void_]
push dword [eax]
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0x27
call dword [sym.imp.mfc140.dll_Ordinal_310]
lea ecx, [ebp - 0x238]
mov byte [ebp - 4], 0x29
call ebx
push ecx
mov ecx, esp
mov dword [ebp - 0x264], esp
push 0x49a790
call dword [sym.imp.mfc140.dll_Ordinal_310]
push ecx
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 0x2a
mov ecx, esp
push eax
call dword [sym.imp.mfc140.dll_Ordinal_300]
mov byte [ebp - 4], 0x29
call fcn.0046abe0
add esp, 4
mov ecx, esp
mov dword [ebp - 0x264], esp
push 0x49a794
call dword [sym.imp.mfc140.dll_Ordinal_310]
push ecx
lea eax, [ebp - 0x278]
mov byte [ebp - 4], 0x2b
mov ecx, esp
push eax
call dword [sym.imp.mfc140.dll_Ordinal_300]
mov byte [ebp - 4], 0x29
call fcn.0046abe0
add esp, 8
call dword [sym.imp.FSUTIL.dll_public:_static_void___cdecl_AUnits::initialize_void_]
lea ecx, [ebp - 0x258]
mov byte [esi + 0x128], 1
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
lea ecx, [ebp - 0x228]
push str.FX_HTML_Help_URL
mov byte [ebp - 4], 0x2c
call esi
push 0
mov byte [ebp - 4], 0x2d
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x258]
mov edx, dword [eax]
push ecx
lea ecx, [ebp - 0x228]
push ecx
mov ecx, eax
call dword [edx + 0x18]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x2c
call ebx
lea ecx, [ebp - 0x250]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x274]
mov dword [ebp - 0x25c], 0
call dword [sym.imp.mfc140.dll_Ordinal_316]
lea eax, [ebp - 0x25c]
mov byte [ebp - 4], 0x2f
push eax
lea eax, [ebp - 0x274]
push eax
lea eax, [ebp - 0x270]
push eax
call dword [sym.imp.FSUTIL.dll_class_ATL::CStringT_char__class_StrTraitMFC_DLL_char__class_ATL::ChTraitsCRT_char______cdecl_getLanguageFolder_class_ATL::CStringT_char__class_StrTraitMFC_DLL_char__class_ATL::ChTraitsCRT_char______int__]
add esp, 0xc
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 0x30
call dword [sym.imp.FSUTIL.dll_protected:_struct_AStringData____thiscall_AString::GetData_void_const]
xor ecx, ecx
push str.ProductFamily
cmp dword [eax + 4], ecx
mov dword [ebp - 0x254], 2
sete cl
and dword [ebp - 0x25c], ecx
lea ecx, [ebp - 0x22c]
call esi
push 0
mov byte [ebp - 4], 0x31
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x254]
mov edx, dword [eax]
push ecx
lea ecx, [ebp - 0x22c]
push ecx
mov ecx, eax
call dword [edx + 0x1c]
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x30
call ebx
lea ecx, [ebp - 0x26c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
push str.FX_Help_File
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x32
call esi
push 0
mov byte [ebp - 4], 0x33
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x26c]
mov edx, dword [eax]
push ecx
lea ecx, [ebp - 0x230]
push ecx
mov ecx, eax
call dword [edx + 0x18]
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x32
call ebx
mov esi, dword [ebp - 0x254]
cmp esi, 1
jne 0x440597
lea eax, [ebp - 0x26c]
push str.Flexi_Help.pdf
push eax
call fcn.00409fa0
add esp, 8
mov ecx, 2
test eax, eax
cmovne esi, ecx
mov dword [ebp - 0x254], esi
lea ecx, [ebp - 0x258]
call dword [sym.imp.FSUTIL.dll_protected:_struct_AStringData____thiscall_AString::GetData_void_const]
push dword [ebp - 0x25c]
lea edx, [ebp - 0x270]
lea ecx, [ebp - 0x274]
cmp dword [eax + 4], 0
cmovne ecx, edx
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
push dword [ebp - 0x254]
call fcn.00443320
add esp, 0xc
push dword [ebp - 0x258]
call fcn.004432e0
mov esi, dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x250]
push str.AppDataLanguage_
call esi
lea ecx, [ebp - 0x270]
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
lea ecx, [ebp - 0x250]
call esi
push str.PM_CHECK_EFI_CUT_LICENSE
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0x34
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x228]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x32
mov esi, eax
call ebx
test esi, esi
je 0x44068d
lea eax, [ebp - 0x250]
push eax
lea ecx, [ebp - 0x22c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_class_AFilePath_const__]
mov esi, dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x22c]
push 0x49a7f0
mov byte [ebp - 4], 0x35
call esi
push dword [ebp - 0x22c]
call fcn.00443360
add esp, 4
mov byte [ebp - 4], 0x32
lea ecx, [ebp - 0x22c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
jmp 0x440693
mov esi, dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
cmp dword [ebp - 0x254], 2
lea ecx, [ebp - 0x250]
jne 0x4406a9
push str.PDFHelpFlexiHelp.PDF
jmp 0x4406ae
push str.PDFHelpPPSHelp.PDF
call esi
push dword [edi + 0x68]
call dword [sym.imp.api_ms_win_crt_heap_l1_1_0.dll_free]
push dword [ebp - 0x250]
call dword [sym.imp.api_ms_win_crt_string_l1_1_0.dll__strdup]
add esp, 8
mov dword [edi + 0x68], eax
mov ecx, edi
push 1
push 0
push str.DefFrameIndex
call fcn.0043d430
push eax
push 0
mov ecx, edi
call fcn.00442a80
lea ecx, [ebp - 0x24c]
mov dword [edi + 0xe0], 1
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x24c]
mov byte [ebp - 4], 0x36
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::GetRuntimeDataFolder_void_]
push str.temp
lea ecx, [ebp - 0x24c]
call esi
call fcn.0043f2c0
mov dword [ebp - 0x240], eax
test eax, eax
je 0x440737
lea ecx, [eax + 0x10]
push ecx
lea ecx, [ebp - 0x24c]
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_class_AFilePath_const__]
push str.scratch
lea ecx, [ebp - 0x24c]
call esi
lea ecx, [ebp - 0x24c]
call dword [sym.imp.FSUTIL.dll_public:_int___thiscall_AFilePath::exists_void_const]
test eax, eax
je 0x440762
push dword [ebp - 0x24c]
call sub.CommonDll.dll_void___cdecl_SADeleteTree_char_const__
add esp, 4
push 0xa
mov ecx, edi
call sub.mfc140.dll_Ordinal_8421
mov eax, dword [ebp - 0x240]
test eax, eax
je 0x4407b7
cmp dword [eax + 0xcd4], 0
je 0x4407b7
push 2
call dword [sym.imp.PMCORE.dll_GetSetupDatabase]
mov ecx, eax
call dword [sym.imp.PMCORE.dll_public:_int___thiscall_ASetupDatabase::GetNumberOfSetups_int_]
test eax, eax
jle 0x4407b7
call fcn.0040a970
mov ecx, eax
call fcn.0045e850
test eax, eax
je 0x4407b7
push 0
push 0x8097
push 0x111
push dword [eax + 0x20]
call dword [sym.imp.USER32.dll_SendMessageA]
push 0
call fcn.00477270
add esp, 4
mov esi, eax
call sub.mfc140.dll_Ordinal_2241
mov edx, dword [esi]
mov ecx, dword [eax + 0xc]
push ecx
mov ecx, esi
call dword [edx + 0x90]
push 0
test eax, eax
jne 0x4407fb
call fcn.00477270
add esp, 4
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x4c]
push eax
mov ecx, edi
call dword [sym.imp.PMCORE.dll_public:_void___thiscall_ABaseApp::displayErrorMessage_int_]
xor esi, esi
jmp 0x440e45
call fcn.00477270
add esp, 4
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x84]
test eax, eax
je 0x440961
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
lea ecx, [ebp - 0x228]
call esi
lea ecx, [ebp - 0x234]
mov byte [ebp - 4], 0x37
call esi
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x38
call esi
lea ecx, [ebp - 0x244]
mov byte [ebp - 4], 0x39
call esi
push 0
mov byte [ebp - 4], 0x3a
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x234]
mov edx, dword [eax]
push 0
push ecx
mov ecx, eax
call dword [edx + 0x78]
push 0
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x230]
mov edx, dword [eax]
push 1
push ecx
mov ecx, eax
call dword [edx + 0x74]
push 0
push eax
lea ecx, [ebp - 0x268]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_ATime::constructor_long_long___int64__]
mov ecx, eax
call dword [sym.imp.FSUTIL.dll_public:_int___thiscall_ATime::getDateString_class_AString___int_]
lea eax, [ebp - 0x220]
push eax
push 0x12a
call sub.PMResource.dll_PMGetStr
push dword [ebp - 0x230]
lea eax, [ebp - 0x220]
push dword [ebp - 0x234]
push eax
lea eax, [ebp - 0x228]
push eax
call dword [sym.imp.FSUTIL.dll_public:_class_AString____cdecl_AString::Format_char_const__]
add esp, 0x18
push 0
push 0x14
push dword [ebp - 0x228]
call sub.mfc140.dll_Ordinal_2298
cmp eax, 6
jne 0x44093d
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x22c]
call esi
push str.licensemanager.exe
lea ecx, [ebp - 0x22c]
mov byte [ebp - 4], 0x3b
call dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x238]
call esi
push 1
push dword [eax]
push 0x4996ac
push dword [ebp - 0x22c]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [ebp - 0x238]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x22c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x244]
call ebx
lea ecx, [ebp - 0x230]
call ebx
lea ecx, [ebp - 0x234]
call ebx
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x36
call ebx
push str.FX_DATA_COLLECTION
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0x3c
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x228]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x36
mov esi, eax
call ebx
test esi, esi
je 0x440c1d
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
lea eax, [ebp - 0x228]
mov byte [ebp - 4], 0x3d
push eax
call fcn.0041de00
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AStringArray::constructor_void_]
lea ecx, [ebp - 0x2b0]
add esp, 4
call esi
lea ecx, [ebp - 0x2f4]
mov byte [ebp - 4], 0x3e
call esi
lea ecx, [ebp - 0x2e0]
mov byte [ebp - 4], 0x3f
call esi
lea ecx, [ebp - 0x2cc]
mov byte [ebp - 4], 0x40
call esi
lea ecx, [ebp - 0x29c]
mov byte [ebp - 4], 0x41
call esi
mov byte [ebp - 4], 0x42
call dword [sym.imp.PMCORE.dll_GetSetupDatabase]
mov ecx, eax
mov dword [ebp - 0x238], eax
call dword [sym.imp.PMCORE.dll_public:_class_ASetup____thiscall_ASetupDatabase::GetSetupHead_void_]
mov dword [ebp - 0x244], eax
test eax, eax
je 0x440b90
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AStringArray::SetAtGrow_int__char_const__]
mov edi, eax
nop
mov ecx, edi
call dword [sym.imp.PMCORE.dll_public:_struct_ASetupCommonRec____thiscall_ASetup::GetCommonRec_void_]
mov dword [ebp - 0x22c], eax
test eax, eax
je 0x440b6c
push dword [eax + 0xf4]
lea ecx, [ebp - 0x2b0]
push dword [ebp - 0x2a8]
call esi
mov eax, dword [ebp - 0x22c]
lea ecx, [ebp - 0x2f4]
push dword [eax + 0xf8]
push dword [ebp - 0x2ec]
call esi
mov eax, dword [ebp - 0x22c]
lea ecx, [ebp - 0x2e0]
push dword [eax + 0x100]
push dword [ebp - 0x2d8]
call esi
lea ecx, [ebp - 0x230]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
mov ecx, edi
mov byte [ebp - 4], 0x43
call dword [sym.imp.PMCORE.dll_public:_short_int___thiscall_ASetup::GetSetupType_void_]
cwde
dec eax
cmp eax, 0x12
ja case.0x440ab4.3
movzx eax, byte [eax + 0x441008]
jmp dword [eax*4 + 0x440ff4]
push str.cutter
jmp 0x440ad5
push str.printer
jmp 0x440ad5
push str.hybrid
jmp 0x440ad5
push str.engraver
lea ecx, [ebp - 0x230]
call dword [0x48f528]
push dword [ebp - 0x230]
lea ecx, [ebp - 0x2cc]
push dword [ebp - 0x2c4]
call esi
push 0
push 0x4c1068
push 0x4c1050
push 0
push edi
call sub.VCRUNTIME140.dll___RTDynamicCast
mov esi, eax
add esp, 0x14
test esi, esi
je 0x440b47
mov edx, dword [esi]
mov ecx, esi
call dword [edx + 0x4c]
lea ecx, [eax + 0x214]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x440b22
mov eax, dword [esi]
sub ecx, edx
mov ecx, esi
je 0x440b3c
call dword [eax + 0x4c]
add eax, 0x214
push eax
jmp 0x440b4c
call dword [eax + 0x4c]
add eax, 0x314
push eax
jmp 0x440b4c
push 0x490e40
push dword [ebp - 0x294]
mov esi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AStringArray::SetAtGrow_int__char_const__]
lea ecx, [ebp - 0x29c]
call esi
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 0x42
call ebx
mov ecx, dword [ebp - 0x238]
mov edi, dword [edi + 0x268]
call dword [sym.imp.PMCORE.dll_public:_class_ASetup____thiscall_ASetupDatabase::GetSetupHead_void_]
cmp edi, eax
je 0x440b8a
test edi, edi
jne 0x440a30
mov edi, dword [ebp - 0x248]
push 0
call fcn.00477270
add esp, 4
mov ecx, eax
lea eax, [ebp - 0x29c]
push eax
lea eax, [ebp - 0x2cc]
push eax
lea eax, [ebp - 0x2e0]
push eax
lea eax, [ebp - 0x2f4]
push eax
lea eax, [ebp - 0x2b0]
push eax
mov eax, dword [ecx]
push dword [ebp - 0x228]
call dword [eax + 0x40]
push eax
lea ecx, [edi + 0xe2c]
call dword [sym.imp.mfc140.dll_Ordinal_1661]
push eax
push 1
call dword [sym.imp.SAiCloud.dll_int___cdecl_OnStartStop_int__char_const___int__char_const___class_AStringArray_const___class_AStringArray_const___class_AStringArray_const___class_AStringArray_const___class_AStringArray_const__]
mov esi, dword [sym.imp.FSUTIL.dll_public_virtual:_void___thiscall_AStringArray::destructor_void_]
lea ecx, [ebp - 0x29c]
add esp, 0x24
call esi
lea ecx, [ebp - 0x2cc]
call esi
lea ecx, [ebp - 0x2e0]
call esi
lea ecx, [ebp - 0x2f4]
call esi
lea ecx, [ebp - 0x2b0]
call esi
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 0x36
call ebx
push str.CLOUD_SKIP_LICENSE_CHECKING
lea ecx, [ebp - 0x248]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
push 0
mov byte [ebp - 4], 0x44
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x248]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 0x36
mov esi, eax
call ebx
test esi, esi
je 0x440c62
call dword [sym.imp.FSUTIL.dll_void___cdecl_MakeSureCloudSyncUIRunning_void_]
push str.PM_SHOW_TUTORIAL
lea ecx, [ebp - 0x248]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
mov esi, dword [ebp - 0x23c]
or esi, 0x20
mov byte [ebp - 4], 0x45
push 0
mov dword [ebp - 0x230], esi
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x248]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x20]
test eax, eax
je 0x440cb8
mov eax, dword [ebp - 0x240]
mov byte [ebp - 0x221], 1
cmp dword [eax + 0xce0], 0
jne 0x440cbf
mov byte [ebp - 0x221], 0
lea ecx, [ebp - 0x248]
mov dword [ebp - 4], 0x36
and esi, 0xffffffdf
call ebx
cmp byte [ebp - 0x221], 0
je 0x440d2c
push 0x264
call sub.mfc140.dll_Ordinal_1507
add esp, 4
mov dword [ebp - 0x264], eax
mov byte [ebp - 4], 0x46
test eax, eax
je 0x440d04
push 0
push 1
mov ecx, eax
call fcn.0042d1e0
mov ecx, eax
jmp 0x440d06
xor ecx, ecx
mov dword [0x4c278c], ecx
mov eax, dword [ecx]
push 0
push 0x129
mov byte [ebp - 4], 0x36
call dword [eax + 0x16c]
mov ecx, dword [0x4c278c]
push 5
call sub.mfc140.dll_Ordinal_14149
lea ecx, [ebp - 0x260]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_void_]
push str.URL_SUBSCRIPTION_UPGRADE
lea ecx, [ebp - 0x240]
mov byte [ebp - 4], 0x47
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AString::constructor_char_const__]
or esi, 0x40
mov byte [ebp - 4], 0x48
push 0
mov dword [ebp - 0x230], esi
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x260]
mov edx, dword [eax]
push ecx
lea ecx, [ebp - 0x240]
push ecx
mov ecx, eax
call dword [edx + 0x18]
test eax, eax
je 0x440dae
lea ecx, [ebp - 0x260]
call dword [sym.imp.FSUTIL.dll_protected:_struct_AStringData____thiscall_AString::GetData_void_const]
cmp dword [eax + 4], 0
je 0x440dae
push 0
call fcn.00477270
add esp, 4
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x80]
mov byte [ebp - 0x221], 1
test eax, eax
jne 0x440db5
mov byte [ebp - 0x221], 0
lea ecx, [ebp - 0x240]
mov dword [ebp - 4], 0x47
call ebx
cmp byte [ebp - 0x221], 0
je 0x440e11
push 0
call fcn.00477270
add esp, 4
lea ecx, [ebp - 0x264]
mov edx, dword [eax]
push ecx
mov ecx, eax
call dword [edx + 0x44]
mov ecx, eax
mov eax, 0xaaaaaaab
mul ecx
mov eax, 0x88888889
shr edx, 4
mul edx
shr edx, 5
cmp edx, 0x1e
jg 0x440e11
lea eax, [ebp - 0x260]
push eax
push edx
call dword [sym.imp.FSUTIL.dll_void___cdecl_DisplaySubscriptionUpgradeOption_int__class_AString_const__]
add esp, 8
mov esi, dword [sym.imp.PMCORE.dll_public:_static_class_PrinterStatusThread____cdecl_PrinterStatusThread::GetInstance_void_]
call esi
test eax, eax
je 0x440e27
call esi
mov ecx, eax
call dword [sym.imp.PMCORE.dll_public:_void___thiscall_PrinterStatusThread::CanStartDeviceStatusService_void_]
cmp dword [0x4c2e98], 0
jne 0x440e38
mov eax, dword [edi + 0x44]
mov dword [0x4c2e98], eax
lea ecx, [ebp - 0x260]
mov esi, 1
call ebx
lea ecx, [ebp - 0x24c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x26c]
call ebx
lea ecx, [ebp - 0x270]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x274]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x250]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x258]
call ebx
lea ecx, [ebp - 0x278]
call dword [sym.imp.mfc140.dll_Ordinal_1044]
lea ecx, [ebp - 0x284]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x288]
call ebx
lea ecx, [ebp - 0x27c]
call ebx
lea ecx, [ebp - 0x280]
call ebx
jmp 0x440fc8
call fcn.00477270
add esp, 4
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x4c]
push eax
mov ecx, edi
call dword [sym.imp.PMCORE.dll_public:_void___thiscall_ABaseApp::displayErrorMessage_int_]
lea ecx, [ebp - 0x288]
xor esi, esi
call ebx
lea ecx, [ebp - 0x27c]
call ebx
lea ecx, [ebp - 0x280]
call ebx
jmp 0x440fc8
mov dword [ebp - 0x240], 0x200000
call fcn.00477810
test eax, eax
jne 0x440fb7
push 0xffffffffffffffff
push eax
push 0x336c
call sub.mfc140.dll_Ordinal_2297
mov edi, dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::constructor_void_]
lea ecx, [ebp - 0x22c]
call edi
mov esi, dword [sym.imp.FSUTIL.dll_public:_class_AFilePath____thiscall_AFilePath::operator_char_const__]
lea ecx, [ebp - 0x22c]
push str.licensemanager.exe
mov byte [ebp - 4], 3
call esi
lea ecx, [ebp - 0x228]
call edi
push str.license
lea ecx, [ebp - 0x228]
mov byte [ebp - 4], 4
call esi
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_int___thiscall_AFilePath::exists_void_const]
lea ecx, [ebp - 0x244]
test eax, eax
je 0x440f76
call edi
push 1
push dword [eax]
push 0x4996ac
jmp 0x440f7e
call edi
push 1
push dword [eax]
push 0
push dword [ebp - 0x22c]
push str.open
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
lea ecx, [ebp - 0x244]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x228]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
lea ecx, [ebp - 0x22c]
call dword [sym.imp.FSUTIL.dll_public:_void___thiscall_AFilePath::destructor_void_]
jmp 0x440fc6
mov eax, dword [ebp - 0x240]
push eax
mov ecx, edi
call dword [sym.imp.PMCORE.dll_public:_void___thiscall_ABaseApp::displayErrorMessage_int_]
xor esi, esi
lea ecx, [ebp - 0x324]
call fcn.0043d310
mov eax, esi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0047ff18
mov esp, ebp
pop ebp
ret