Function at 0x418590
Capabilities:
Copy file
Create directory
Delete file

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x22fc
call fcn.004839d0
mov eax, dword [0x4ab00c]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x4ae09c], 8
mov eax, 0x4ae088
push ebx
cmovae eax, dword [0x4ae088]
push esi
push edi
push 0
push eax
call dword [sym.imp.KERNEL32.dll_CreateDirectoryW]
mov ecx, 0x4ad7e8
call fcn.004118b0
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileW]
test al, al
jne 0x419f19
push str.wt_ccsUTF_8
lea eax, [ebp - 0x22e4]
mov dword [ebp - 0x22e4], 0
push 0x4ad7e8
push eax
call fcn.0047443e
add esp, 0xc
test eax, eax
jne 0x419f19
mov eax, dword [ebp - 0x22e4]
test eax, eax
je 0x419f19
push eax
call fcn.00474cc9
add esp, 4
mov ecx, 0x3f9
push 0
call fcn.004114c0
add esp, 4
push str._Options__n
push dword [ebp - 0x22e4]
call fcn.00402b00
cmp dword [0x4ae894], 8
mov eax, 0x4ae880
cmovae eax, dword [0x4ae880]
push eax
push str.ScreenResolution_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0x14
mov esi, 0x497460
cmp byte [0x4ae898], 0
mov eax, esi
mov edi, 0x497464
cmove eax, edi
push eax
push 0x497468
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae899], 0
cmove eax, edi
push eax
push str.UseStartnetCmd_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae8b8], 0
cmove eax, edi
push eax
push str.BootPrompt_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
push str.TimeZone_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.LanguagePack_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.InputLocale_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push dword [0x4ae8b4]
push str.ScreenDPI_d_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0x24
mov eax, esi
cmp byte [0x4ae94e], 0
cmove eax, edi
push eax
push str.AddDrivers_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae950], 0
cmove eax, edi
push eax
push str.AddInstalledDrivers_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aee36], 0
cmove eax, edi
push eax
push str.OptimizeWIM_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae949], 0
cmove eax, edi
push eax
push str.InitScript_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae94a], 0
cmove eax, edi
push eax
push str.InitScriptHide_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae94b], 0
cmove eax, edi
push eax
push str.RunScript_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae94c], 0
cmove eax, edi
push eax
push str.RunScriptHide_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae94d], 0
cmove eax, edi
push eax
push str.BuildScript_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae96c], 0
cmove eax, edi
push eax
push str.BuildScriptHide_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4ae96d], 0
cmove eax, edi
push eax
push str.BuildScriptLog_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4af014], 0
cmove eax, edi
push eax
push str.WiFiExportProfiles_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
push dword [0x4af018]
push str.WiFiExportType_d_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4af01c], 0
cmove eax, edi
push eax
push str.WiFiExportClearText_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4af01d], 0
cmove eax, edi
push eax
push str.WiFiAutoConnect_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
push dword [0x4af020]
push str.MouseSpeed_d_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4af024], 0
cmove eax, edi
push eax
push str.MousePrecision_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4af025], 0
cmove eax, edi
push eax
push str.MouseSwap_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
push str._n_Paths__n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.IFW_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.TBIView_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.TBOSDT_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.Source_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str._n_License__n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.Name_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.Key_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0x40
push str.BIBMName_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.BIBMKey_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.Name_V3_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str.Key_V3_n
push dword [ebp - 0x22e4]
call fcn.00402b00
push str._n_General__n
push dword [ebp - 0x22e4]
call fcn.00402b00
cmp byte [0x4aba08], 0
mov eax, esi
cmove eax, edi
push eax
push str.Log_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0x34
mov eax, esi
cmp byte [0x4aba09], 0
cmove eax, edi
push eax
push str.LogReset_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aee32], 0
cmove eax, edi
push eax
push str.UseDismAPI_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aee33], 0
cmove eax, edi
push eax
push str.UseInstalledDism_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aee34], 0
cmove eax, edi
push eax
push str.UseDismx64_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aee35], 0
cmove eax, edi
push eax
push str.DismForceUnsigned_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba5c], 0
cmove eax, edi
push eax
push str.DismSaveLog_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba5d], 0
cmove eax, edi
push eax
push str.DismLogReset_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba10], 0
cmove eax, edi
push eax
push str.SkipLicense_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba19], 0
cmove eax, edi
push eax
push str.IgnoreWarnings_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba1a], 0
cmove eax, edi
push eax
push str.NoUSBLimit_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba1b], 0
cmove eax, edi
push eax
push str.Win7PEUSB3_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
cmp byte [0x4aba18], 0
mov eax, esi
cmove eax, edi
push eax
push str.WarnBIBMLicense_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba1c], 0
cmove eax, edi
push eax
push str.SkipWinREStatusCheck_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba1d], 0
cmove eax, edi
push eax
push str.BootWIMPromptRestart_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba1e], 0
cmove eax, edi
push eax
push str.BootWIMForceRestart_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
mov eax, esi
cmp byte [0x4aba1f], 0
cmove eax, edi
push eax
push str.BootWIMIgnoreDrvType_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
cmp byte [0x4aba20], 0
cmove esi, edi
push esi
push str.BootWIMMatchDrvLetters_s_n
push dword [ebp - 0x22e4]
call fcn.00402b00
add esp, 0xc
push dword [ebp - 0x22e4]
call fcn.00474523
add esp, 4
push 0x1024
call fcn.0046ba01
add esp, 4
mov esi, eax
mov dword [ebp - 0x22ec], esi
push 0x1024
push 0
push esi
call fcn.0046dcc0
add esp, 0xc
mov ecx, esi
push 0x4ad7e8
call fcn.00402b20
cmp dword [0x4ae084], 8
mov ecx, 0x4ae070
mov edi, eax
lea eax, [ebp - 0x22e0]
cmovae ecx, dword [0x4ae070]
push ecx
push str._simagew.ini
push eax
mov dword [ebp - 0x22e8], edi
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0x22e0]
call fcn.004118b0
test al, al
je 0x418d54
push 0x1024
call fcn.0046ba01
add esp, 4
mov esi, eax
mov dword [ebp - 0x22ec], esi
push 0x1024
push 0
push esi
call fcn.0046dcc0
add esp, 0xc
lea eax, [ebp - 0x22e0]
mov ecx, esi
push eax
call fcn.00402b20
push ecx
mov esi, eax
lea eax, [ebp - 0x4e0]
push 0x208
push eax
push 0x497b90
push str.License
mov ecx, esi
call fcn.00403030
test esi, esi
je 0x418d1d
push ecx
mov ecx, esi
call fcn.0041a0c0
lea esi, [ebp - 0x4e0]
lea ecx, [esi + 2]
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x418d26
sub esi, ecx
sar esi, 1
cmp esi, 2
jle 0x418d54
dec esi
test esi, esi
jle 0x418d54
nop
cmp word [ebp + esi*2 - 0x4e0], 0x20
je 0x419680
dec esi
test esi, esi
jg 0x418d40
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
mov byte [ebp - 0x22ed], 0
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x22e0]
push str._sSavedSettings.ini
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0x22e0]
call fcn.004118b0
test al, al
je 0x419772
push 0x1024
call fcn.0046ba01
add esp, 4
mov esi, eax
mov dword [ebp - 0x22ec], esi
push 0x1024
push 0
push esi
call fcn.0046dcc0
add esp, 0xc
lea eax, [ebp - 0x22e0]
mov ecx, esi
push eax
call fcn.00402b20
push ecx
mov ebx, eax
lea eax, [ebp - 0x4e0]
push 0x208
push eax
push str.UseSavedSettings
push 0x497c04
mov ecx, ebx
call fcn.00403030
lea eax, [ebp - 0x4e0]
push eax
call fcn.00471125
add esp, 4
cmp eax, 1
jne 0x419760
push 0
mov ecx, 0x3fb
call fcn.004114c0
add esp, 4
mov byte [ebp - 0x22ed], 1
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.ScreenResolution
push 0x497c04
push edi
push str.ScreenResolution
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.PauseBuild
push 0x497c04
push edi
push str.PauseBuild
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.UseStartnetCmd
push 0x497c04
push edi
push str.UseStartnetCmd
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.BootPrompt
push 0x497c04
push edi
push str.BootPrompt
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.TimeZone
push 0x497c04
push edi
push str.TimeZone
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.LanguagePack
push 0x497c04
push edi
push str.LanguagePack
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.InputLocale
push 0x497c04
push edi
push str.InputLocale
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.ScreenDPI
push 0x497c04
push edi
push str.ScreenDPI
call fcn.004184d0
add esp, 0x14
push 0
push 0x497d04
push str.Paths
push edi
push str.ifwpath
mov edx, str.Script_Options
mov ecx, ebx
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push 0x492ed8
push str.Paths
push edi
push str.tbiviewpath
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.TBOSDT
push str.Paths
push edi
push str.tbosdtpath
call fcn.004184d0
add esp, 0x14
mov edx, str.Script_Options
mov ecx, ebx
push 0
push str.Source
push str.Paths
push edi
push str.sourcepath
call fcn.004184d0
add esp, 0x14
mov ecx, 0x3fc
push 0
call fcn.004114c0
add esp, 4
mov eax, 0x4ae070
cmp dword [0x4ae084], 8
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._sTBLauncher.ini
push eax
call fcn.0040a9b0
add esp, 0xc
mov eax, 0x4ae088
cmp dword [0x4ae09c], 8
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._sTBLauncher.ini
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0xee0]
call fcn.004118b0
test al, al
jne 0x419027
push 0
lea eax, [ebp - 0xee0]
push eax
lea eax, [ebp - 0x18e0]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileW]
push 0x1024
call fcn.0046ba01
add esp, 4
mov esi, eax
mov dword [ebp - 0x22ec], esi
push 0x1024
push 0
push esi
call fcn.0046dcc0
add esp, 0xc
lea eax, [ebp - 0xee0]
mov ecx, esi
push eax
call fcn.00402b20
push 1
push 0x497d98
mov esi, eax
mov edx, str.TBLauncher_Options
push 0x497c04
push esi
push 0x497d98
mov ecx, ebx
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.RunWpeinit
push 0x497c04
push esi
push str.RunWpeinit
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.RunNetworkInit
push 0x497c04
push esi
push str.RunNetworkInit
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.BackgroundInit
push 0x497c04
push esi
push str.BackgroundInit
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.IFWModeParameters
push 0x497c04
push esi
push str.IFWModeParameters
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.FindBootDrive
push 0x497c04
push esi
push str.FindBootDrive
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.MatchBuildID
push 0x497c04
push esi
push str.MatchBuildID
call fcn.004184d0
add esp, 0x14
push 1
push str.MaxSearchTime
push 0x497c04
push esi
push str.MaxSearchTime
mov edx, str.TBLauncher_Options
mov ecx, ebx
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.UpdatePrograms
push 0x497c04
push esi
push str.UpdatePrograms
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 1
push str.DisableFirewall
push 0x497c04
push esi
push str.DisableFirewall
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push 0x497100
push 0x497c04
push esi
push 0x497100
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.WaitForRemovableStorage
push 0x497c04
push esi
push str.WaitForRemovableStorage
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.AlwaysOnTop
push 0x497c04
push esi
push str.AlwaysOnTop
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.ClosedTransparency
push 0x497c04
push esi
push str.ClosedTransparency
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.TransparentClosed
push 0x497c04
push esi
push str.TransparentClosed
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.WMIService
push 0x497c04
push esi
push str.WMIService
call fcn.004184d0
add esp, 0x14
push 0
push str.AccessibilityOpts
push 0x497c04
push esi
push str.AccessibilityOpts
mov edx, str.TBLauncher_Options
mov ecx, ebx
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.NarratorOpts
push 0x497c04
push esi
push str.NarratorOpts
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.MouseOver
push 0x497c04
push esi
push str.MouseOver
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.MouseLeave
push 0x497c04
push esi
push str.MouseLeave
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.MouseLeaveDelay
push 0x497c04
push esi
push str.MouseLeaveDelay
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push 0x498014
push 0x497c04
push esi
push 0x498014
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.ConsoleOpts
push 0x497c04
push esi
push str.ConsoleOpts
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.ConsoleFontSize
push 0x497c04
push esi
push str.ConsoleFontSize
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Options
mov ecx, ebx
push 0
push str.LogLevel
push 0x497c04
push esi
push str.LogLevel
call fcn.004184d0
add esp, 0x14
push 0
push str.MatchDrives
push 0x497c04
push esi
push str.MatchDrives
mov edx, str.TBLauncher_Options
mov ecx, ebx
call fcn.004184d0
add esp, 0x14
mov edx, str.TBLauncher_Menu
mov ecx, ebx
push 0
push str.DisplayCount
push str.Menu
push esi
push str.DisplayCount
call fcn.004184d0
add esp, 0x10
lea eax, [ebp - 0x4e0]
mov ecx, ebx
push 0x208
push eax
push str.ItemCount
push str.TBLauncher_Menu
call fcn.00403030
lea eax, [ebp - 0x4e0]
mov ecx, esi
push eax
push str.ItemCount
push str.Menu
call fcn.00403370
lea eax, [ebp - 0x4e0]
push eax
call fcn.00471125
add esp, 4
mov dword [ebp - 0x22ec], eax
cmp eax, 1
jl 0x419530
mov edi, 1
nop
push edi
lea eax, [ebp - 0xd0]
push str.TBLauncher_Menu_Item__d
push eax
call fcn.0040a810
add esp, 0xc
lea eax, [ebp - 0xba]
lea edx, [ebp - 0xd0]
mov ecx, ebx
push 1
push str.Name
push eax
push esi
push str.Name
call fcn.004184d0
add esp, 0x14
lea eax, [ebp - 0xba]
lea edx, [ebp - 0xd0]
mov ecx, ebx
push 1
push str.Path
push eax
push esi
push str.Path
call fcn.004184d0
add esp, 0x14
lea eax, [ebp - 0xba]
lea edx, [ebp - 0xd0]
mov ecx, ebx
push 0
push str.Path64
push eax
push esi
push str.Path64
call fcn.004184d0
add esp, 0x14
lea eax, [ebp - 0xba]
lea edx, [ebp - 0xd0]
mov ecx, ebx
push 1
push str.WorkingDir
push eax
push esi
push str.WorkingDir
call fcn.004184d0
add esp, 0x14
lea eax, [ebp - 0xba]
lea edx, [ebp - 0xd0]
mov ecx, ebx
push 1
push str.Parameters
push eax
push esi
push str.Parameters
call fcn.004184d0
add esp, 0x14
lea eax, [ebp - 0xba]
lea edx, [ebp - 0xd0]
mov ecx, ebx
push 1
push str.Icon
push eax
push esi
push str.Icon
call fcn.004184d0
inc edi
add esp, 0x14
cmp edi, dword [ebp - 0x22ec]
jle 0x419430
mov edi, dword [ebp - 0x22e8]
test ebx, ebx
je 0x41953c
push ecx
mov ecx, ebx
call fcn.0041a0c0
test esi, esi
je 0x419548
push ecx
mov ecx, esi
call fcn.0041a0c0
push 0
mov ecx, 0x73
call fcn.004114c0
add esp, 4
mov eax, 0x4ae070
cmp dword [0x4ae084], 8
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._sSavedSettings.ini
push eax
call fcn.0040a9b0
add esp, 0xc
lea eax, [ebp - 0x18e0]
push str.r_ccsUTF_8
push eax
lea eax, [ebp - 0x22e4]
push eax
call fcn.0047443e
add esp, 0xc
test eax, eax
jne 0x41976c
cmp dword [ebp - 0x22e4], eax
je 0x41976c
cmp dword [0x4ae09c], 8
mov dword [ebp - 0x22e8], eax
mov eax, 0x4ae088
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._s_startnet.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea eax, [ebp - 0xee0]
push str.wt_ccsUTF_8
push eax
lea eax, [ebp - 0x22e8]
push eax
call fcn.0047443e
add esp, 0xc
test eax, eax
jne 0x419750
mov eax, dword [ebp - 0x22e8]
test eax, eax
je 0x419750
push eax
call fcn.00474cc9
add esp, 4
xor bl, bl
xor bh, bh
push dword [ebp - 0x22e4]
call fcn.00474e66
add esp, 4
test eax, eax
jne 0x419731
push dword [ebp - 0x22e4]
xor eax, eax
mov word [ebp - 0x4e0], ax
lea eax, [ebp - 0x4e0]
push 0x208
push eax
call fcn.00474e5b
add esp, 0xc
lea eax, [ebp - 0x4e0]
test bl, bl
jne 0x4196e6
push 0x14
push str._startnet.cmd_Begin_
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x41971b
mov bl, 1
jmp 0x41971b
test esi, esi
jle 0x418d54
push 0
mov ecx, 0x3fa
call fcn.004114c0
add esp, 4
lea eax, [ebp - 0x4de]
add esi, esi
mov ecx, edi
add eax, esi
push eax
push 0x497b90
push str.License
call fcn.00403370
cmp esi, 0x410
jae 0x41a0b3
xor eax, eax
mov ecx, edi
mov word [ebp + esi - 0x4e0], ax
lea eax, [ebp - 0x4e0]
push eax
push str.Name
push str.License
call fcn.00403370
jmp 0x418d54
push 0x12
push str._startnet.cmd_End_
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
je 0x419731
cmp word [ebp - 0x4e0], 0x3b
jne 0x41971b
push dword [ebp - 0x22e8]
lea eax, [ebp - 0x4de]
push eax
call fcn.004745a3
add esp, 8
mov bh, 1
push dword [ebp - 0x22e4]
call fcn.00474e66
add esp, 4
test eax, eax
je 0x419630
push dword [ebp - 0x22e8]
call fcn.00474523
add esp, 4
test bh, bh
jne 0x419750
lea eax, [ebp - 0xee0]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push dword [ebp - 0x22e4]
call fcn.00474523
add esp, 4
jmp 0x41976c
test ebx, ebx
je 0x41976c
push ecx
mov ecx, ebx
call fcn.0041a0c0
mov ebx, dword [sym.imp.KERNEL32.dll_CopyFileW]
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._sInitScript.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
mov eax, 0x4ae088
cmp dword [0x4ae09c], 8
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._sInitScript.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0xee0]
call fcn.004118b0
test al, al
jne 0x419817
lea ecx, [ebp - 0x18e0]
call fcn.004118b0
test al, al
je 0x419817
push 0
mov ecx, 0x74
call fcn.004114c0
add esp, 4
lea eax, [ebp - 0xee0]
push 0
push eax
lea eax, [ebp - 0x18e0]
push eax
call ebx
push 0x497460
push 0x4981d4
push 0x497c04
mov ecx, edi
call fcn.00403370
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._sRunScript.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
mov eax, 0x4ae088
cmp dword [0x4ae09c], 8
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._sRunScript.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0xee0]
call fcn.004118b0
test al, al
jne 0x4198bc
lea ecx, [ebp - 0x18e0]
call fcn.004118b0
test al, al
je 0x4198bc
push 0
mov ecx, 0x75
call fcn.004114c0
add esp, 4
lea eax, [ebp - 0xee0]
push 0
push eax
lea eax, [ebp - 0x18e0]
push eax
call ebx
push 0x497460
push 0x498210
push 0x497c04
mov ecx, edi
call fcn.00403370
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._sBuildScript.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
mov eax, 0x4ae088
cmp dword [0x4ae09c], 8
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._sBuildScript.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0xee0]
call fcn.004118b0
test al, al
jne 0x419961
lea ecx, [ebp - 0x18e0]
call fcn.004118b0
test al, al
je 0x419961
push 0
mov ecx, 0x76
call fcn.004114c0
add esp, 4
lea eax, [ebp - 0xee0]
push 0
push eax
lea eax, [ebp - 0x18e0]
push eax
call ebx
push 0x497460
push 0x49824c
push 0x497c04
mov ecx, edi
call fcn.00403370
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x22e0]
push str._sTBWinRE.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0x22e0]
call fcn.004118b0
test al, al
jne 0x4199c0
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x22e0]
push str._sTBWinPE.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0x22e0]
call fcn.004118b0
test al, al
je 0x419f0d
cmp byte [ebp - 0x22ed], 0
jne 0x419f0d
push str.r_ccsUTF_8
lea eax, [ebp - 0x22e0]
push eax
lea eax, [ebp - 0x22e8]
push eax
call fcn.0047443e
add esp, 0xc
test eax, eax
jne 0x419f0d
cmp dword [ebp - 0x22e8], eax
je 0x419f0d
lea ecx, [ebp - 0x22e0]
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419a20
sub ecx, edx
sar ecx, 1
push 0
cmp word [ebp + ecx*2 - 0x22ec], 0x52
mov ecx, 0x77
je 0x419a46
mov ecx, 0x78
call fcn.004114c0
add esp, 4
push dword [ebp - 0x22e8]
call fcn.00474e66
add esp, 4
test eax, eax
jne 0x419eff
nop dword [eax]
nop dword [eax + eax]
push dword [ebp - 0x22e8]
xor eax, eax
mov word [ebp - 0x4e0], ax
lea eax, [ebp - 0x4e0]
push 0x208
push eax
call fcn.00474e5b
lea ecx, [ebp - 0x4e0]
add esp, 0xc
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419aa0
sub ecx, edx
sar ecx, 1
lea eax, [ecx - 1]
test eax, eax
jle 0x419ad7
nop word [eax + eax]
movzx ecx, word [ebp + eax*2 - 0x4e0]
cmp ecx, 0xa
je 0x419ad2
cmp ecx, 0xd
jne 0x419ad7
dec eax
test eax, eax
jg 0x419ac0
lea eax, [eax*2 + 2]
cmp eax, 0x410
jae 0x41a0b3
xor ecx, ecx
push 0xb
mov word [ebp + eax - 0x4e0], cx
lea eax, [ebp - 0x4e0]
push str.set_tbpath
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
je 0x419eff
push 0xb
lea eax, [ebp - 0x4e0]
push str.::_________
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
je 0x419eff
push 0xc
lea eax, [ebp - 0x4e0]
push str.set_ifwpath
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419b7b
lea ecx, [ebp - 0x4c8]
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419b52
sub ecx, edx
sar ecx, 1
je 0x419b7b
lea eax, [ebp - 0x4c8]
mov ecx, edi
push eax
push 0x497d04
push str.Paths
call fcn.00403370
push 0x10
lea eax, [ebp - 0x4e0]
push str.set_tbiviewpath
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419bc9
lea ecx, [ebp - 0x4c0]
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419ba0
sub ecx, edx
sar ecx, 1
je 0x419bc9
lea eax, [ebp - 0x4c0]
mov ecx, edi
push eax
push 0x492ed8
push str.Paths
call fcn.00403370
push 0xf
lea eax, [ebp - 0x4e0]
push str.set_tbosdtpath
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419c19
lea ecx, [ebp - 0x4c2]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419bf0
sub ecx, edx
sar ecx, 1
je 0x419c19
lea eax, [ebp - 0x4c2]
mov ecx, edi
push eax
push str.TBOSDT
push str.Paths
call fcn.00403370
push 0xf
lea eax, [ebp - 0x4e0]
push str.set_sourcepath
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419c69
lea ecx, [ebp - 0x4c2]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419c40
sub ecx, edx
sar ecx, 1
je 0x419c69
lea eax, [ebp - 0x4c2]
mov ecx, edi
push eax
push str.Source
push str.Paths
call fcn.00403370
push 0x15
lea eax, [ebp - 0x4e0]
push str.set_screenresolution
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419cb9
lea ecx, [ebp - 0x4b6]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419c90
sub ecx, edx
sar ecx, 1
je 0x419cb9
lea eax, [ebp - 0x4b6]
mov ecx, edi
push eax
push str.ScreenResolution
push 0x497c04
call fcn.00403370
push 0xf
lea eax, [ebp - 0x4e0]
push str.set_pausebuild
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419d09
lea ecx, [ebp - 0x4c2]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419ce0
sub ecx, edx
sar ecx, 1
je 0x419d09
lea eax, [ebp - 0x4c2]
mov ecx, edi
push eax
push str.PauseBuild
push 0x497c04
call fcn.00403370
push 0x13
lea eax, [ebp - 0x4e0]
push str.set_usestartnetcmd
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419d59
lea ecx, [ebp - 0x4ba]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419d30
sub ecx, edx
sar ecx, 1
je 0x419d59
lea eax, [ebp - 0x4ba]
mov ecx, edi
push eax
push str.UseStartnetCmd
push 0x497c04
call fcn.00403370
push 0xf
lea eax, [ebp - 0x4e0]
push str.set_bootprompt
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419da9
lea ecx, [ebp - 0x4c2]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419d80
sub ecx, edx
sar ecx, 1
je 0x419da9
lea eax, [ebp - 0x4c2]
mov ecx, edi
push eax
push str.BootPrompt
push 0x497c04
call fcn.00403370
push 0xd
lea eax, [ebp - 0x4e0]
push str.set_timezone
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419df9
lea ecx, [ebp - 0x4c6]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419dd0
sub ecx, edx
sar ecx, 1
je 0x419df9
lea eax, [ebp - 0x4c6]
mov ecx, edi
push eax
push str.TimeZone
push 0x497c04
call fcn.00403370
push 0x11
lea eax, [ebp - 0x4e0]
push str.set_languagepack
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419e49
lea ecx, [ebp - 0x4be]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419e20
sub ecx, edx
sar ecx, 1
je 0x419e49
lea eax, [ebp - 0x4be]
mov ecx, edi
push eax
push str.LanguagePack
push 0x497c04
call fcn.00403370
push 0x10
lea eax, [ebp - 0x4e0]
push str.set_inputlocale
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419e99
lea ecx, [ebp - 0x4c0]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419e70
sub ecx, edx
sar ecx, 1
je 0x419e99
lea eax, [ebp - 0x4c0]
mov ecx, edi
push eax
push str.InputLocale
push 0x497c04
call fcn.00403370
push 0xe
lea eax, [ebp - 0x4e0]
push str.set_screendpi
push eax
call fcn.0047114f
add esp, 0xc
test eax, eax
jne 0x419ee9
lea ecx, [ebp - 0x4c4]
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x419ec0
sub ecx, edx
sar ecx, 1
je 0x419ee9
lea eax, [ebp - 0x4c4]
mov ecx, edi
push eax
push str.ScreenDPI
push 0x497c04
call fcn.00403370
push dword [ebp - 0x22e8]
call fcn.00474e66
add esp, 4
test eax, eax
je 0x419a70
push dword [ebp - 0x22e8]
call fcn.00474523
add esp, 4
test edi, edi
je 0x419f19
push ecx
mov ecx, edi
call fcn.0041a0c0
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._sTBLauncher.ini
push eax
call fcn.0040a9b0
add esp, 0xc
mov eax, 0x4ae088
cmp dword [0x4ae09c], 8
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._sTBLauncher.ini
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0xee0]
call fcn.004118b0
mov esi, 0x491dd8
test al, al
jne 0x419fe0
lea ecx, [ebp - 0x18e0]
call fcn.004118b0
test al, al
je 0x419fe0
lea eax, [ebp - 0x22fc]
push 0x79
push eax
call fcn.0046cd70
mov ecx, esi
mov edx, 1
push 0
mov eax, dword [eax]
test eax, eax
cmovne ecx, eax
call fcn.00411390
add esp, 0xc
push dword [ebp - 0x22f4]
call fcn.0046bc3a
add esp, 4
push dword [ebp - 0x22fc]
call fcn.0046bc3a
add esp, 4
lea eax, [ebp - 0xee0]
push 0
push eax
lea eax, [ebp - 0x18e0]
push eax
call ebx
cmp dword [0x4ae084], 8
mov eax, 0x4ae070
cmovae eax, dword [0x4ae070]
push eax
lea eax, [ebp - 0x18e0]
push str._s_startnet.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
mov eax, 0x4ae088
cmp dword [0x4ae09c], 8
cmovae eax, dword [0x4ae088]
push eax
lea eax, [ebp - 0xee0]
push str._s_startnet.cmd
push eax
call fcn.0040a9b0
add esp, 0xc
lea ecx, [ebp - 0xee0]
call fcn.004118b0
test al, al
jne 0x41a0a2
lea ecx, [ebp - 0x18e0]
call fcn.004118b0
test al, al
je 0x41a0a2
lea eax, [ebp - 0x22fc]
push 0x7a
push eax
call fcn.0046cd70
push 0
mov edx, 1
mov eax, dword [eax]
test eax, eax
cmovne esi, eax
mov ecx, esi
call fcn.00411390
add esp, 0xc
push dword [ebp - 0x22f4]
call fcn.0046bc3a
add esp, 4
push dword [ebp - 0x22fc]
call fcn.0046bc3a
add esp, 4
lea eax, [ebp - 0xee0]
push 0
push eax
lea eax, [ebp - 0x18e0]
push eax
call ebx
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.0046b9f0
mov esp, ebp
pop ebp
ret
call fcn.0046bb60
int3