Function at 0x4239e0
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x42a446
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x1c
push ebx
push esi
push edi
mov dword [ebp - 0x10], esp
mov eax, dword [ebp + 8]
mov dword [ebp - 4], 0
push eax
mov dword [0x442f58], eax
call fcn.004269b0
add esp, 4
call fcn.004231d0
push 0
call dword [sym.imp.USER32.DLL_GetSystemMetrics]
mov dword [0x44301c], eax
call fcn.00403d90
call fcn.00404080
mov ebx, dword [ebp + 0x10]
mov esi, dword [sym.imp.ENGINE.DLL_char____cdecl_StringDuplicate_char_const__]
push ecx
mov dword [ebp + 8], esp
mov edi, esp
push ebx
call esi
add esp, 4
mov dword [edi], eax
call fcn.00401470
add esp, 4
call fcn.00423580
test eax, eax
jne 0x423a81
push ebx
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.ENGINE.DLL_void___cdecl_FreeMemory_void__]
add esp, 4
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [0x442f74]
push ecx
mov dword [ebp + 8], esp
mov edi, esp
push eax
call esi
add esp, 4
mov dword [edi], eax
call dword [sym.imp.ENGINE.DLL_void___cdecl_SE_InitEngine_class_CTString_]
push 0x4361f0
call esi
mov dword [ebp + 8], eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 1
push ecx
call fcn.00423270
mov edx, dword [ebp + 8]
mov edi, dword [sym.imp.ENGINE.DLL_void___cdecl_FreeMemory_void__]
push edx
mov ebx, eax
mov byte [ebp - 4], 0
call edi
add esp, 0x10
test ebx, ebx
je 0x423ad1
push str.BinEntitiesMP.dll
jmp 0x423b00
push 0x436218
call esi
mov dword [ebp + 8], eax
lea ecx, [ebp + 8]
mov byte [ebp - 4], 2
push ecx
call fcn.00423270
mov edx, dword [ebp + 8]
mov ebx, eax
push edx
mov byte [ebp - 4], 0
call edi
add esp, 0xc
test ebx, ebx
je 0x423b15
push str.BinEntities.dll
call esi
mov ebx, eax
mov eax, dword [0x443008]
push eax
call edi
add esp, 8
mov dword [0x443008], ebx
call fcn.00423580
test eax, eax
jne 0x423b41
mov ecx, dword [ebp + 0x10]
mov dword [ebp - 4], 0xffffffff
push ecx
call edi
add esp, 4
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call dword [sym.imp.ENGINE.DLL_void___cdecl_SE_LoadDefaultFonts_void_]
mov edx, dword [0x4370ac]
push edx
push 0x436240
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
call fcn.004249e0
call dword [sym.imp.ENGINE.DLL_void___cdecl_InitTranslation_void_]
push str..txt
mov byte [ebp - 4], 3
call esi
add esp, 0xc
mov dword [ebp + 8], eax
push eax
mov byte [ebp - 4], 4
call esi
add esp, 4
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], 0
push str.DataTranslations_
mov byte [ebp - 4], 5
call esi
mov ebx, eax
add esp, 4
mov dword [ebp - 0x14], ebx
push ebx
mov byte [ebp - 4], 6
call esi
add esp, 4
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x1c], 0
lea eax, [ebp - 0x28]
lea ecx, [ebp - 0x20]
push eax
push ecx
mov byte [ebp - 4], 7
call dword [sym.imp.ENGINE.DLL_void___cdecl_AddTranslationTablesDir_t_class_CTFileName_const___class_CTFileName_const__]
mov edx, dword [ebp - 0x20]
add esp, 8
mov byte [ebp - 4], 6
push edx
call edi
add esp, 4
mov byte [ebp - 4], 5
push ebx
call edi
mov eax, dword [ebp - 0x28]
add esp, 4
mov byte [ebp - 4], 4
push eax
call edi
mov ecx, dword [ebp + 8]
add esp, 4
mov byte [ebp - 4], 3
push ecx
call edi
add esp, 4
call dword [sym.imp.ENGINE.DLL_void___cdecl_FinishTranslationTable_void_]
jmp 0x423c22
push str.con_bNoWarnings1_
mov dword [ebp - 4], 0
call esi
add esp, 4
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 9
mov ecx, dword [ecx]
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::Execute_class_CTString_const__]
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_void_PlayDemo_CTString__
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
mov ebx, dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::DeclareSymbol_class_CTString_const___void__]
lea eax, [ebp + 8]
push 0x4248d0
mov ecx, dword [ecx]
push eax
mov byte [ebp - 4], 0xa
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_bFullScreen_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436004
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0xb
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_iScreenSizeI_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436008
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0xc
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_iScreenSizeJ_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x43600c
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0xd
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_iDisplayDepth_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443028
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0xe
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_iDisplayAdapter_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x44302c
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0xf
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_iGfxAPI_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443030
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x10
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_bFirstStarted_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436010
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x11
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_bAutoAdjustAudio_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436020
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x12
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_INDEX_sam_bWideScreen_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443020
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x13
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_FLOAT_sam_fPlayerOffset_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443024
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x14
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_INDEX_sam_bAutoPlayDemos_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436024
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x15
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_INDEX_sam_iMaxFPSActive_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x435ff8
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x16
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_INDEX_sam_iMaxFPSInactive_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x435ffc
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x17
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_INDEX_sam_bPauseOnMinimize_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436000
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x18
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_FLOAT_sam_tmDisplayModeReport_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x436014
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x19
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_CTString_sam_strNetworkSettings_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443004
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x1a
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_CTString_sam_strIntroLevel_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f78
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x1b
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_CTString_sam_strGameName_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f74
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x1c
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_CTString_sam_strVersion_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f84
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x1d
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_CTString_sam_strFirstLevel_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f7c
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x1e
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_CTString_sam_strModName_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f80
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x1f
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_bShowAllLevels_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443034
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x20
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_INDEX_sam_bMentalActivated_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443038
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x21
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_CTString_sam_strTechTestLevel_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f70
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x22
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_CTString_sam_strTrainingLevel_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x442f6c
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x23
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_void_Quit_void__
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x4249d0
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x24
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.persistent_user_INDEX_sam_iVideoSetup_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x43601c
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x25
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_void_ApplyRenderingPreferences_void__
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x4249a0
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x26
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_void_ApplyVideoMode_void__
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x422c20
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x27
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_void_Benchmark_void__
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x4249b0
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x28
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_INDEX_sam_bMenuSave_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443040
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x29
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_INDEX_sam_bMenuLoad_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443044
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x2a
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_INDEX_sam_bMenuControls_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443048
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x2b
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_INDEX_sam_bMenuHiScore_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov byte [ebp - 4], 0x2c
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x44304c
push eax
mov ecx, dword [ecx]
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.user_INDEX_sam_bToggleConsole_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443050
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x2d
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
push str.INDEX_sam_iStartCredits_
call esi
add esp, 8
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x443054
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x2e
call ebx
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
call fcn.004237a0
mov eax, dword [sym.imp.ENGINE.DLL_class_CNetworkLibrary___pNetwork]
mov ecx, dword [0x442f74]
push ecx
mov ebx, dword [eax]
add ebx, 0xc
call esi
mov edx, dword [ebx]
mov dword [ebp + 8], eax
push edx
call edi
mov eax, dword [ebp + 8]
add esp, 0xc
mov dword [ebx], eax
call fcn.00402990
mov eax, dword [0x436010]
xor ebx, ebx
cmp eax, ebx
je 0x424359
push 4
push str.ETRSSeriousSam_is_starting_for_the_first_time._nIf_you_experience_any_problems__please_consult_nReadMe_file_for_troubleshooting_information.
call dword [sym.imp.ENGINE.DLL_char____cdecl_Translate_char___long_int_]
add esp, 8
push eax
push 0x436860
call dword [sym.imp.ENGINE.DLL_void___cdecl_InfoMessage_char_const__]
add esp, 8
mov ecx, dword [sym.imp.ENGINE.DLL_long_int_snd_iFormat]
mov eax, dword [ecx]
cmp eax, ebx
jl 0x424371
cmp eax, 3
jle 0x424373
mov eax, 3
jmp 0x424373
xor eax, eax
mov dword [ecx], eax
mov ecx, dword [sym.imp.ENGINE.DLL_long_int_snd_iFormat]
mov eax, dword [sym.imp.ENGINE.DLL_class_CSoundLibrary___pSound]
push ebx
mov edx, dword [ecx]
mov ecx, dword [eax]
push edx
call dword [sym.imp.ENGINE.DLL_public:_enum_CSoundLibrary::SoundFormat___thiscall_CSoundLibrary::SetFormat_enum_CSoundLibrary::SoundFormat__int_]
cmp dword [0x436020], ebx
je 0x4243c4
push str.include__ScriptsAddonsSFX_AutoAdjust.ini_
call esi
add esp, 4
mov dword [ebp + 8], eax
mov edx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea ecx, [ebp + 8]
push ecx
mov byte [ebp - 4], 0x2f
mov ecx, dword [edx]
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::Execute_class_CTString_const__]
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 0
push eax
call edi
add esp, 4
push 0x4430a0
mov ecx, 0x4370b8
call dword [sym.imp.ENGINE.DLL_public:_int___thiscall_CTString::operator__char_const__const]
test eax, eax
je 0x424433
mov ecx, dword [0x4370b8]
push ecx
push str.Command_line_script:__s_n
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
push 0x4370f4
call esi
add esp, 0xc
mov dword [ebp + 8], eax
mov edx, dword [0x4370b8]
lea eax, [ebp + 8]
push edx
push 0x4368ac
push eax
mov byte [ebp - 4], 0x30
call dword [sym.imp.ENGINE.DLL_public:_long_int___cdecl_CTString::PrintF_char_const__]
mov edx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
add esp, 0xc
lea ecx, [ebp + 8]
push ecx
mov ecx, dword [edx]
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::Execute_class_CTString_const__]
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 0
push eax
call edi
add esp, 4
push 0x4368c0
call esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x31
push ecx
push 0x44305c
push 0x442fd0
call fcn.00423720
mov edx, dword [ebp - 0x28]
mov byte [ebp - 4], 0
push edx
call edi
push 0x4368e0
call esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x32
push eax
push 0x443060
push 0x442fb8
call fcn.00423720
mov ecx, dword [ebp - 0x28]
mov byte [ebp - 4], 0
push ecx
call edi
push 0x436904
call esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
lea edx, [ebp - 0x28]
mov byte [ebp - 4], 0x33
push edx
push 0x443064
push 0x442fa0
call fcn.00423720
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0
push eax
call edi
push 0x436924
call esi
add esp, 0x40
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ebx
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x34
push ecx
push 0x443068
push 0x442f88
call fcn.00423720
mov edx, dword [ebp - 0x28]
mov byte [ebp - 4], 0
push edx
call edi
push str.DataVarSam_Version.var
call esi
mov ebx, eax
mov dword [ebp + 8], ebx
push ebx
mov byte [ebp - 4], 0x35
call esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], 0
lea eax, [ebp - 0x28]
push 0x442f84
push eax
mov byte [ebp - 4], 0x36
call dword [sym.imp.ENGINE.DLL_void___cdecl_LoadStringVar_class_CTFileName_const___class_CTString__]
mov ecx, dword [ebp - 0x28]
mov byte [ebp - 4], 0x35
push ecx
call edi
push ebx
mov byte [ebp - 4], 0
call edi
push str.DataVarModName.var
call esi
mov ebx, eax
mov dword [ebp + 8], ebx
push ebx
mov byte [ebp - 4], 0x37
call esi
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], 0
lea edx, [ebp - 0x28]
push 0x442f80
push edx
mov byte [ebp - 4], 0x38
call dword [sym.imp.ENGINE.DLL_void___cdecl_LoadStringVar_class_CTFileName_const___class_CTString__]
mov eax, dword [ebp - 0x28]
mov byte [ebp - 4], 0x37
push eax
call edi
push ebx
mov byte [ebp - 4], 0
call edi
mov ecx, dword [0x442f84]
mov ebx, dword [sym.imp.ENGINE.DLL_char____cdecl_Translate_char___long_int_]
add esp, 0x40
push ecx
push 4
push str.ETRSSerious_Sam_version:__s_n
call ebx
add esp, 8
push eax
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
mov edx, dword [0x442f80]
add esp, 8
push edx
push 4
push str.ETRSActive_mod:__s_n
call ebx
add esp, 8
push eax
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
add esp, 8
call fcn.0040ce10
mov ecx, dword [sym.imp.ENGINE.DLL_class_CTFileName__fnmMod]
push 0x4430a4
call dword [sym.imp.ENGINE.DLL_public:_int___thiscall_CTString::operator__char_const__const]
test eax, eax
je 0x4245fd
push str.include__ScriptsMod_startup.ini__
call esi
add esp, 4
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push eax
mov byte [ebp - 4], 0x39
mov ecx, dword [ecx]
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::Execute_class_CTString_const__]
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
add esp, 4
call fcn.004023d0
call fcn.00403020
call fcn.00403670
mov eax, dword [0x436004]
mov ecx, dword [0x443028]
mov edx, dword [0x43600c]
push eax
mov eax, dword [0x436008]
push ecx
mov ecx, dword [0x44302c]
push edx
mov edx, dword [0x443030]
push eax
push ecx
push edx
call fcn.004268a0
mov ecx, dword [0x436010]
xor eax, eax
add esp, 0x18
cmp ecx, eax
je 0x424652
mov dword [0x44303c], eax
mov dword [0x436010], eax
call fcn.00426c20
push 0x4430a8
mov ecx, 0x4370b0
call dword [sym.imp.ENGINE.DLL_public:_int___thiscall_CTString::operator__char_const__const]
test eax, eax
je 0x4246a0
push str.net_strConnectPassword
call esi
add esp, 4
mov dword [ebp + 8], eax
mov ecx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea eax, [ebp + 8]
push 0x4370b0
push eax
mov ecx, dword [ecx]
mov byte [ebp - 4], 0x3a
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::SetString_class_CTString_const___class_CTString_const__]
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
add esp, 4
push 0x4430ac
mov ecx, 0x4370b4
call dword [sym.imp.ENGINE.DLL_public:_int___thiscall_CTString::operator__char_const__const]
test eax, eax
je 0x42478b
push 0x4430b0
call esi
add esp, 4
mov dword [ebp + 8], eax
mov eax, dword [0x432454]
mov byte [ebp - 4], 0x3b
test eax, eax
jle 0x424721
push str.net_iPort
call esi
add esp, 4
mov dword [ebp - 0x14], eax
mov eax, dword [0x432454]
mov edx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
lea ecx, [ebp - 0x14]
push eax
push ecx
mov ecx, dword [edx]
mov byte [ebp - 4], 0x3c
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::SetINDEX_class_CTString_const___long_int_]
mov eax, dword [ebp - 0x14]
mov byte [ebp - 4], 0x3b
push eax
call edi
mov ecx, dword [0x432454]
add esp, 4
lea edx, [ebp + 8]
push ecx
push 0x4369f0
push edx
call dword [sym.imp.ENGINE.DLL_public:_long_int___cdecl_CTString::PrintF_char_const__]
add esp, 0xc
mov eax, dword [ebp + 8]
mov ecx, dword [0x4370b4]
push eax
push ecx
push 4
push str.ETRSCommand_line_connection:__s_s_n
call ebx
add esp, 8
push eax
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
mov edx, dword [0x44300c]
mov eax, dword [0x4370b4]
push eax
lea ebx, [edx + 0x1c]
call esi
mov ecx, dword [ebx]
mov esi, eax
push ecx
call edi
mov dword [ebx], esi
mov eax, dword [0x4370c4]
add esp, 0x14
test eax, eax
je 0x42476c
call fcn.00409ab0
jmp 0x424779
push str.join
call fcn.004085d0
add esp, 4
mov edx, dword [ebp + 8]
mov byte [ebp - 4], 0
push edx
call edi
add esp, 4
jmp 0x4248a2
push 0x4430b4
mov ecx, 0x4370bc
call dword [sym.imp.ENGINE.DLL_public:_int___thiscall_CTString::operator__char_const__const]
test eax, eax
je 0x42489d
mov eax, dword [0x4370bc]
push eax
push 4
push str.ETRSCommand_line_world:__s_n
call ebx
add esp, 8
push eax
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
mov eax, dword [0x432450]
add esp, 8
test eax, eax
mov byte [ebp - 4], 0x3d
jl 0x424832
push 4
push str.ETRSCommand_line_marker:__d_n
call ebx
mov ecx, dword [0x432450]
add esp, 8
push ecx
push eax
call dword [sym.imp.ENGINE.DLL_void___cdecl_CPrintF_char_const__]
add esp, 8
push 0x4370f4
call esi
add esp, 4
mov dword [ebp + 8], eax
mov edx, dword [0x432450]
lea eax, [ebp + 8]
push edx
push 0x436a64
push eax
mov byte [ebp - 4], 0x3e
call dword [sym.imp.ENGINE.DLL_public:_long_int___cdecl_CTString::PrintF_char_const__]
mov edx, dword [sym.imp.ENGINE.DLL_class_CShell___pShell]
add esp, 0xc
lea ecx, [ebp + 8]
push ecx
mov ecx, dword [edx]
call dword [sym.imp.ENGINE.DLL_public:_void___thiscall_CShell::Execute_class_CTString_const__]
mov eax, dword [ebp + 8]
mov byte [ebp - 4], 0x3d
push eax
call edi
add esp, 4
mov ecx, dword [0x44300c]
mov edx, dword [0x4370bc]
push edx
lea ebx, [ecx + 0x14]
call esi
add esp, 4
mov esi, eax
mov eax, dword [ebx]
push eax
call edi
mov dword [ebx], esi
mov eax, dword [0x4370c0]
add esp, 4
test eax, eax
je 0x424863
call fcn.00409960
jmp 0x4248a2
call fcn.00409130
jmp 0x4248a2
call fcn.00422f10
mov eax, dword [ebp + 0x10]
mov dword [ebp - 4], 0xffffffff
push eax
call edi
mov ecx, dword [ebp - 0xc]
add esp, 4
mov eax, 1
mov dword fs:[0], ecx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret