Function at 0x411e80
Capabilities:
Check for time delay via gettickcount
Check internet connectivity via wininet
Create http request
Resume thread

Disassembly:
push 0xffffffffffffffff
push 0x428273
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x24
push ebx
push ebp
push esi
push edi
mov edi, ecx
call sub.MFC42.DLL_AfxGetModuleState
mov ecx, dword [eax + 4]
call sub.MFC42.DLL_CCmdTarget::BeginWaitCursor
xor ebx, ebx
push 0x64
mov dword [esp + 0x40], ebx
mov dword [edi + 0x10], 0xc8
mov dword [edi + 0xc], ebx
mov dword [edi + 8], ebx
call sub.MFC42.DLL_operatornew
mov esi, eax
add esp, 4
mov dword [esp + 0x14], esi
cmp esi, ebx
mov byte [esp + 0x3c], 1
je 0x411ef4
push edi
mov ecx, esi
call fcn.004119f0
mov dword [esi], 0x42aed4
mov dword [esi + 0x58], ebx
mov dword [esi + 0x5c], ebx
mov dword [esi + 0x60], 1
jmp 0x411ef6
xor esi, esi
mov eax, dword [esp + 0x48]
lea ebp, [esi + 8]
push eax
mov ecx, ebp
mov byte [esp + 0x40], 0
mov dword [esi + 4], ebx
call fcn.00426980
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov eax, dword [esp + 0x50]
mov ebx, dword [esp + 0x54]
mov dword [esi + 0x10], edx
mov dword [esi + 0xc], ecx
mov ecx, dword [esp + 0x58]
lea edx, [edi + 4]
push edx
mov dword [esi + 0x20], eax
mov dword [esi + 0x24], ebx
mov dword [esi + 0x28], ecx
call dword [sym.imp.KERNEL32.dll_InterlockedIncrement]
mov dword [esi + 0x34], eax
mov eax, 1
mov dword [esi + 0x38], eax
mov dword [esi + 0x50], eax
mov eax, dword [esp + 0x60]
cmp ebx, 0x5e9
mov dword [esi + 0x44], 0
mov dword [esi + 0x60], eax
jne 0x411f69
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x411f69
mov dword [esi + 0x58], eax
mov ecx, ebp
call sub.MFC42.DLL_CString::TrimLeft
push 0x43382c
mov ecx, ebp
call sub.MFC42.DLL_CString::Find
mov ebx, eax
test ebx, ebx
jge 0x411fa1
test esi, esi
je 0x411f8e
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
mov dword [edi + 8], 1
mov dword [edi + 0xc], 0
jmp 0x412287
lea ecx, [esp + 0x10]
call sub.MFC42.DLL_CString::CString_1
lea eax, [esp + 0x48]
push ebx
push eax
mov ecx, ebp
mov byte [esp + 0x44], 2
call sub.MFC42.DLL_CString::Left
push eax
lea ecx, [esp + 0x14]
mov byte [esp + 0x40], 3
call sub.MFC42.DLL_CString::operator_1
lea ecx, [esp + 0x48]
mov byte [esp + 0x3c], 2
call sub.MFC42.DLL_CString::CString
mov ecx, dword [esp + 0x10]
mov ebx, dword [sym.imp.MSVCRT.dll__mbsicmp]
push str.http
push ecx
call ebx
add esp, 8
test eax, eax
je 0x412024
mov edx, dword [esp + 0x10]
push str.https
push edx
call ebx
add esp, 8
test eax, eax
je 0x412024
test esi, esi
je 0x412011
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
mov dword [edi + 8], 1
mov dword [edi + 0xc], 0
jmp 0x412279
mov ecx, dword [ebp]
mov edx, dword [esp + 0x10]
mov eax, dword [ecx - 8]
mov ecx, dword [edx - 8]
add ecx, 4
cmp eax, ecx
jle 0x412005
xor ebx, ebx
push ebx
call dword [sym.imp.WININET.dll_InternetAttemptConnect]
test eax, eax
je 0x412062
mov dword [edi + 8], 3
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp esi, ebx
mov dword [edi + 0xc], eax
je 0x412279
jmp 0x412271
push ebx
push ebx
push ebx
push ebx
push str.INIPayDownload
call dword [sym.imp.WININET.dll_InternetOpenA]
cmp eax, ebx
mov dword [esi + 0x3c], eax
jne 0x41209d
mov dword [edi + 8], 3
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi + 0xc], eax
cmp esi, ebx
je 0x412279
mov eax, dword [esi]
push 1
mov ecx, esi
call dword [eax]
jmp 0x412279
lea ebp, [esi + 0x54]
mov dword [ebp], 0x1d4c0
push ebx
push 4
push ebx
push ebx
push esi
push 0x413070
call sub.MFC42.DLL_AfxBeginThread
cmp eax, ebx
mov dword [esi + 0x5c], eax
jne 0x4120e5
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi + 0xc], eax
mov dword [edi + 8], 0xc
mov ecx, dword [esi + 0x3c]
push ecx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
cmp esi, ebx
je 0x412279
jmp 0x412271
mov dword [eax + 0x28], ebx
mov eax, dword [esi + 0x5c]
mov ecx, dword [eax + 0x2c]
mov dword [esi + 0x40], ecx
mov edx, dword [eax + 0x2c]
push edx
call dword [sym.imp.KERNEL32.dll_ResumeThread]
cmp eax, 0xffffffff
jne 0x412145
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi + 0xc], eax
mov dword [edi + 8], 0xc
mov eax, dword [esi + 0x3c]
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, dword [esi + 0x5c]
cmp ecx, ebx
je 0x412128
mov edx, dword [ecx]
push 1
call dword [edx + 4]
mov eax, dword [esi + 0x60]
mov dword [esi + 0x5c], ebx
cmp eax, ebx
mov dword [esi + 0x40], ebx
je 0x412088
mov ecx, edi
call fcn.004137d0
jmp 0x412088
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x4c], eax
mov eax, dword [esi + 0x38]
test eax, eax
je 0x412237
push 1
push 0
push 0
lea ecx, [esp + 0x24]
push 0
push ecx
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
je 0x4121b5
mov eax, dword [esp + 0x1c]
cmp eax, 0x100
jb 0x412183
cmp eax, 0x108
jbe 0x4121b5
cmp eax, 0x200
jb 0x412191
cmp eax, 0x209
jbe 0x4121b5
cmp eax, 0xa0
jb 0x41219f
cmp eax, 0xa9
jbe 0x4121b5
lea edx, [esp + 0x18]
push edx
call dword [sym.imp.USER32.dll_TranslateMessage]
lea eax, [esp + 0x18]
push eax
call dword [sym.imp.USER32.dll_DispatchMessageA]
mov ecx, dword [edi + 0x14]
push ecx
call dword [sym.imp.USER32.dll_SetCursor]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x4c]
mov edx, eax
sub edx, ecx
mov ecx, dword [esi + 0xc]
cmp edx, ecx
jle 0x4121f4
mov ecx, dword [esi + 0x44]
test ecx, ecx
jne 0x4121f4
mov ecx, dword [esi + 0x3c]
test ecx, ecx
je 0x412222
mov ecx, dword [esi + 0x30]
test ecx, ecx
jne 0x4121f4
mov ecx, dword [esi + 0x48]
test ecx, ecx
je 0x4122a3
mov ecx, dword [esi + 0x3c]
test ecx, ecx
je 0x412222
mov ecx, dword [esi + 0x30]
test ecx, ecx
jne 0x412209
mov ecx, dword [esi + 0x48]
test ecx, ecx
je 0x412222
test ebx, ebx
jne 0x41220f
mov ebx, eax
mov ecx, eax
sub ecx, ebx
mov ebx, eax
mov eax, dword [ebp]
sub eax, ecx
push eax
push ebp
call dword [sym.imp.KERNEL32.dll_InterlockedExchange]
cmp dword [ebp], 0
jl 0x4122d5
mov eax, dword [esi + 0x38]
test eax, eax
jne 0x41215a
mov eax, dword [esi + 0x44]
test eax, eax
je 0x41230e
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x38], 0
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 0xffffffffffffffff
push esi
call fcn.00411670
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [edi + 0xc], eax
mov ecx, dword [esi + 0x44]
test esi, esi
mov dword [edi + 8], ecx
je 0x412279
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
lea ecx, [esp + 0x10]
mov byte [esp + 0x3c], 0
call sub.MFC42.DLL_CString::CString
mov dword [esp + 0x3c], 0xffffffff
call sub.MFC42.DLL_AfxGetModuleState
mov ecx, dword [eax + 4]
call sub.MFC42.DLL_CCmdTarget::EndWaitCursor
xor eax, eax
jmp 0x4123b0
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x38], 0
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 0xffffffffffffffff
push esi
call fcn.00411670
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test esi, esi
mov dword [edi + 0xc], eax
mov dword [edi + 8], 2
je 0x412279
jmp 0x412271
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x38], 0
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 0xffffffffffffffff
push esi
call fcn.00411670
add esp, 8
call dword [sym.imp.KERNEL32.dll_GetLastError]
test esi, esi
mov dword [edi + 0xc], eax
mov dword [edi + 8], 0xd
je 0x412279
jmp 0x412271
mov eax, dword [esi + 0x3c]
test eax, eax
je 0x41231c
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, dword [esi + 0x30]
mov edi, dword [esi + 0x34]
test eax, eax
mov eax, dword [esi + 0x48]
jne 0x412331
test eax, eax
jne 0x412374
xor edi, edi
jmp 0x412374
test eax, eax
jne 0x412374
mov eax, dword [esi + 0x20]
test eax, eax
je 0x412374
cmp dword [esi + 0x24], 0x5e9
jne 0x412355
mov ecx, dword [esi + 0x58]
test ecx, ecx
je 0x412355
push esi
push edi
call fcn.004190e0
jmp 0x412374
push eax
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je 0x412374
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x20]
push esi
push eax
push 0x5e7
push ecx
call dword [sym.imp.USER32.dll_SendMessageA]
push 0xffffffffffffffff
push esi
call fcn.00411670
add esp, 8
test esi, esi
je 0x41238b
mov edx, dword [esi]
push 1
mov ecx, esi
call dword [edx]
lea ecx, [esp + 0x10]
mov byte [esp + 0x3c], 0
call sub.MFC42.DLL_CString::CString
mov dword [esp + 0x3c], 0xffffffff
call sub.MFC42.DLL_AfxGetModuleState
mov ecx, dword [eax + 4]
call sub.MFC42.DLL_CCmdTarget::EndWaitCursor
mov eax, edi
mov ecx, dword [esp + 0x34]
pop edi
pop esi
pop ebp
pop ebx
mov dword fs:[0], ecx
add esp, 0x30
ret 0x20