Function at 0x420860
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x4b8
mov eax, dword [0x4ea080]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [ebp + 8], 0x165d
push esi
push edi
mov edi, dword [ebp + 0xc]
mov esi, ecx
jne 0x420cc9
test edi, edi
jne 0x4208b3
mov ecx, dword [esi + 0x2cc]
push 0x64
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CProgressUI::SetValue_int_
mov eax, dword [esi + 4]
push 1
push eax
call dword [sym.imp.USER32.dll_KillTimer]
lea ecx, [esi - 4]
push 4
call fcn.0041f0e0
jmp 0x420cc9
cmp edi, 1
jne 0x42094c
mov ecx, dword [esi + 4]
push edi
mov edi, dword [sym.imp.USER32.dll_KillTimer]
push ecx
mov byte [esi + 0x6c8], 0
call edi
mov edx, dword [esi + 4]
push 2
push edx
call edi
mov ecx, dword [esi + 0x284]
mov eax, dword [ecx]
mov edx, dword [eax + 0xcc]
push 0
call edx
mov ecx, dword [esi + 0x288]
mov eax, dword [ecx]
mov edx, dword [eax + 0xcc]
push 0
call edx
mov ecx, dword [esi + 0x28c]
mov eax, dword [ecx]
mov edx, dword [eax + 0xcc]
push 1
call edx
mov ecx, dword [esi + 0x290]
mov eax, dword [ecx]
mov edx, dword [eax + 0xcc]
push 0
call edx
mov ecx, dword [esi + 0x2e0]
mov eax, dword [ecx]
mov edx, dword [eax + 0xd8]
push 1
call edx
mov ecx, dword [esi + 0x2e4]
mov eax, dword [ecx]
mov edx, dword [eax + 0x2c]
push 0x4b45f4
call edx
mov edi, dword [ebp + 0xc]
jmp 0x420cc9
cmp edi, 2
jne 0x4209c6
xor eax, eax
push 0xc6
push eax
lea ecx, [ebp - 0xca]
push ecx
mov word [ebp - 0xcc], ax
call fcn.0048f070
add esp, 0xc
call fcn.00422b80
mov ecx, eax
call fcn.00422b70
mov edi, eax
cmp edi, 0x63
jl 0x420987
mov edi, 0x63
push edi
push str._d__
lea edx, [ebp - 0xcc]
push 0x64
push edx
call fcn.0048f18c
mov ecx, dword [esi + 0x2d0]
mov eax, dword [ecx]
mov eax, dword [eax + 0x2c]
add esp, 0x10
lea edx, [ebp - 0xcc]
push edx
call eax
mov ecx, dword [esi + 0x2cc]
push edi
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CProgressUI::SetValue_int_
mov edi, dword [ebp + 0xc]
jmp 0x420cc9
cmp edi, 5
jne 0x420a37
mov eax, dword [0x4e9170]
sub eax, 0
je 0x420a18
dec eax
je 0x4209f9
dec eax
jne 0x420cc9
mov ecx, dword [esi + 0x27c]
push 0x4b4b44
mov dword [0x4e9170], eax
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CControlUI::SetBkImage_wchar_t_const__
jmp 0x420cc9
mov ecx, dword [esi + 0x27c]
push 0x4b4b1c
mov dword [0x4e9170], 2
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CControlUI::SetBkImage_wchar_t_const__
jmp 0x420cc9
mov ecx, dword [esi + 0x27c]
push 0x4b4628
mov dword [0x4e9170], 1
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CControlUI::SetBkImage_wchar_t_const__
jmp 0x420cc9
cmp edi, 3
jne 0x420cb3
mov eax, dword [ebp + 0x10]
cmp eax, 1
jne 0x420adb
call fcn.00421670
cmp byte [eax + 7], 0
je 0x420b9c
push str._fT_T
push 0x4b470c
push 2
lea ecx, [ebp - 0x4b8]
call fcn.00419910
mov ecx, dword [esi + 4]
push 0
push accept
push accept
push accept
push accept
push 0x100
push 0x96c80000
push str.Kb8n
push ecx
lea ecx, [ebp - 0x4b4]
call sym.SMAllSetup.exe_public:_struct_HWND______thiscall_DuiLib::CWindowWnd::Create_struct_HWND_____wchar_t_const___unsigned_long_int__unsigned_long_int__int__int__int__int__struct_HMENU____
lea ecx, [ebp - 0x4b4]
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CWindowWnd::CenterWindow_void_
lea ecx, [ebp - 0x4b4]
call sym.SMAllSetup.exe_public:_unsigned_int___thiscall_DuiLib::CWindowWnd::ShowModal_void_
cmp dword [ebp - 0x238], 1
jne 0x420b91
push str.shutdown__r__t_0
call fcn.004908cf
add esp, 4
jmp 0x420b91
test eax, eax
jne 0x420b21
push 0x4b4adc
push 0x4b470c
push 3
lea ecx, [ebp - 0x4b8]
call fcn.00419910
mov edx, dword [esi + 4]
push 0
push accept
push accept
push accept
push accept
push 0x100
push 0x96c80000
push str.Kb8n
push edx
jmp 0x420b70
cmp eax, 2
jne 0x420b9c
mov eax, dword [esi + 4]
push 1
push eax
call dword [sym.imp.USER32.dll_KillTimer]
push 0x4b4ac0
push 0x4b470c
push 1
lea ecx, [ebp - 0x4b8]
call fcn.00419910
push 0
push accept
push accept
push accept
push accept
push 0x100
push 0x96c80000
push str.Kb8n
push 0
lea ecx, [ebp - 0x4b4]
call sym.SMAllSetup.exe_public:_struct_HWND______thiscall_DuiLib::CWindowWnd::Create_struct_HWND_____wchar_t_const___unsigned_long_int__unsigned_long_int__int__int__int__int__struct_HMENU____
lea ecx, [ebp - 0x4b4]
call sym.SMAllSetup.exe_public:_void___thiscall_DuiLib::CWindowWnd::CenterWindow_void_
lea ecx, [ebp - 0x4b4]
call sym.SMAllSetup.exe_public:_unsigned_int___thiscall_DuiLib::CWindowWnd::ShowModal_void_
lea ecx, [ebp - 0x4b8]
call fcn.00419a00
call fcn.00421670
add eax, 8
cmp dword [eax + 0x14], 8
jb 0x420bac
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0xe8]
call fcn.00411320
push 0x4b1930
lea ecx, [ebp - 0xe8]
call fcn.00411440
push str.platform
lea ecx, [ebp - 0xe8]
call fcn.00411440
push 0x4b4a9c
lea ecx, [ebp - 0xe8]
call fcn.00411440
push 0x4c72f7
lea ecx, [ebp - 0x104]
call fcn.004023b0
push 1
call fcn.0048eae1
add esp, 4
test eax, eax
je 0x420c11
mov ecx, eax
call fcn.0040c600
mov edi, eax
jmp 0x420c13
xor edi, edi
lea ecx, [ebp - 0x104]
push ecx
sub esp, 0x1c
lea edx, [ebp - 0xe8]
mov ecx, esp
push edx
call fcn.004112f0
lea eax, [ebp - 0x120]
push eax
mov ecx, edi
call fcn.00425520
lea ecx, [ebp - 0x120]
call fcn.00418bd0
cmp dword [ebp - 0xf0], 0x10
mov eax, dword [ebp - 0x104]
jae 0x420c59
lea eax, [ebp - 0x104]
push eax
call fcn.00421670
mov ecx, eax
call fcn.0041f670
push eax
push str.FirstDownLoadCode
push str.PlayApp
call dword [sym.imp.KERNEL32.dll_WritePrivateProfileStringA]
lea ecx, [esi - 4]
call fcn.0041f7b0
lea ecx, [ebp - 0x104]
call fcn.00418bd0
lea ecx, [ebp - 0xe8]
call fcn.00410e40
mov ecx, dword [esi + 4]
push ecx
call dword [sym.imp.USER32.dll_DestroyWindow]
push 0
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call dword [sym.imp.KERNEL32.dll_TerminateProcess]
mov edi, dword [ebp + 0xc]
jmp 0x420cc9
cmp edi, 4
jne 0x420cc9
cmp dword [ebp + 0x10], 0x203
jne 0x420cc9
lea ecx, [esi - 4]
call fcn.0041f030
mov edx, dword [ebp + 0x10]
mov eax, dword [ebp + 8]
push edx
push edi
push eax
mov ecx, esi
call sym.SMAllSetup.exe_public_virtual:_long_int___thiscall_DuiLib::CShowdowFrameBase::HandleMessage_unsigned_int__unsigned_int__long_int_
mov ecx, dword [ebp - 4]
pop edi
xor ecx, ebp
pop esi
call fcn.0048ef91
mov esp, ebp
pop ebp
ret 0xc