Function at 0x475ea5
Capabilities:
Get process heap flags
Get process heap force flags

Disassembly:
push 0xffffffffffffffff
push 0x52fbc3
mov eax, dword fs:[0]
push eax
sub esp, 0x40
mov eax, dword [0x58b700]
xor eax, esp
mov dword [esp + 0x3c], eax
push ebp
push esi
push edi
mov eax, dword [0x58b700]
xor eax, esp
push eax
lea eax, [esp + 0x50]
mov dword fs:[0], eax
mov edi, ecx
push ecx
mov ecx, esp
push str.Btn_Install
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
and dword [esp + 0x5c], 0
mov ecx, dword [edi + 0x784]
mov eax, dword [ecx]
call dword [eax + 0x2c]
or ebp, 0xffffffff
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Btn_Run
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 1
mov ecx, dword [edi + 0x788]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Lbl_Check
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 2
mov ecx, dword [edi + 0x790]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Btn_Privacy
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 3
mov ecx, dword [edi + 0x794]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push 0x566390
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 4
mov ecx, dword [edi + 0x1430]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Btn_License
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 5
mov ecx, dword [edi + 0x798]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Btn_Modify
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 6
mov ecx, dword [edi + 0x79c]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Lbl_InstallFolder
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 7
mov ecx, dword [edi + 0x7b0]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.TrayIconTip1
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
mov dword [esp + 0x58], 8
mov esi, dword [eax]
push esi
call fcn.00450bfe
pop ecx
push eax
push esi
lea ecx, [edi + 0x828]
call fcn.00450b91
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.TrayIconTip2
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
mov dword [esp + 0x58], 9
mov esi, dword [eax]
push esi
call fcn.00450bfe
pop ecx
push eax
push esi
lea ecx, [edi + 0x840]
call fcn.00450b91
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.TrayIconTip3
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
mov dword [esp + 0x58], 0xa
mov esi, dword [eax]
push esi
call fcn.00450bfe
pop ecx
push eax
push esi
lea ecx, [edi + 0x858]
call fcn.00450b91
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.Lbl_selectlang
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 0xb
mov ecx, dword [edi + 0x7ac]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
lea ecx, [ecx - 0x10]
call fcn.00450b32
mov ecx, dword [edi + 0x7c0]
xor esi, esi
push esi
call fcn.004a356e
push ecx
mov ecx, esp
push str.downloading_tip
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov dword [esp + 0x5c], 0xc
mov ecx, dword [edi + 0x7c4]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov dword [esp + 0x58], ebp
mov ecx, dword [esp + 0x14]
lea ecx, [ecx - 0x10]
call fcn.00450b32
movzx edx, word [edi + 0x890]
lea ecx, [esp + 0x34]
call fcn.0047aa66
push 0x566480
mov edx, eax
mov dword [esp + 0x5c], 0xd
lea ecx, [esp + 0x20]
call fcn.00463d5b
pop ecx
push esi
push 1
lea ecx, [esp + 0x3c]
mov byte [esp + 0x60], 0xf
call fcn.00450f58
mov ecx, dword [edi + 0x7c8]
lea edx, [esp + 0x1c]
cmp dword [esp + 0x30], 8
cmovae edx, dword [esp + 0x1c]
mov eax, dword [ecx]
push edx
call dword [eax + 0x2c]
push ecx
mov ecx, esp
push 0x566484
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x10
mov ecx, dword [edi + 0x7f0]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.if_install_failed_tip
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x11
mov ecx, dword [edi + 0x7f4]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.check_network
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x12
mov ecx, dword [edi + 0x7f8]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.check_disk
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x13
mov ecx, dword [edi + 0x7fc]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push 0x566504
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x14
mov ecx, dword [edi + 0x800]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.download_pkg
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x15
mov ecx, dword [edi + 0x804]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.report_contact_tip
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x16
mov ecx, dword [edi + 0x808]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push 0x566554
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
mov byte [esp + 0x58], 0x17
push dword [eax]
mov ecx, dword [edi + 0x80c]
call fcn.004ac891
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.contact_tip
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x18
mov ecx, dword [edi + 0x80c]
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push 0x566584
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
mov byte [esp + 0x58], 0x19
push dword [eax]
mov ecx, dword [edi + 0x810]
call fcn.004af45d
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.remark_tip
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x1a
mov ecx, dword [edi + 0x810]
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.get_help
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x18]
push eax
call fcn.0044f515
push dword [eax]
mov byte [esp + 0x5c], 0x1b
mov ecx, dword [edi + 0x814]
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov byte [esp + 0x58], 0xf
mov ecx, dword [esp + 0x14]
add ecx, 0xfffffff0
call fcn.00450b32
push ecx
mov ecx, esp
push str.send_error_report
call fcn.00450a6b
mov ecx, dword [edi + 0x884]
lea eax, [esp + 0x1c]
push eax
call fcn.0044f515
mov byte [esp + 0x58], 0x1c
mov ecx, dword [edi + 0x818]
push dword [eax]
mov edx, dword [ecx]
call dword [edx + 0x2c]
mov ecx, dword [esp + 0x18]
lea ecx, [ecx - 0x10]
call fcn.00450b32
push esi
push 1
lea ecx, [esp + 0x24]
call fcn.00450f58
mov ecx, dword [esp + 0x50]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
mov ecx, dword [esp + 0x3c]
xor ecx, esp
call fcn.005008c3
add esp, 0x4c
ret