Function at 0x447dc0
Capabilities:
Accept command line arguments
Create thread

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x560fd0
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x90
mov eax, dword [ebp + 8]
push ebx
push esi
push edi
mov dword [0x5a36b4], eax
mov dword [ebp - 4], 0
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x18]
mov dword [ebp - 0x18], eax
call fcn.00447b60
mov esi, dword [ebp - 0x18]
push esi
call fcn.0053dfad
xor ecx, ecx
add esp, 4
cmp eax, 0x55f0
setge cl
or ebx, 0xffffffff
add ecx, 3
add esi, 0xfffffff0
mov dword [0x5a3d08], ecx
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x447e52
mov ecx, dword [esi]
push esi
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 7
push str.product
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x30]
call fcn.00437680
mov ecx, esp
push 7
push str.channel
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x38]
call fcn.00437680
mov ecx, esp
push 7
push str.default
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x58]
call fcn.00437680
mov ecx, esp
push 5
push str.id_1
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x54]
call fcn.00437680
mov ecx, esp
push 5
push str.id_2
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x7c]
call fcn.00437680
mov ecx, esp
push 5
push str.id_3
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x50]
call fcn.00437680
mov ecx, esp
push 5
push str.Local
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x74]
call fcn.00437680
mov ecx, esp
push 6
push str.active
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x78]
call fcn.00437680
mov ecx, esp
push 5
push str.showM
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x84]
call fcn.00437680
mov ecx, esp
push 7
push str.Version
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x70]
call fcn.00437680
mov ecx, esp
push 0xa
push str.PCAppStore
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x40]
call fcn.00437680
mov ecx, esp
push 7
push str.APPDATA
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x6c]
call fcn.00437680
add esp, 0x14
mov edi, esp
push ecx
mov ecx, dword [0x5a3878]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
mov edi, esp
push ecx
mov ecx, dword [ebp - 0x70]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, edi
mov dword [esi], eax
call fcn.00437b50
add esp, 4
lea ecx, [ebp - 0x18]
mov edx, SysReAllocString
call fcn.004396e0
add esp, 8
mov ecx, 0x5a385c
push eax
call fcn.00418c30
mov edx, dword [ebp - 0x18]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4480c6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
call fcn.00445c50
push ecx
mov ecx, dword [ebp - 0x6c]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x18]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
push dword [eax]
call fcn.00544517
add esp, 4
mov esi, eax
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x1c]
push esi
mov dword [ebp - 0x1c], eax
call fcn.00425090
test al, al
jne 0x448149
test esi, esi
jne 0x448124
xor ecx, ecx
jmp 0x44813f
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x448130
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [ebp - 0x1c]
call fcn.00425360
mov edx, dword [ebp - 0x18]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448163
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edi, dword [ebp - 0x1c]
cmp dword [edi - 0xc], 0
jne 0x44825d
sub esp, 0x18
mov ecx, esp
push 0xd
push str.wgetenv_error
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp + 8]
call fcn.00437680
add esp, 0x14
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x5a3860
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x14
mov esi, esp
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492f5
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov ecx, esi
push 0x57ece0
mov dword [esi], eax
call fcn.00425090
test al, al
jne 0x4481f4
push 0
push 0x57ece0
mov ecx, esi
call fcn.00425360
push ecx
mov ebx, esp
push ecx
mov ecx, dword [ebp + 8]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x30]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
add esp, 4
call fcn.00447270
mov edx, dword [ebp + 8]
or ebx, 0xffffffff
add esp, 0x10
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448255
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
or esi, 0xffffffff
jmp 0x449186
push ecx
mov ecx, dword [ebp - 0x40]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x18]
mov dword [esi], eax
call fcn.00437b50
lea ecx, [edi - 0x10]
mov ebx, eax
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.004478c0
mov edx, dword [ebp - 0x18]
or ebx, 0xffffffff
add esp, 4
mov esi, eax
add edx, 0xfffffff0
mov ecx, ebx
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x4482b0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test esi, esi
je 0x44855c
sub esp, 0x18
mov ecx, esp
push 4
push str.Data
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x18]
call fcn.00437680
mov ecx, dword [ebp - 0x40]
add esp, 0x14
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x20]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
mov esi, eax
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492ff
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x14]
push 0x576b34
mov dword [ebp - 0x14], eax
call fcn.00425090
test al, al
jne 0x44833f
push 0x576b34
lea ecx, [ebp - 0x14]
call fcn.00424860
push esi
lea edx, [ebp - 0x14]
lea ecx, [ebp - 0x34]
call fcn.00418820
add esp, 4
lea ecx, [ebp - 0x1c]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.00424620
mov edx, dword [ebp - 0x34]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448376
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448390
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x20]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4483aa
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, dword [ebp - 0x18]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x20]
mov dword [esi], eax
call fcn.00437b50
mov edi, dword [ebp - 0x1c]
mov ebx, eax
lea ecx, [edi - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.004478c0
mov edx, dword [ebp - 0x20]
or ebx, 0xffffffff
add esp, 4
mov esi, eax
add edx, 0xfffffff0
mov ecx, ebx
lock xadd dword [edx + 0xc], ecx
dec ecx
test ecx, ecx
jg 0x448400
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test esi, esi
je 0x448542
sub esp, 0x18
mov ecx, esp
push 8
push str.download
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x14]
call fcn.00437680
mov ecx, dword [ebp - 0x18]
add esp, 0x14
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
lea edx, [ebp - 0x1c]
lea ecx, [ebp - 0x34]
mov esi, eax
push 0x57ec7c
call fcn.00418690
add esp, 4
lea ecx, [ebp - 0x20]
mov edx, eax
push esi
call fcn.00418820
add esp, 4
mov ecx, 0x5a3858
push eax
call fcn.00418c30
mov edx, dword [ebp - 0x20]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44849d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4484b7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4484d1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, dword [ebp - 0x14]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [esi], eax
call fcn.00437b50
mov ecx, dword [0x5a3858]
mov ebx, eax
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.004478c0
mov edx, dword [ebp - 0x24]
or ebx, 0xffffffff
add esp, 4
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448528
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448542
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x18]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44855c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
sub esp, 0x18
mov ecx, esp
push 0xb
push str.pcapp.store
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x68]
call fcn.00437680
mov ecx, esp
push 0xa
push str._pixel.gif
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x64]
call fcn.00437680
mov ecx, dword [0x5a381c]
add esp, 0x14
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
push dword [eax]
push 0
push 1
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
mov edx, dword [ebp - 0x24]
mov dword [0x5a36b0], eax
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448603
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0x60
call fcn.00532272
mov ecx, dword [ebp - 0x64]
mov esi, esp
add ecx, 0xfffffff0
mov dword [ebp - 0x20], eax
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x18]
mov dword [esi], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x68]
add ecx, 0xfffffff0
mov dword [ebp - 0x24], eax
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x34]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
mov esi, eax
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x449309
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x14]
push 0x5a3b08
mov dword [ebp - 0x14], eax
call fcn.00425090
test al, al
jne 0x44869d
mov ecx, 0x5a3b08
lea edx, [ecx + 2]
nop word [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x448680
sub ecx, edx
sar ecx, 1
push ecx
push 0x5a3b08
lea ecx, [ebp - 0x14]
call fcn.00425360
push dword [ebp - 0x24]
lea eax, [ebp - 0x14]
push esi
push ecx
mov ecx, dword [ebp - 0x20]
push eax
call fcn.00437f00
mov edx, dword [ebp - 0x14]
mov dword [0x5a32ec], eax
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4486cd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x34]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4486e7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x18]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448701
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
push 0
push 0x4477d0
call fcn.00543db1
add esp, 0xc
mov dword [ebp - 0x88], eax
call fcn.00445ff0
mov dword [ebp - 0x44], eax
lea eax, [ebp - 0x5c]
push eax
call dword [sym.imp.KERNEL32.dll_GetCommandLineW]
push eax
call dword [sym.imp.SHELL32.dll_CommandLineToArgvW]
mov esi, eax
mov dword [ebp - 0x18], esi
mov dword [ebp - 4], 1
call fcn.00424e20
test eax, eax
je 0x4492eb
mov edx, dword [eax]
mov ecx, eax
call dword [edx + 0xc]
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x5c], 2
mov dword [ebp - 0x10], eax
push ecx
jl 0x4487cd
mov esi, dword [esi + 4]
mov dword [ebp - 0x14], esp
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
mov ecx, dword [ebp - 0x14]
add eax, 0x10
push esi
mov dword [ecx], eax
call fcn.00425090
test al, al
jne 0x4487b9
test esi, esi
jne 0x448796
xor ecx, ecx
jmp 0x4487af
mov ecx, esi
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4487a0
sub ecx, edx
sar ecx, 1
push ecx
mov ecx, dword [ebp - 0x14]
push esi
call fcn.00425360
call fcn.00438850
add esp, 4
push ecx
cmp eax, 0x628374a0
je 0x448851
mov esi, esp
sub esp, 0x18
mov ecx, esp
push 0x5a3860
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x14
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x54]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x38]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x30]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
add esp, 4
call fcn.00447270
or esi, 0xffffffff
add esp, 0x10
or ebx, esi
jmp 0x44913b
cmp dword [ebp - 0x5c], 3
mov esi, esp
jge 0x4488dd
sub esp, 0x18
mov ecx, esp
push 0x5a3860
call fcn.00424b70
mov ecx, esi
call fcn.00437900
add esp, 0x14
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x50]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x38]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
mov ebx, esp
push ecx
mov ecx, dword [ebp - 0x30]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
mov ecx, ebx
mov dword [esi], eax
call fcn.00437b50
add esp, 4
call fcn.00447270
add esp, 0x10
or ebx, 0xffffffff
jmp 0x448d5b
mov ecx, dword [ebp - 0x58]
mov eax, dword [ebp - 0x18]
lea ecx, [ecx - 0x10]
mov eax, dword [eax + 8]
mov dword [ebp - 0x24], eax
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x20]
mov dword [esi], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x24]
add esp, 4
mov eax, dword [eax]
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x44892c
test dx, dx
je 0x448928
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x44892c
add eax, 4
add ecx, 4
test dx, dx
jne 0x448906
xor esi, esi
jmp 0x448931
sbb esi, esi
or esi, 1
mov edx, dword [ebp - 0x20]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44894b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test esi, esi
je 0x448bf8
mov dword [ebp - 4], 2
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebp - 4], 0xffffffff
push ecx
mov dword [ebp - 0x14], eax
mov esi, esp
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov ecx, esi
push 0x5a3b08
mov dword [esi], eax
call fcn.00425090
test al, al
jne 0x4489cc
mov ecx, 0x5a3b08
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x4489b0
sub ecx, edx
sar ecx, 1
push ecx
push 0x5a3b08
mov ecx, esi
call fcn.00425360
call fcn.00438850
mov esi, esp
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov ecx, esi
push 0x5a3b08
mov dword [esi], eax
call fcn.00425090
test al, al
jne 0x448a20
mov ecx, 0x5a3b08
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x448a04
sub ecx, edx
sar ecx, 1
push ecx
push 0x5a3b08
mov ecx, esi
call fcn.00425360
call fcn.00438850
add esp, 4
push eax
lea eax, [ebp - 0x14]
push 0x5801a4
push eax
call fcn.0041a6d0
mov eax, dword [ebp - 0x18]
add esp, 0xc
mov esi, dword [ebp - 0x14]
mov ecx, dword [eax + 8]
mov eax, esi
mov dx, word [eax]
cmp dx, word [ecx]
jne 0x448a6b
test dx, dx
je 0x448a67
mov dx, word [eax + 2]
cmp dx, word [ecx + 2]
jne 0x448a6b
add eax, 4
add ecx, 4
test dx, dx
jne 0x448a45
xor eax, eax
jmp 0x448a70
sbb eax, eax
or eax, 1
test eax, eax
je 0x448bdd
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x1c]
push 0x57ece0
mov dword [ebp - 0x1c], eax
call fcn.00425090
test al, al
jne 0x448ab2
push 0
push 0x57ece0
lea ecx, [ebp - 0x1c]
call fcn.00425360
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x14]
push 0x57ece0
mov dword [ebp - 0x14], eax
call fcn.00425090
test al, al
jne 0x448aec
push 0
push 0x57ece0
lea ecx, [ebp - 0x14]
call fcn.00425360
push ecx
mov ecx, dword [ebp - 0x7c]
mov ebx, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x28]
mov dword [ebx], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x38]
add ecx, 0xfffffff0
mov dword [ebp - 0x24], eax
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x3c]
mov dword [ebx], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x30]
add ecx, 0xfffffff0
mov dword [ebp - 0x20], eax
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x34]
mov dword [ebx], eax
call fcn.00437b50
mov edx, dword [ebp - 0x20]
lea ecx, [ebp - 0x1c]
add esp, 4
push ecx
lea ecx, [ebp - 0x14]
push ecx
push dword [ebp - 0x24]
mov ecx, eax
call fcn.004470d0
mov edx, dword [ebp - 0x34]
or ebx, 0xffffffff
add esp, 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448b75
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x3c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448b8f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x28]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448ba9
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448bc3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448bdd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add esi, 0xfffffff0
mov eax, ebx
lock xadd dword [esi + 0xc], eax
dec eax
test eax, eax
jg 0x448d5b
mov ecx, dword [esi]
push esi
jmp 0x448d56
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x1c]
push 0x57ece0
mov dword [ebp - 0x1c], eax
call fcn.00425090
test al, al
jne 0x448c32
push 0
push 0x57ece0
lea ecx, [ebp - 0x1c]
call fcn.00425360
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x4492eb
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x14]
push 0x57ece0
mov dword [ebp - 0x14], eax
call fcn.00425090
test al, al
jne 0x448c6c
push 0
push 0x57ece0
lea ecx, [ebp - 0x14]
call fcn.00425360
push ecx
mov ecx, dword [ebp - 0x50]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x20]
mov dword [esi], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x38]
add ecx, 0xfffffff0
mov dword [ebp - 0x28], eax
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [esi], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x30]
mov ebx, eax
add ecx, 0xfffffff0
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x3c]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
lea ecx, [ebp - 0x1c]
mov edx, ebx
push ecx
lea ecx, [ebp - 0x14]
push ecx
push dword [ebp - 0x28]
mov ecx, eax
call fcn.004470d0
mov edx, dword [ebp - 0x3c]
or ebx, 0xffffffff
add esp, 0xc
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448cf3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448d0d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x20]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448d27
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448d41
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x1c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448d5b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x18]
call dword [sym.imp.KERNEL32.dll_LocalFree]
push ecx
mov ecx, dword [ebp - 0x40]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x20]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
mov dword [ebp - 0x28], eax
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x449313
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
lea ecx, [ebp - 0x14]
push 0x576b34
mov dword [ebp - 0x14], eax
call fcn.00425090
test al, al
jne 0x448dbd
push 0x576b34
lea ecx, [ebp - 0x14]
call fcn.00424860
lea eax, [ebp - 0x14]
push eax
push ecx
mov ecx, dword [ebp - 0x74]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x24]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
lea ecx, [ebp - 0x3c]
mov edx, eax
call fcn.00418820
add esp, 4
lea ecx, [ebp - 0x4c]
mov edx, eax
push dword [ebp - 0x28]
call fcn.00418820
mov edx, dword [ebp - 0x3c]
add esp, 4
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448e16
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x24]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448e30
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x14]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448e4a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x20]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448e64
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push dword [ebp - 0x4c]
push 1
push 0x1f0003
call dword [sym.imp.KERNEL32.dll_OpenEventW]
sub esp, 0x18
mov esi, eax
mov ecx, esp
push 0xc
push 0x580fe4
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x60]
call fcn.00437680
add esp, 0x18
test esi, esi
je 0x448f86
cmp dword [ebp - 0x44], 2
je 0x448f86
sub esp, 0x18
mov ecx, esp
push 0x39
push str.PC_App_Store_is_up_and_running__click_on_the_Start_Button
mov dword [ecx], 0
mov dword [ecx + 0x10], 0
mov dword [ecx + 0x14], 0
call fcn.00424490
lea ecx, [ebp - 0x44]
call fcn.00437680
mov ecx, dword [ebp - 0x60]
add esp, 0x14
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x48]
mov dword [esi], eax
call fcn.00437b50
mov ecx, dword [ebp - 0x44]
mov ebx, dword [eax]
lea ecx, [ecx - 0x10]
call fcn.00425550
add eax, 0x10
lea ecx, [ebp - 0x80]
mov dword [esi], eax
call fcn.00437b50
add esp, 4
push 0x40
push ebx
push dword [eax]
push 0
call dword [sym.imp.USER32.dll_MessageBoxW]
mov edx, dword [ebp - 0x80]
or ebx, 0xffffffff
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448f49
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x48]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x448f63
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x44]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449105
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x449105
push dword [ebp - 0x4c]
push 0
push 0
push 0
call dword [sym.imp.KERNEL32.dll_CreateEventW]
push 0
lea eax, [ebp - 0x9c]
mov dword [ebp - 0x9c], 1
push eax
lea eax, [ebp - 0x8c]
mov dword [ebp - 0x98], 0
push eax
mov dword [ebp - 0x94], 0
mov dword [ebp - 0x90], 0
call dword [sym.imp.gdiplus.dll_GdiplusStartup]
push 0x4f0
call fcn.00532272
add esp, 4
mov dword [ebp - 0x28], eax
push dword [0x5a3d08]
push ecx
mov ecx, dword [0x5a385c]
mov esi, esp
add ecx, 0xfffffff0
call fcn.00425550
add eax, 0x10
push ecx
mov dword [esi], eax
mov esi, esp
mov ecx, dword [0x5a3858]
add ecx, 0xfffffff0
call fcn.00425550
add eax, 0x10
push ecx
mov dword [esi], eax
mov esi, esp
call fcn.00424e20
mov ecx, eax
test ecx, ecx
je 0x44931d
mov eax, dword [ecx]
call dword [eax + 0xc]
add eax, 0x10
mov ecx, esi
push 0x5a3b08
mov dword [esi], eax
call fcn.00425090
test al, al
jne 0x44906c
mov ecx, 0x5a3b08
lea edx, [ecx + 2]
nop dword [eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x449050
sub ecx, edx
sar ecx, 1
push ecx
push 0x5a3b08
mov ecx, esi
call fcn.00425360
push dword [ebp + 8]
mov ecx, dword [ebp - 0x28]
call fcn.004129f0
push 0
push 0
push 0x446b90
mov dword [0x5a36ac], eax
call fcn.00543db1
mov ecx, dword [0x5a36ac]
add esp, 0xc
push 0
push 0
call fcn.00414f90
mov eax, dword [0x5a36b0]
test eax, eax
je 0x4490ac
push eax
call dword [sym.imp.KERNEL32.dll_SetEvent]
push 0x1388
push dword [ebp - 0x88]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [0x5a36b0]
test eax, eax
je 0x4490cd
push eax
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x5a32f0
push 2
call dword [sym.imp.SHELL32.dll_Shell_NotifyIconW]
push dword [ebp - 0x8c]
call dword [sym.imp.gdiplus.dll_GdiplusShutdown]
mov esi, dword [0x5a36ac]
test esi, esi
je 0x449105
mov ecx, esi
call fcn.004130d0
push 0x4f0
push esi
call fcn.00532241
add esp, 8
mov edx, dword [ebp - 0x60]
xor esi, esi
add edx, 0xfffffff0
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449121
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x4c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44913b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x10]
mov eax, ebx
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449152
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x64]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44916c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x68]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449186
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
add edi, 0xfffffff0
mov eax, ebx
lock xadd dword [edi + 0xc], eax
dec eax
test eax, eax
jg 0x44919d
mov ecx, dword [edi]
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x6c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4491b7
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x40]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4491d1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x70]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4491eb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x84]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449208
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x78]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449222
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x74]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44923c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x50]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449256
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x7c]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x449270
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x54]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x44928a
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x58]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4492a4
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [ebp - 0x38]
mov eax, ebx
add edx, 0xfffffff0
lock xadd dword [edx + 0xc], eax
dec eax
test eax, eax
jg 0x4492be
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [ebp - 0x30]
add eax, 0xfffffff0
lock xadd dword [eax + 0xc], ebx
dec ebx
test ebx, ebx
jg 0x4492d6
mov ecx, dword [eax]
push eax
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [ebp - 0xc]
mov eax, esi
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret 0x10
push 0x80004005
call fcn.00425520
push 0x80004005
call fcn.00425520
push 0x80004005
call fcn.00425520
push 0x80004005
call fcn.00425520
push 0x80004005
call fcn.00425520
push 0x80004005
call fcn.00425520
int3