Function at 0x459c60
Capabilities:
Check internet connectivity via wininet
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x1a4
mov eax, dword [0x52ad60]
xor eax, esp
mov dword [esp + 0x1a0], eax
push ebx
push esi
mov esi, dword [ebp + 0x10]
push edi
push 0
call fcn.004b61a3
add esp, 4
push eax
call fcn.004b42df
add esp, 4
lea ecx, [esp + 0x5c]
push esi
call fcn.00403720
mov eax, dword [eax]
cmp dword [eax - 0xc], 0
jl 0x459cb3
push str._nftest
push eax
call fcn.004b44da
add esp, 8
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
or edi, 0xffffffff
lea ecx, [edx + 0xc]
mov eax, edi
lock xadd dword [ecx], eax
dec eax
test eax, eax
jg 0x459cd3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x52a6d0]
mov ecx, 0x52a6d0
call dword [eax + 0xc]
push ecx
add eax, 0x10
mov ecx, esp
push str.88d5c6d0c3c6d3c69a
mov dword [esp + 0x1c], eax
call fcn.00403720
lea ecx, [esp + 0x3c]
call fcn.00432e00
mov eax, dword [eax]
add esp, 4
lea ecx, [esp + 0x10]
push esi
mov dword [esp + 0x60], eax
call fcn.00403720
mov ecx, dword [esp + 0x5c]
mov ebx, eax
test ecx, ecx
jne 0x459d1f
or eax, 0xffffffff
jmp 0x459d43
mov eax, dword [ebx]
cmp dword [eax - 0xc], 0
jge 0x459d2c
or eax, 0xffffffff
jmp 0x459d43
push ecx
push eax
call fcn.004b44da
add esp, 8
test eax, eax
jne 0x459d3f
or eax, 0xffffffff
jmp 0x459d43
sub eax, dword [ebx]
sar eax, 1
mov edx, dword [esp + 0x10]
test eax, eax
setns bl
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459d65
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x38]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459d82
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
test bl, bl
je 0x459dbc
push esi
lea ecx, [esp + 0x60]
call fcn.00403720
lea edx, [esp + 0x14]
lea ecx, [esp + 0x5c]
call fcn.00459980
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459dea
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
jmp 0x459dea
test esi, esi
jne 0x459dc4
xor ecx, ecx
jmp 0x459ddf
mov ecx, esi
lea edx, [ecx + 2]
lea esp, [esp]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x459dd0
sub ecx, edx
sar ecx, 1
push ecx
push esi
lea ecx, [esp + 0x1c]
call fcn.004046f0
push str._url
lea ecx, [esp + 0x60]
call fcn.00403720
lea eax, [esp + 0x5c]
push eax
lea edx, [esp + 0x18]
lea ecx, [esp + 0x3c]
call fcn.00432840
mov edx, dword [eax]
mov esi, dword [0x52fd30]
lea ecx, [edx - 0x10]
add esi, 0xfffffff0
add esp, 4
cmp ecx, esi
je 0x459e66
cmp dword [esi + 0xc], 0
lea ebx, [esi + 0xc]
jl 0x459e58
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x459e58
call fcn.004047b0
mov dword [esp + 0x10], eax
mov ecx, edi
lock xadd dword [ebx], ecx
dec ecx
test ecx, ecx
jg 0x459e4e
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov eax, dword [esp + 0x10]
add eax, 0x10
mov dword [0x52fd30], eax
jmp 0x459e66
push dword [edx - 0xc]
mov ecx, 0x52fd30
push edx
call fcn.004046f0
mov edx, dword [esp + 0x38]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459e83
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459ea0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [0x52fd30]
cmp dword [eax - 0xc], 0
jne 0x459eb5
mov ebx, 1
jmp 0x45a9e5
push ecx
mov ecx, esp
push str.88c2d5d5c8d5d4c3c8cac6cec99a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd38
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459f07
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459f24
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88d4d3c6d3d4c3c8cac6cec99a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd34
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459f76
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459f93
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88c5cec49a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd3c
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x459fe5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a002
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88d1c2d5cec1cec2d59a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd40
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a054
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a071
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88cec9d4d3c6cbcbc2d5d1c2d5d4cec8c99a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd44
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a0c3
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a0e0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88c6d7d7cec39a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd4c
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a132
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a14f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88d4d5c4cec39a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd50
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a1a1
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a1be
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88c4d5d5c2c0c9c6cac29a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd54
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a210
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a22d
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [esp + 0x5c]
call fcn.00459200
push eax
mov ecx, 0x52fd48
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a25e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push 0x516258
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd5c
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a2b0
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a2cd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88c8c9c2d5d5c8d5c2dfc29a
call fcn.00403720
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x60]
call fcn.00432840
add esp, 4
mov ecx, 0x52fd64
push eax
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a31f
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a33c
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 7
push str.1.1.1.5
mov ecx, 0x52fd58
call fcn.004046f0
lea ecx, [esp + 0x5c]
call fcn.004579e0
push eax
mov ecx, 0x52fd60
call fcn.00403880
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a37e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push ecx
mov ecx, esp
push str.88d7c8d4d3d7c8c9c2c3cfc8d2d5d49a
mov dword [esp + 0x60], 0
call fcn.00403720
lea ecx, [esp + 0x60]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x5c]
call fcn.00432840
mov edx, dword [esp + 0x60]
add edx, 0xfffffff0
add esp, 4
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a3cd
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
push 0
call dword [sym.imp.ole32.dll_CoInitialize]
push 0
push 0
push 0
push 0
call dword [sym.imp.USER32.dll_DefWindowProcW]
lea eax, [esp + 0x60]
push eax
mov dword [esp + 0x64], 8
mov dword [esp + 0x68], 0xff
call dword [sym.imp.COMCTL32.dll_InitCommonControlsEx]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov eax, 0x10624dd3
mul ecx
shr edx, 6
mov eax, 0x88888889
mul edx
xor al, al
movzx eax, al
shr edx, 5
mov ecx, 1
cmp edx, 2
cmovb eax, ecx
mov dword [esp + 0x60], eax
push 0
lea eax, [esp + 0xb4]
push eax
lea eax, [esp + 0xb4]
push eax
mov dword [esp + 0xbc], ecx
mov dword [esp + 0xc0], 0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xc8], 0
call dword [sym.imp.gdiplus.dll_GdiplusStartup]
sub esp, 0xc
call fcn.0045c190
call fcn.0040b560
call dword [sym.imp.USER32.dll_GetDesktopWindow]
mov esi, dword [0x52fd80]
lea eax, [esp + 0x74]
add esi, 0x10
push esi
mov dword [esp + 0x78], 0x519cac
mov dword [esp + 0x7c], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x60], eax
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, dword [0x52fd28]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x5c]
push eax
lea eax, [esp + 0x14]
push eax
call fcn.0045c120
push esi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, dword [0x52a6d0]
push ecx
mov ebx, esp
mov ecx, 0x52a6d0
mov esi, 0x1d4c0
mov dword [esp + 0x40], 0
mov dword [esp + 0x60], ebx
call dword [eax + 0xc]
add eax, 0x10
mov dword [ebx], eax
mov eax, str.88c5d5d0d4cfd3c8cad49a
test eax, 0xffff0000
jne 0x45a553
movzx ebx, ax
mov ecx, ebx
call fcn.00405570
test eax, eax
je 0x45a561
mov ecx, dword [esp + 0x60]
push ebx
push eax
call fcn.00404ab0
jmp 0x45a561
push 0x16
push str.88c5d5d0d4cfd3c8cad49a
mov ecx, ebx
call fcn.004046f0
lea ecx, [esp + 0x14]
call fcn.00432e00
add esp, 4
lea edx, [esp + 0x14]
push eax
lea ecx, [esp + 0x40]
call fcn.00432840
mov edx, dword [esp + 0x14]
add edx, 0xfffffff0
add esp, 4
lea eax, [edx + 0xc]
mov ecx, edi
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a59b
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [esp + 0x3c]
cmp dword [eax - 0xc], 0
je 0x45a5ba
push eax
call fcn.004b6dcb
mov esi, eax
mov eax, 0x1d4c0
add esp, 4
cmp esi, eax
cmova esi, eax
mov eax, dword [0x52a6d0]
mov ecx, 0x52a6d0
mov dword [esp + 0xc4], 0
mov dword [esp + 0xd4], 0
mov dword [esp + 0xd8], 0
mov dword [esp + 0x11c], 0
mov dword [esp + 0x120], 0
mov dword [esp + 0x124], 0
mov dword [esp + 0x128], 0
mov dword [esp + 0x12c], 0
mov dword [esp + 0x130], 0
mov dword [esp + 0x138], 0
mov dword [esp + 0x13c], 0
mov dword [esp + 0x140], 0
mov dword [esp + 0x144], 0
mov dword [esp + 0x14c], 0
mov dword [esp + 0x170], 0
mov dword [esp + 0x174], 0
mov dword [esp + 0x17c], 0
mov dword [esp + 0x184], 0
mov dword [esp + 0x188], 0
mov dword [esp + 0x18c], 0
mov dword [esp + 0x1a4], 0
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
mov eax, str.notificationMain
test eax, 0xffff0000
jne 0x45a6dc
movzx ebx, ax
mov ecx, ebx
call fcn.00405570
test eax, eax
je 0x45a6ec
push ebx
push eax
lea ecx, [esp + 0x18]
call fcn.00404ab0
jmp 0x45a6ec
push 0x10
push str.notificationMain
lea ecx, [esp + 0x18]
call fcn.004046f0
mov eax, dword [0x52a6d0]
mov ecx, 0x52a6d0
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x38], eax
mov eax, str.1.1.1.5
test eax, 0xffff0000
jne 0x45a727
movzx ebx, ax
mov ecx, ebx
call fcn.00405570
test eax, eax
je 0x45a737
push ebx
push eax
lea ecx, [esp + 0x40]
call fcn.00404ab0
jmp 0x45a737
push 7
push str.1.1.1.5
lea ecx, [esp + 0x40]
call fcn.004046f0
push ecx
lea eax, [esp + 0x14]
push eax
push esi
lea eax, [esp + 0x44]
push eax
lea eax, [esp + 0x24]
push eax
lea ecx, [esp + 0xd4]
call fcn.004364a0
mov edx, dword [esp + 0x38]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a771
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a78e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [esp + 0xc0]
call fcn.00437da0
test al, al
jne 0x45aa19
mov eax, dword [0x52a6d0]
mov ecx, 0x52a6d0
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x5c], eax
mov eax, str.init_fail
test eax, 0xffff0000
jne 0x45a7dd
movzx esi, ax
mov ecx, esi
call fcn.00405570
test eax, eax
je 0x45a7ed
push esi
push eax
lea ecx, [esp + 0x64]
call fcn.00404ab0
jmp 0x45a7ed
push 9
push str.init_fail
lea ecx, [esp + 0x64]
call fcn.004046f0
mov eax, dword [0x52a6d0]
mov ecx, 0x52a6d0
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x38], eax
mov eax, str._tWinMain
test eax, 0xffff0000
jne 0x45a828
movzx esi, ax
mov ecx, esi
call fcn.00405570
test eax, eax
je 0x45a838
push esi
push eax
lea ecx, [esp + 0x40]
call fcn.00404ab0
jmp 0x45a838
push 9
push str._tWinMain
lea ecx, [esp + 0x40]
call fcn.004046f0
mov eax, dword [0x52a6d0]
mov ecx, 0x52a6d0
call dword [eax + 0xc]
add eax, 0x10
mov dword [esp + 0x10], eax
mov eax, str.notificationCenter
test eax, 0xffff0000
jne 0x45a873
movzx esi, ax
mov ecx, esi
call fcn.00405570
test eax, eax
je 0x45a883
push esi
push eax
lea ecx, [esp + 0x18]
call fcn.00404ab0
jmp 0x45a883
push 0x12
push str.notificationCenter
lea ecx, [esp + 0x18]
call fcn.004046f0
push 0
lea eax, [esp + 0x60]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x1c]
push eax
mov ecx, 0x52f7a4
call fcn.004018e0
mov edx, dword [esp + 0x10]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a8bb
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x38]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a8d8
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov edx, dword [esp + 0x5c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a8f5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
lea ecx, [esp + 0xc0]
call fcn.004368c0
mov edx, dword [esp + 0x3c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a91e
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [esp + 0x84]
test eax, eax
je 0x45a93d
push eax
call fcn.004b4218
add esp, 4
mov dword [esp + 0x84], 0
mov eax, dword [esp + 0x78]
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
test eax, eax
je 0x45a964
push eax
call fcn.004b4218
add esp, 4
or ebx, 0xffffffff
mov eax, dword [0x52fd64]
cmp dword [eax - 0xc], 0
je 0x45a9c8
cmp dword [0x52f524], 2
jne 0x45a996
cmp ebx, 0x3e8
je 0x45a996
push 0x512aa0
push str._brwtype
lea ecx, [esp + 0x1c]
call fcn.00403940
push ecx
mov ecx, dword [esp + 0x18]
add ecx, 0xfffffff0
mov esi, esp
call fcn.004047b0
add eax, 0x10
push ecx
mov dword [esi], eax
mov ecx, dword [0x52fd64]
mov esi, esp
lea ecx, [ecx - 0x10]
call fcn.004047b0
add eax, 0x10
mov dword [esi], eax
call fcn.00431c80
add esp, 8
mov edx, dword [esp + 0x58]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45a9e5
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov esi, dword [esp + 0x14]
add esi, 0xfffffff0
lea eax, [esi + 0xc]
lock xadd dword [eax], edi
dec edi
test edi, edi
jg 0x45aa00
mov ecx, dword [esi]
push esi
mov edx, dword [ecx]
call dword [edx + 4]
mov ecx, dword [esp + 0x1ac]
pop edi
pop esi
mov eax, ebx
pop ebx
xor ecx, esp
call fcn.004b3a11
mov esp, ebp
pop ebp
ret 0x10
cmp byte [esp + 0x60], 0
je 0x45aa60
push 0x1d4c0
mov dword [0x52f55c], 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov ebx, dword [sym.imp.WININET.dll_InternetGetConnectedState]
xor esi, esi
lea ecx, [ecx]
push 0
lea eax, [esp + 0x64]
push eax
mov dword [esp + 0x68], 0
call ebx
test eax, eax
jne 0x45aa7d
inc esi
cmp esi, 2
jl 0x45aa40
jmp 0x45a8f5
push 0
lea eax, [esp + 0x64]
push eax
mov dword [esp + 0x68], 0
call dword [sym.imp.WININET.dll_InternetGetConnectedState]
test eax, eax
je 0x45a8f5
and dword [esp + 0x68], 0xfffffe00
mov edx, 0x52fd54
lea ecx, [esp + 0x40]
mov dword [esp + 0x6c], 0
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45aae1
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45aaec
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push str.appname
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
mov eax, ebx
xor eax, ecx
mov ecx, dword [esi]
and eax, 0xff
xor ebx, eax
mov eax, dword [esp + 0x18]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45aba3
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd4c
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45abf7
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45ac02
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push str.appid
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
mov eax, ebx
xor eax, ecx
mov ecx, dword [esi]
and eax, 0xff
xor ebx, eax
mov eax, dword [esp + 0x18]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45acb9
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd50
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45ad0d
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45ad18
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push 0x519b60
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
xor ecx, ebx
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
and ecx, 0xff
xor ebx, ecx
mov ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45adce
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd38
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45ae22
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45ae2d
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push str.errorurl
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
xor ecx, ebx
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
and ecx, 0xff
xor ebx, ecx
mov ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45aee3
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd34
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45af37
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45af42
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push str.staturl
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
xor ecx, ebx
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
and ecx, 0xff
xor ebx, ecx
mov ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45aff8
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd3c
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45b04c
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45b057
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push 0x519b7c
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
xor ecx, ebx
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
and ecx, 0xff
xor ebx, ecx
mov ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45b10d
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd44
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45b161
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45b16c
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push str.iver
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
xor ecx, ebx
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
and ecx, 0xff
xor ebx, ecx
mov ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45b222
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd40
lea ecx, [esp + 0x40]
call fcn.00431370
mov ecx, dword [esp + 0x30]
and ecx, 0xffffff04
mov esi, eax
mov eax, dword [0x52fe1c]
or ecx, 0x104
mov dword [esp + 0x30], ecx
mov dword [esp + 0x34], 0
test al, 1
jne 0x45b276
or eax, 1
push 0x4e01b0
mov dword [0x52fe1c], eax
mov dword [0x52fda0], 0x5184f8
call fcn.004b41d9
add esp, 4
cmp dword [esi + 0x14], 0x10
mov edx, dword [esi + 0x10]
jb 0x45b281
mov esi, dword [esi]
mov ecx, dword [0x52c374]
push edx
mov eax, dword [ecx]
push esi
call dword [eax + 0xc]
push ecx
push 0x519b88
lea ecx, [esp + 0x68]
mov dword [esp + 0x30], eax
call fcn.00449e90
mov esi, eax
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x1c]
mov dword [esp + 0x28], 0
call fcn.00449270
movsx ecx, byte [esi + 8]
mov ebx, dword [esp + 0x20]
mov eax, dword [esp + 0x18]
xor ecx, ebx
mov byte [esi + 8], bl
mov edx, dword [esi + 4]
and ecx, 0xff
xor ebx, ecx
mov ecx, dword [esi]
mov dword [esi], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 4], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x18], ecx
mov ecx, dword [esi + 8]
mov edx, ecx
shl edx, 0x17
sar edx, 0x1f
mov eax, ecx
shl edx, 8
xor eax, ebx
xor edx, ebx
and eax, 0x100
and edx, 0x100
xor eax, ecx
xor ebx, edx
lea ecx, [esp + 0x18]
mov dword [esi + 8], eax
mov dword [esp + 0x20], ebx
call fcn.004493f0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45b337
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd48
lea ecx, [esp + 0x40]
call fcn.00431370
push eax
lea ecx, [esp + 0x2c]
call fcn.00449200
lea eax, [esp + 0x28]
push eax
push ecx
push str.osver
lea ecx, [esp + 0x6c]
call fcn.00449e90
mov ecx, eax
call fcn.004494b0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45b386
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov edx, 0x52fd58
lea ecx, [esp + 0x40]
call fcn.00431370
push eax
lea ecx, [esp + 0x2c]
call fcn.00449200
lea eax, [esp + 0x28]
push eax
push ecx
push 0x519b9c
lea ecx, [esp + 0x6c]
call fcn.00449e90
mov ecx, eax
call fcn.004494b0
lea ecx, [esp + 0x28]
call fcn.004493f0
cmp dword [esp + 0x54], 0x10
jb 0x45b3d5
push dword [esp + 0x40]
call fcn.004b3a0c
add esp, 4
mov eax, dword [esp + 0x30]
and eax, 0xffffff01
or eax, 1
mov dword [esp + 0x30], eax
mov eax, dword [0x52f55c]
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
push eax
push ecx
push str.isStratup
lea ecx, [esp + 0x6c]
mov dword [esp + 0x40], 0
call fcn.00449e90
mov ecx, eax
call fcn.004494b0
lea ecx, [esp + 0x28]
call fcn.004493f0
lea eax, [esp + 0x60]
push eax
lea ecx, [esp + 0x19c]
call fcn.004494b0
push ecx
mov dword [0x52f40c], 0x45bb70
call dword [sym.imp.USER32.dll_GetDesktopWindow]
push eax
lea ecx, [esp + 0xc8]
call fcn.0043a3d0
test eax, eax
jne 0x45b45b
lea ecx, [esp + 0x60]
call fcn.004493f0
jmp 0x45a8f5
push 0x52fd30
lea ecx, [esp + 0xc4]
call fcn.00439e20
lea ecx, [esp + 0x74]
call fcn.0045c070
mov ebx, eax
call fcn.0045bf20
push dword [esp + 0xac]
call dword [sym.imp.gdiplus.dll_GdiplusShutdown]
call fcn.0045be00
call dword [sym.imp.ole32.dll_CoUninitialize]
lea ecx, [esp + 0x60]
call fcn.004493f0
lea ecx, [esp + 0xc0]
call fcn.004368c0
mov edx, dword [esp + 0x3c]
add edx, 0xfffffff0
mov ecx, edi
lea eax, [edx + 0xc]
lock xadd dword [eax], ecx
dec ecx
test ecx, ecx
jg 0x45b4c6
mov ecx, dword [edx]
push edx
mov eax, dword [ecx]
call dword [eax + 4]
mov eax, dword [esp + 0x84]
test eax, eax
je 0x45b4e5
push eax
call fcn.004b4218
add esp, 4
mov dword [esp + 0x84], 0
mov eax, dword [esp + 0x78]
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
test eax, eax
je 0x45b50c
push eax
call fcn.004b4218
add esp, 4
test ebx, ebx
je 0x45a9c8
jmp 0x45a967