Function at 0x420a5b
Capabilities:
Check for time delay via gettickcount
Contain obfuscated stackstrings
Create thread
Get common file path
Get program files directory
Get startup folder

Disassembly:
push 0xafc
mov eax, 0x529015
call fcn.004e27d2
mov ebx, ecx
mov dword [ebp - 0xaf0], ebx
call fcn.0043200e
mov dword [0x57ee04], ebx
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov dword [ebp - 0xb08], eax
lea edi, [ebx + 0x5c8]
xor eax, eax
mov ecx, ebx
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
xor eax, eax
mov byte [ebx + 0x5bc], al
mov byte [ebx + 0x5a0], 1
mov byte [ebx + 0x58c], al
call fcn.00424443
xor esi, esi
mov dword [ebx + 0x55c], eax
lea edi, [ebx + 0x2c]
mov dword [ebx + 0x5c0], esi
push 0xffffffffffffffff
mov ecx, edi
mov dword [ebx + 0x5c4], esi
call fcn.0044a7d6
push str.closebtn
mov ecx, edi
call fcn.004483c9
push str.minbtn
mov ecx, edi
mov dword [ebx + 0x35c], eax
call fcn.004483c9
push str.main_tablayout
mov ecx, edi
mov dword [ebx + 0x358], eax
call fcn.004483c9
push str.install_file_path_edit
mov ecx, edi
mov dword [ebx + 0x368], eax
call fcn.004483c9
push str.install_progress
mov ecx, edi
mov dword [ebx + 0x36c], eax
call fcn.004483c9
push str.install_label
mov ecx, edi
mov dword [ebx + 0x370], eax
call fcn.004483c9
push str.space_free
mov ecx, edi
mov dword [ebx + 0x374], eax
call fcn.004483c9
push str.space_need
mov ecx, edi
mov dword [ebx + 0x37c], eax
call fcn.004483c9
push str.install_setting
mov ecx, edi
mov dword [ebx + 0x378], eax
call fcn.004483c9
push str.license_link
mov ecx, edi
mov dword [ebx + 0x464], eax
call fcn.004483c9
push str.license_checkbox
mov ecx, edi
mov dword [ebx + 0x468], eax
call fcn.004483c9
push str.agree_improvement_checkbox
mov ecx, edi
mov dword [ebx + 0x46c], eax
call fcn.004483c9
push str.set_layout
mov ecx, edi
mov dword [ebx + 0x470], eax
call fcn.004483c9
push str.page_layout
mov ecx, edi
mov dword [ebx + 0x474], eax
call fcn.004483c9
mov dword [ebx + 0x478], eax
push str.install_btn
mov ecx, edi
call fcn.004483c9
push 0x559db8
mov ecx, edi
mov dword [ebx + 0x47c], eax
call fcn.004483c9
push str.license_japanese
mov ecx, edi
mov dword [ebx + 0x480], eax
call fcn.004483c9
push str.license_text
mov ecx, edi
mov dword [ebx + 0x484], eax
call fcn.004483c9
push str.license_text_layout
mov ecx, edi
mov dword [ebx + 0x488], eax
call fcn.004483c9
push str.language_combox
mov ecx, edi
mov dword [ebx + 0x48c], eax
call fcn.004483c9
push str.select_language_text
mov ecx, edi
mov dword [ebx + 0x490], eax
call fcn.004483c9
push str.install_path_text
mov ecx, edi
mov dword [ebx + 0x4a8], eax
call fcn.004483c9
push str.browser_btn
mov ecx, edi
mov dword [ebx + 0x4ac], eax
call fcn.004483c9
push str.image_play
mov ecx, edi
mov dword [ebx + 0x4b0], eax
call fcn.004483c9
push str.backgroudlayout
mov ecx, edi
mov dword [ebx + 0x4b8], eax
call fcn.004483c9
push str.text_fail_retry
mov ecx, edi
mov dword [ebx + 0x4bc], eax
call fcn.004483c9
push str.text_fail_advice
mov ecx, edi
mov dword [ebx + 0x494], eax
call fcn.004483c9
push str.img_warning
mov ecx, edi
mov dword [ebx + 0x498], eax
call fcn.004483c9
push str.start_app
mov ecx, edi
mov dword [ebx + 0x4a0], eax
call fcn.004483c9
push str.text_startshortcut
mov ecx, edi
mov dword [ebx + 0x4a4], eax
call fcn.004483c9
mov ecx, dword [ebx + 0x494]
mov dword [ebx + 0x49c], eax
push esi
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, dword [ebx + 0x498]
push esi
mov eax, dword [ecx]
call dword [eax + 0xcc]
mov ecx, dword [ebx + 0x4a0]
push esi
mov eax, dword [ecx]
call dword [eax + 0xcc]
sub esp, 0x18
mov ecx, esp
push 0x554928
call fcn.004099b0
mov ecx, ebx
call fcn.004244d3
push 0xffffffffffffffff
push str.image_play_option_d
lea ecx, [ebp - 0xa5c]
call fcn.0044ddff
lea ecx, [ebp - 0x9d8]
mov dword [ebp - 4], esi
call fcn.0044de23
xor eax, eax
lea ecx, [ebp - 0xa5c]
inc eax
mov byte [ebp - 4], al
push eax
mov dword [ebp - 0xae4], eax
call fcn.0044e46d
push eax
lea eax, [ebp - 0x9d8]
push eax
call fcn.0044e3dd
add esp, 0xc
lea ecx, [ebp - 0x9d8]
call fcn.0044e46d
push eax
mov ecx, edi
call fcn.004483c9
mov ecx, eax
mov dword [ebp - 0xaec], ecx
test ecx, ecx
je 0x420e55
lea esi, [ebx + 0x4c0]
mov ebx, dword [ebp - 0xae4]
lea eax, [ebp - 0xaec]
cmp eax, dword [esi + 4]
jae 0x420dea
cmp dword [esi], eax
ja 0x420dea
mov ecx, eax
mov eax, dword [esi + 4]
sub ecx, dword [esi]
sar ecx, 2
mov dword [ebp - 0xae4], ecx
cmp eax, dword [esi + 8]
jne 0x420dda
push ecx
mov ecx, esi
call fcn.0040cf1f
mov ecx, dword [ebp - 0xae4]
mov edx, dword [esi + 4]
mov eax, dword [esi]
test edx, edx
je 0x420e09
mov eax, dword [eax + ecx*4]
mov dword [edx], eax
jmp 0x420e09
mov eax, dword [esi + 4]
cmp eax, dword [esi + 8]
jne 0x420e00
push ecx
mov ecx, esi
call fcn.0040cf1f
mov ecx, dword [ebp - 0xaec]
mov eax, dword [esi + 4]
test eax, eax
je 0x420e09
mov dword [eax], ecx
add dword [esi + 4], 4
lea ecx, [ebp - 0xa5c]
inc ebx
push ebx
call fcn.0044e46d
push eax
lea eax, [ebp - 0x9d8]
push eax
call fcn.0044e3dd
add esp, 0xc
lea ecx, [ebp - 0x9d8]
call fcn.0044e46d
push eax
mov ecx, edi
call fcn.004483c9
mov ecx, eax
mov dword [ebp - 0xaec], ecx
test ecx, ecx
jne 0x420da8
mov ebx, dword [ebp - 0xaf0]
xor esi, esi
push 0x558280
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 2
call fcn.0044e46d
mov dword [ebp - 0xae4], eax
test eax, eax
jne 0x420e88
mov eax, esi
jmp 0x420ec4
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x420e8d
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x420eab
xor eax, eax
jmp 0x420ec4
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae4]
mov ecx, esp
push 3
push esi
call fcn.00403692
push eax
call fcn.0050302a
pop ecx
mov esi, eax
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x858]
mov dword [ebp - 0xafc], esi
call fcn.0044df15
push str.Site_id
mov ecx, edi
mov dword [ebx + 0x588], esi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 3
call fcn.0044e46d
xor esi, esi
mov dword [ebp - 0xae4], eax
test eax, eax
je 0x420f3a
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x420f1e
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x420f3e
xor esi, esi
mov eax, esi
jmp 0x420f59
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae4]
mov ecx, esp
push 3
push esi
call fcn.00403692
xor esi, esi
push eax
call fcn.0050302a
pop ecx
lea ecx, [ebp - 0x858]
mov dword [ebp - 0xaf0], eax
mov byte [ebp - 4], 1
call fcn.0044df15
push str.Language_id
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 4
call fcn.0044e46d
mov dword [ebp - 0xae4], eax
test eax, eax
je 0x420fc5
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x420fa9
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x420fc9
xor esi, esi
mov eax, esi
jmp 0x420fe4
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae4]
mov ecx, esp
push 3
push esi
call fcn.00403692
xor esi, esi
push eax
call fcn.0050302a
pop ecx
lea ecx, [ebp - 0x858]
mov dword [ebp - 0xae4], eax
mov byte [ebp - 4], 1
call fcn.0044df15
push str.Gif_duration
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 5
call fcn.0044e46d
mov dword [ebp - 0xae8], eax
test eax, eax
je 0x421050
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x421034
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x421054
xor esi, esi
mov eax, esi
jmp 0x42106f
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae8]
mov ecx, esp
push 3
push esi
call fcn.00403692
xor esi, esi
push eax
call fcn.0050302a
pop ecx
lea ecx, [ebp - 0x858]
mov dword [ebx + 0x584], eax
mov byte [ebp - 4], 1
call fcn.0044df15
push str.NeedStart_flag
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 6
call fcn.0044e46d
mov dword [ebp - 0xae8], eax
test eax, eax
je 0x4210db
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x4210bf
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x4210df
xor esi, esi
mov eax, esi
jmp 0x4210fa
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae8]
mov ecx, esp
push 3
push esi
call fcn.00403692
xor esi, esi
push eax
call fcn.0050302a
pop ecx
lea ecx, [ebp - 0x858]
mov dword [ebx + 0x590], eax
mov byte [ebp - 4], 1
call fcn.0044df15
push str.admin_flag
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 7
call fcn.0044e46d
mov dword [ebp - 0xae8], eax
test eax, eax
je 0x421166
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x42114a
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x42116a
xor esi, esi
mov eax, esi
jmp 0x421185
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae8]
mov ecx, esp
push 3
push esi
call fcn.00403692
xor esi, esi
push eax
call fcn.0050302a
pop ecx
lea ecx, [ebp - 0x858]
mov dword [ebx + 0x598], eax
mov byte [ebp - 4], 1
call fcn.0044df15
push str.Software_name
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 8
call fcn.0044e46d
push eax
lea ecx, [ebp - 0x8d0]
call fcn.004099b0
lea ecx, [ebp - 0x858]
mov byte [ebp - 4], 0xa
call fcn.0044df15
push str.Extra_download_url
mov ecx, edi
call fcn.004483c9
lea ecx, [ebp - 0xae0]
push ecx
mov ecx, eax
mov edx, dword [eax]
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 0xb
call fcn.0044e46d
push eax
lea ecx, [ebp - 0x8b8]
call fcn.004099b0
lea ecx, [ebp - 0xae0]
mov byte [ebp - 4], 0xd
call fcn.0044df15
push str.MainPid
mov ecx, edi
call fcn.004483c9
test eax, eax
je 0x4212aa
mov edx, dword [eax]
lea ecx, [ebp - 0x858]
push ecx
mov ecx, eax
call dword [edx + 0x28]
mov ecx, eax
mov byte [ebp - 4], 0xe
call fcn.0044e46d
mov dword [ebp - 0xae8], eax
test eax, eax
je 0x421275
mov ecx, eax
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x421259
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x421279
xor esi, esi
mov eax, esi
jmp 0x421294
add esi, esi
mov eax, esi
call fcn.004e29e0
mov edx, dword [ebp - 0xae8]
mov ecx, esp
push 3
push esi
call fcn.00403692
xor esi, esi
push eax
call fcn.0050302a
pop ecx
lea ecx, [ebp - 0x858]
mov byte [ebp - 4], 0xd
call fcn.0044df15
or dword [ebx + 0x568], 0xffffffff
push 0x158
call fcn.004e1d39
pop ecx
mov dword [ebp - 0xaf4], eax
mov byte [ebp - 4], 0xf
mov ecx, eax
push dword [ebp - 0xaf0]
push dword [ebp - 0xae4]
push dword [ebp - 0xafc]
call fcn.00406c06
push esi
mov byte [ebp - 4], 0xd
mov ecx, eax
push edi
mov dword [ebx + 0x560], eax
call fcn.00407ecd
lea eax, [ebp - 0x7a4]
push eax
call dword [sym.imp.KERNEL32.DLL_GetLocalTime]
mov esi, 0x208
lea eax, [ebp - 0x354]
push esi
xor edi, edi
push edi
push eax
call fcn.004fb430
movzx eax, word [ebp - 0x796]
push eax
movzx eax, word [ebp - 0x798]
push eax
movzx eax, word [ebp - 0x79a]
push eax
movzx eax, word [ebp - 0x79c]
push eax
movzx eax, word [ebp - 0x79e]
push eax
movzx eax, word [ebp - 0x7a2]
push eax
movzx eax, word [ebp - 0x7a4]
push eax
lea eax, [ebp - 0x354]
push str._.4d_.2d_.2d_.2d_.2d_.2d_.3d
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
lea eax, [ebp - 0x354]
push eax
call fcn.00401963
add esp, 0x34
lea ecx, [ebx + 0x5a4]
push eax
lea eax, [ebp - 0x354]
push eax
call fcn.00402310
push esi
lea eax, [ebp - 0x55c]
push edi
push eax
call fcn.004fb430
add esp, 0xc
lea eax, [ebp - 0x55c]
push edi
push 0x26
push eax
push edi
call dword [sym.imp.SHELL32.dll_SHGetSpecialFolderPathW]
lea ecx, [ebp - 0x954]
call fcn.0044de23
lea eax, [ebp - 0x55c]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x954]
call fcn.0044dfb7
push 0x559cf0
lea ecx, [ebp - 0x954]
call fcn.0044e040
push 0x55b08c
lea ecx, [ebp - 0x954]
call fcn.0044e040
lea ecx, [ebp - 0x954]
call fcn.0044e46d
mov esi, eax
push esi
call fcn.00401963
pop ecx
push eax
push esi
lea ecx, [ebx + 0x528]
call fcn.00402310
mov eax, dword [ebx + 0x36c]
lea ecx, [ebp - 0x954]
mov esi, dword [eax]
call fcn.0044e46d
mov ecx, dword [ebx + 0x36c]
push eax
call dword [esi + 0x2c]
push 7
pop ecx
xor eax, eax
mov dword [ebp - 0x780], ecx
mov dword [ebp - 0x784], edi
mov word [ebp - 0x794], ax
mov dword [ebp - 0x7c0], ecx
mov dword [ebp - 0x7c4], edi
mov word [ebp - 0x7d4], ax
lea eax, [ebp - 0x7d4]
mov byte [ebp - 4], 0x12
push eax
lea esi, [ebx + 0x540]
mov ecx, ebx
push esi
call fcn.0041b194
test eax, eax
je 0x421791
lea ecx, [ebx + 0x510]
lea eax, [ebp - 0x7d4]
cmp ecx, eax
je 0x421486
push 0xffffffffffffffff
push edi
push eax
call fcn.00402389
push 0x559cf0
lea eax, [ebp - 0x77c]
push esi
push eax
call fcn.0042777e
add esp, 0xc
lea ecx, [ebp - 0x794]
push eax
call fcn.004021ad
push edi
push 1
lea ecx, [ebp - 0x77c]
call fcn.00402226
push edi
lea eax, [ebp - 0x7bc]
mov ecx, ebx
push eax
call fcn.0042363c
push eax
lea eax, [ebp - 0x794]
mov byte [ebp - 4], 0x13
push eax
lea eax, [ebp - 0x77c]
push eax
call fcn.00427821
add esp, 0xc
lea ecx, [ebp - 0x794]
push eax
call fcn.004021ad
push edi
push 1
lea ecx, [ebp - 0x77c]
call fcn.00402226
push edi
push 1
lea ecx, [ebp - 0x7bc]
mov byte [ebp - 4], 0x12
call fcn.00402226
mov eax, dword [ebp - 0x784]
lea ecx, [ebp - 0x794]
add eax, 0xfffffffc
push eax
push edi
lea eax, [ebp - 0x7bc]
push eax
call fcn.00402170
push str..log
push eax
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x14
push eax
call fcn.00427751
add esp, 0xc
lea ecx, [ebp - 0x794]
push eax
call fcn.004021ad
push edi
push 1
lea ecx, [ebp - 0x77c]
call fcn.00402226
push edi
push 1
lea ecx, [ebp - 0x7bc]
call fcn.00402226
lea ecx, [ebp - 0x830]
call fcn.004049a6
lea ecx, [ebp - 0x830]
mov byte [ebp - 4], 0x15
call fcn.004191ea
push str._datetime___Thread___thread___msg
lea ecx, [ebp - 0x77c]
call fcn.00409c4d
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x16
push eax
push 8
push 0x80
lea ecx, [ebp - 0x830]
call fcn.00404acb
push edi
push 1
lea ecx, [ebp - 0x77c]
mov byte [ebp - 4], 0x15
call fcn.0040c02b
mov esi, str.true
lea ecx, [ebp - 0x77c]
push esi
call fcn.00409c4d
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x17
push eax
push 1
push 0x80
lea ecx, [ebp - 0x830]
call fcn.00404acb
push edi
push 1
lea ecx, [ebp - 0x77c]
mov byte [ebp - 4], 0x15
call fcn.0040c02b
push esi
lea ecx, [ebp - 0x77c]
call fcn.00409c4d
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x18
push eax
push 4
push 0x80
lea ecx, [ebp - 0x830]
call fcn.00404acb
push edi
push 1
lea ecx, [ebp - 0x77c]
mov byte [ebp - 4], 0x15
call fcn.0040c02b
push esi
lea ecx, [ebp - 0x77c]
call fcn.00409c4d
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x19
push eax
push 2
push 0x80
lea ecx, [ebp - 0x830]
call fcn.00404acb
push edi
push 1
lea ecx, [ebp - 0x77c]
mov byte [ebp - 4], 0x15
call fcn.0040c02b
cmp dword [ebp - 0x780], 8
lea edi, [ebp - 0x794]
cmovae edi, dword [ebp - 0x794]
test edi, edi
je 0x4216b1
mov ecx, edi
xor esi, esi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, si
jne 0x421697
sub ecx, edx
sar ecx, 1
lea esi, [ecx + 1]
cmp esi, 0x3fffffff
jle 0x4216b5
xor eax, eax
jmp 0x4216ca
add esi, esi
mov eax, esi
call fcn.004e29e0
mov ecx, esp
mov edx, edi
push 3
push esi
call fcn.00403692
push eax
lea ecx, [ebp - 0x77c]
call fcn.00409c4d
lea eax, [ebp - 0x77c]
mov byte [ebp - 4], 0x1a
push eax
push 0x10
push 0x80
lea ecx, [ebp - 0x830]
call fcn.00404acb
xor eax, eax
mov byte [ebp - 4], 0x15
push eax
push 1
lea ecx, [ebp - 0x77c]
call fcn.0040c02b
push str.default
lea ecx, [ebp - 0x77c]
call fcn.00409c4d
mov byte [ebp - 4], 0x1b
mov ecx, dword [0x57eeb8]
mov eax, dword [ecx]
call dword [eax + 8]
mov esi, eax
push esi
mov dword [ebp - 0xaf4], esi
call fcn.0040371d
pop ecx
mov byte [ebp - 4], 0x1c
lea ecx, [ebp - 0x77c]
mov eax, dword [0x57eeb8]
push 1
push ecx
mov ecx, dword [eax + 0x38]
call fcn.00405f7e
mov edi, eax
push esi
mov byte [ebp - 4], 0x1d
call fcn.0040373c
mov byte [ebp - 4], 0x1b
pop ecx
test edi, edi
je 0x421772
lea eax, [ebp - 0x830]
mov ecx, edi
push eax
call fcn.00405c4c
xor eax, eax
lea ecx, [ebp - 0x77c]
push eax
push 1
call fcn.0040c02b
lea ecx, [ebp - 0x830]
mov byte [ebp - 4], 0x12
call fcn.004049d3
push 3
call sym.Setup.exe_curl_global_init
mov dword [ebp - 0xae8], eax
pop ecx
test eax, eax
je 0x42181e
push ecx
push ecx
push str.void___thiscall_InstallUIMainWnd::InitWindow_void_
push 0xb66
push str........._srcCommoninstall_ui_mainwnd.cpp
push 0x80
lea ecx, [ebp - 0x48]
call fcn.004064f1
push str.default
push 1
push eax
mov byte [ebp - 4], 0x1e
call fcn.00406584
mov esi, eax
add esp, 0xc
cmp byte [esi + 0x1c], 0
je 0x4217ff
push str.curl_global_init_is_error__code__
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x4217ff
lea eax, [ebp - 0xae8]
push eax
lea ecx, [esi + 0x20]
call fcn.0040f6a6
mov byte [ebp - 4], 0x1f
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], vtable.el::base::Writer.0
call fcn.004067e3
lea ecx, [ebp - 0x1c]
call fcn.00409846
mov byte [ebp - 4], 0x12
lea ecx, [ebx + 0x5dc]
call fcn.004090c3
lea ecx, [ebx + 0x5e8]
call fcn.004090c3
lea ecx, [ebx + 0x5f4]
call fcn.004090c3
xor eax, eax
push eax
push eax
push ebx
push 0x41f196
push eax
push eax
call fcn.004fe593
mov dword [ebx + 0x5cc], eax
xor eax, eax
push eax
push eax
push ebx
push 0x41ebee
push eax
push eax
call fcn.004fe593
mov dword [ebx + 0x5d0], eax
mov dword [ebx + 0x564], 0x1b58
call fcn.0042d6c5
mov esi, eax
xor edi, edi
push 0x208
lea eax, [ebp - 0x764]
mov dword [ebp - 0xaf4], esi
push edi
push eax
call fcn.004fb430
add esp, 0x3c
lea eax, [ebp - 0x764]
push 0x104
push eax
push edi
call dword [sym.imp.KERNEL32.DLL_GetModuleFileNameW]
lea edx, [ebp - 0x764]
lea ecx, [ebp - 0x888]
call fcn.0042e319
push ecx
push ecx
push str.void___thiscall_InstallUIMainWnd::InitWindow_void_
push 0xb7f
push str........._srcCommoninstall_ui_mainwnd.cpp
mov eax, str.False
lea ecx, [ebp - 0x48]
test esi, esi
mov edi, str.True
push 0x80
cmove edi, eax
call fcn.004064f1
push str.default
push 1
push eax
mov byte [ebp - 4], 0x21
call fcn.00406584
mov esi, eax
add esp, 0xc
cmp byte [esi + 0x1c], 0
je 0x421915
push str._Downloader_version:
lea ecx, [esi + 0x20]
call fcn.00406419
lea eax, [ebp - 0x888]
mov ecx, esi
push eax
call fcn.0040eeca
mov esi, eax
cmp byte [esi + 0x1c], 0
je 0x421947
push str.__64Bit:
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421947
push edi
lea ecx, [esi + 0x20]
call fcn.00406419
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], vtable.el::base::Writer.0
call fcn.004067e3
lea ecx, [ebp - 0x1c]
call fcn.00409846
mov esi, dword [sym.imp.USER32.dll_GetSystemMetrics]
xor edi, edi
push edi
call esi
push 1
mov dword [ebp - 0xae8], eax
call esi
lea edx, [ebp - 0xaec]
mov dword [ebp - 0xaec], eax
lea ecx, [ebp - 0xae8]
call fcn.0042e45f
push ecx
push ecx
push str.void___thiscall_InstallUIMainWnd::InitWindow_void_
push 0xb82
push str........._srcCommoninstall_ui_mainwnd.cpp
push 0x80
lea ecx, [ebp - 0x48]
movsd qword [ebp - 0xb04], xmm0
call fcn.004064f1
push str.default
push 1
push eax
mov byte [ebp - 4], 0x23
call fcn.00406584
mov esi, eax
add esp, 0xc
cmp byte [esi + 0x1c], 0
je 0x421a2b
push str._Screen:
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421a2b
push dword [ebp - 0xae8]
lea ecx, [esi + 0x20]
call fcn.0040633d
cmp byte [esi + 0x1c], 0
je 0x421a2b
push 0x55470c
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421a2b
push dword [ebp - 0xaec]
lea ecx, [esi + 0x20]
call fcn.0040633d
cmp byte [esi + 0x1c], 0
je 0x421a2b
push 0x557e4c
lea ecx, [esi + 0x20]
call fcn.00406419
lea eax, [ebp - 0xb04]
mov ecx, esi
push eax
call fcn.004279eb
mov byte [ebp - 4], 0x24
lea ecx, [ebp - 0x48]
mov dword [ebp - 0x48], vtable.el::base::Writer.0
call fcn.004067e3
lea ecx, [ebp - 0x1c]
call fcn.00409846
push ecx
push ecx
push str.void___thiscall_InstallUIMainWnd::InitWindow_void_
push 0xb83
push str........._srcCommoninstall_ui_mainwnd.cpp
push 0x80
lea ecx, [ebp - 0x80c]
call fcn.004064f1
push str.default
push 1
push eax
mov byte [ebp - 4], 0x25
call fcn.00406584
mov esi, eax
add esp, 0xc
cmp byte [esi + 0x1c], 0
je 0x421b17
push str._Request_For_Product_Config___
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421b17
push str._Downloader_Id_:
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421b17
push dword [ebp - 0xafc]
lea ecx, [esi + 0x20]
call fcn.0040633d
cmp byte [esi + 0x1c], 0
je 0x421b17
push str.__Site_Id_:
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421b17
push dword [ebp - 0xaf0]
lea ecx, [esi + 0x20]
call fcn.0040633d
cmp byte [esi + 0x1c], 0
je 0x421b17
push str.__Language_Id_:
lea ecx, [esi + 0x20]
call fcn.00406419
cmp byte [esi + 0x1c], 0
je 0x421b17
push dword [ebp - 0xae4]
lea ecx, [esi + 0x20]
call fcn.0040633d
mov byte [ebp - 4], 0x26
lea ecx, [ebp - 0x80c]
mov dword [ebp - method.el::base::Writer.virtual_0], vtable.el::base::Writer.0
call fcn.004067e3
lea ecx, [ebp - 0x7e0]
call fcn.00409846
push edi
push 0x560194
mov esi, str.Start
mov byte [ebp - 4], 0x20
push esi
push str.CrashRate
call fcn.0043200e
mov ecx, eax
call fcn.0043206a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xae4], esp
push 0x55ae38
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x27
mov ecx, esp
mov dword [ebp - 0xaf0], esp
push esi
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x28
mov ecx, esp
mov dword [ebp - 0xafc], esp
push str.CorePublicModule
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x29
mov ecx, esp
mov dword [ebp - 0xaf8], esp
push 0x55ae38
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x2a
mov ecx, esp
mov dword [ebp - 0xb00], esp
push str.Keypoint
call fcn.00409c4d
mov byte [ebp - 4], 0x2b
call fcn.0043200e
push edi
push edi
push edi
mov byte [ebp - 4], 0x20
call fcn.00433c36
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xb00], esp
push str.GA_PC
call fcn.004099b0
sub esp, 0x18
mov byte [ebp - 4], 0x2c
mov ecx, esp
push str.SOFTWARETenorshareDownloader2.5.0
call fcn.004099b0
lea ecx, [ebp - 0x870]
mov byte [ebp - 4], 0x20
call fcn.0042d700
add esp, 0x30
mov byte [ebp - 4], 0x2d
cmp dword [ebp - 0x860], 0
jne 0x421d95
and dword [ebp - 0xae4], 0
lea edx, [ebp - 0xae4]
lea ecx, [ebp - 0x8a0]
call fcn.0042c93c
mov byte [ebp - 4], 0x2e
mov edx, str._32bit
cmp dword [ebp - 0xaf4], 0
mov ecx, str._64bit
cmove ecx, edx
push ecx
push eax
lea eax, [ebp - 0x77c]
push eax
call fcn.00412cab
add esp, 0xc
push edi
push 1
lea ecx, [ebp - 0x8a0]
mov byte [ebp - 4], 0x30
call fcn.0040c02b
lea ecx, [ebp - 0x7bc]
call fcn.0042cbce
mov byte [ebp - 4], 0x31
lea eax, [ebp - 0x77c]
cmp dword [ebp - 0x768], 0x10
mov esi, 0x55c1a0
push edi
cmovae eax, dword [ebp - 0x77c]
push eax
push str.SysOS
push esi
call fcn.0043200e
mov ecx, eax
call fcn.0043206a
cmp dword [ebp - 0x7a8], 0x10
lea eax, [ebp - 0x7bc]
push edi
cmovae eax, dword [ebp - 0x7bc]
push eax
push str.SysLanguage
push esi
call fcn.0043200e
mov ecx, eax
call fcn.0043206a
push 0x30
lea eax, [ebp - 0x40]
push edi
push eax
call fcn.004fb430
push dword [ebp - 0xaec]
lea eax, [ebp - 0x40]
push dword [ebp - 0xae8]
push str._d_d
push eax
call fcn.00402be8
add esp, 0x1c
lea eax, [ebp - 0x40]
push edi
push eax
push str.SysScreenResolution
push esi
call fcn.0043200e
mov ecx, eax
call fcn.0043206a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xb00], esp
push 0x55c1cc
call fcn.004099b0
sub esp, 0x18
mov byte [ebp - 4], 0x32
mov ecx, esp
mov dword [ebp - 0xaf8], esp
push str.GA_PC
call fcn.004099b0
sub esp, 0x18
mov byte [ebp - 4], 0x33
mov ecx, esp
push str.SOFTWARETenorshareDownloader2.5.0
call fcn.004099b0
mov byte [ebp - 4], 0x31
call fcn.0042d804
add esp, 0x48
lea ecx, [ebp - 0x7bc]
push edi
push 1
call fcn.0040c02b
push edi
push 1
lea ecx, [ebp - 0x77c]
mov byte [ebp - 4], 0x2d
call fcn.0040c02b
push edi
push 0x560194
push str.1.Launch
mov esi, str.Download
push esi
call fcn.0043200e
mov ecx, eax
call fcn.0043206a
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xb00], esp
push 0x55ae38
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x34
mov ecx, esp
mov dword [ebp - 0xaf8], esp
push str.CoreFuncStart
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x35
mov ecx, esp
mov dword [ebp - 0xaf4], esp
push esi
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x36
mov ecx, esp
mov dword [ebp - 0xae4], esp
mov edi, str.BeforeDownload
push edi
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x37
mov ecx, esp
mov dword [ebp - 0xaf0], esp
mov esi, str.CoreFuncEvent
push esi
call fcn.00409c4d
mov byte [ebp - 4], 0x38
call fcn.0043200e
xor eax, eax
mov byte [ebp - 4], 0x2d
push eax
push eax
push eax
call fcn.00433c36
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xb00], esp
push 0x55ae38
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x39
mov ecx, esp
mov dword [ebp - 0xaf8], esp
push str.Launch
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x3a
mov ecx, esp
mov dword [ebp - 0xaf4], esp
push str.Download
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x3b
mov ecx, esp
mov dword [ebp - 0xae4], esp
push edi
call fcn.00409c4d
mov byte [ebp - 4], 0x3c
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xaf0], esp
push esi
call fcn.00409c4d
mov byte [ebp - 4], 0x3d
call fcn.0043200e
xor eax, eax
mov byte [ebp - 4], 0x2d
push eax
push eax
push 1
call fcn.00433c36
sub esp, 0x18
mov ecx, esp
mov dword [ebp - 0xb00], esp
push 0x55ae38
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x3e
mov ecx, esp
mov dword [ebp - 0xaf8], esp
push str.CoreFuncEnd
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x3f
mov ecx, esp
mov dword [ebp - 0xaf4], esp
push str.Download
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x40
mov ecx, esp
mov dword [ebp - 0xae4], esp
push edi
call fcn.00409c4d
sub esp, 0x18
mov byte [ebp - 4], 0x41
mov ecx, esp
mov dword [ebp - 0xaf0], esp
push esi
call fcn.00409c4d
mov byte [ebp - 4], 0x42
call fcn.0043200e
xor edi, edi
mov byte [ebp - 4], 0x2d
push edi
push edi
push edi
call fcn.00433c36
push 0x8f
mov ecx, ebx
call fcn.0044f06c
mov ecx, ebx
call fcn.00420973
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
mov esi, eax
lea eax, [ebp - 0x14c]
sub esi, dword [ebp - 0xb08]
push 0x104
push edi
push eax
call fcn.004fb430
push esi
lea eax, [ebp - 0x14c]
push 0x558144
push eax
call fcn.0040ef31
add esp, 0x18
lea eax, [ebp - 0x14c]
push edi
push eax
push str.ClickToShowTime
push str.Other
call fcn.0043200e
mov ecx, eax
call fcn.0043206a
call fcn.0043002b
test al, al
je 0x421fd4
push edi
push 0x7d0
push 0x29a
push dword [ebx + 4]
call dword [sym.imp.USER32.dll_SetTimer]
xor ebx, ebx
lea ecx, [ebp - 0x870]
push ebx
push 1
call fcn.00402226
push ebx
push 1
lea ecx, [ebp - 0x888]
call fcn.0040c02b
push ebx
push 1
lea ecx, [ebp - 0x7d4]
call fcn.00402226
push ebx
push 1
lea ecx, [ebp - 0x794]
call fcn.00402226
lea ecx, [ebp - 0x954]
call fcn.0044df15
push ebx
push 1
lea ecx, [ebp - 0x8b8]
call fcn.00402226
push ebx
push 1
lea ecx, [ebp - 0x8d0]
call fcn.00402226
lea ecx, [ebp - 0x9d8]
call fcn.0044df15
lea ecx, [ebp - 0xa5c]
call fcn.0044df15
lea esp, [ebp - 0xb18]
call fcn.004e277c
ret