Function at 0x46c940
Capabilities:
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4c3a1f
mov eax, dword fs:[0]
push eax
push ecx
mov eax, 0x23ec
call fcn.00454620
mov eax, dword [0x4fe37c]
xor eax, ebp
mov dword [ebp - 0x44], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov eax, dword [ebp + 0xc]
mov dword [eax], 0
mov dword [ebp - 0x1c], 0
cmp dword [ebp + 8], 0
jne 0x46c9a2
mov eax, dword [ebp - 0x14]
jmp 0x46dd55
mov dword [ebp - 4], 0
cmp dword [ebp + 0x10], 0
je 0x46d588
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x30], edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x10]
mov dword [ebp - 0x2c], ecx
push 0x10000000
push 0
push 0
push 0
push 0x4d27e0
call dword [sym.imp.WININET.dll_InternetOpenW]
mov edx, dword [ebp + 8]
mov dword [edx], eax
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x46ca03
mov dword [ebp - 0x233c], 0
push 0x4f1a84
lea ecx, [ebp - 0x233c]
push ecx
call fcn.0044a79c
push 0x46c550
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
call dword [sym.imp.WININET.dll_InternetSetStatusCallbackW]
cmp eax, 0xffffffff
jne 0x46ca34
mov dword [ebp - 0x2340], 0
push 0x4f1a84
lea ecx, [ebp - 0x2340]
push ecx
call fcn.0044a79c
mov dword [ebp - 0x28], 0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x24], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
push 0
push 3
push 0
push 0
mov eax, dword [ebp + 8]
movzx ecx, word [eax + 0x234]
push ecx
mov edx, dword [ebp + 8]
add edx, 0x34
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.WININET.dll_InternetConnectW]
mov edx, dword [ebp + 8]
mov dword [edx + 4], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
jne 0x46ca9b
mov dword [ebp - 0x2344], 0
push 0x4f1a84
lea ecx, [ebp - 0x2344]
push ecx
call fcn.0044a79c
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x30]
push edx
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46cacf
cmp dword [ebp - 0x20], 1
je 0x46cacf
cmp dword [ebp - 0x20], 0x80
je 0x46cacf
cmp dword [ebp - 0x20], 0x81
jne 0x46caea
mov dword [ebp - 0x2348], 0
push 0x4f1a84
lea eax, [ebp - 0x2348]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
add ecx, 0x1a38
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 1
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
mov dword [ebp - 0x34], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
push 0x84480000
lea eax, [ebp - 0x40]
push eax
push 0
push 0
mov ecx, dword [ebp + 8]
add ecx, 0x238
push ecx
mov edx, dword [ebp + 8]
add edx, 0x14
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 4]
push ecx
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov edx, dword [ebp + 8]
mov dword [edx + 8], eax
mov eax, dword [ebp + 8]
cmp dword [eax + 8], 0
jne 0x46cb69
mov dword [ebp - 0x234c], 0
push 0x4f1a84
lea ecx, [ebp - 0x234c]
push ecx
call fcn.0044a79c
push 0xffffffffffffffff
push 0
lea edx, [ebp - 0x30]
push edx
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46cb9d
cmp dword [ebp - 0x20], 1
je 0x46cb9d
cmp dword [ebp - 0x20], 0x80
je 0x46cb9d
cmp dword [ebp - 0x20], 0x81
jne 0x46cbb8
mov dword [ebp - 0x2350], 0
push 0x4f1a84
lea eax, [ebp - 0x2350]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
add ecx, 0x2238
push ecx
call fcn.00444a90
add esp, 4
test eax, eax
jbe 0x46cc1b
push SysReAllocString
mov edx, dword [ebp + 8]
add edx, 0x2238
push edx
call fcn.00444a90
add esp, 4
push eax
mov eax, dword [ebp + 8]
add eax, 0x2238
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
test eax, eax
jne 0x46cc1b
mov dword [ebp - 0x2354], 0
push 0x4f1a84
lea eax, [ebp - 0x2354]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
add ecx, 0x2a38
push ecx
call fcn.00444a90
add esp, 4
test eax, eax
jbe 0x46cc7e
push 0xa0000000
mov edx, dword [ebp + 8]
add edx, 0x2a38
push edx
call fcn.00444a90
add esp, 4
push eax
mov eax, dword [ebp + 8]
add eax, 0x2a38
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
test eax, eax
jne 0x46cc7e
mov dword [ebp - 0x2358], 0
push 0x4f1a84
lea eax, [ebp - 0x2358]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x3a38], 0
je 0x46ce33
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3a3c], 0
jle 0x46ce33
mov dword [ebp - 0xcc], 0
xor eax, eax
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0xc4], eax
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], eax
mov dword [ebp - 0xac], eax
mov dword [ebp - 0xa8], eax
mov dword [ebp - 0xcc], 0x28
mov dword [ebp - 0xc8], 0
mov ecx, dword [ebp + 8]
add ecx, 0x1238
mov dword [ebp - 0xc4], ecx
mov edx, dword [ebp + 8]
add edx, 0x1238
push edx
call fcn.00444a90
add esp, 4
mov dword [ebp - 0xc0], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x3a38]
push ecx
lea ecx, [ebp - 0xa4]
call fcn.00406c80
mov dword [ebp - 0x23d8], eax
mov byte [ebp - 4], 1
lea edx, [ebp - 0xa4]
push edx
lea ecx, [ebp - 0x88]
call fcn.00406cc0
mov dword [ebp - 0x23dc], eax
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x88]
call fcn.0040add0
push eax
call fcn.00442b2d
add esp, 4
mov dword [ebp - 0x23e0], eax
mov eax, dword [ebp - 0x23e0]
mov dword [ebp - 0x235c], eax
mov ecx, dword [ebp - 0x235c]
mov dword [ebp - 0x1c], ecx
lea ecx, [ebp - 0x88]
call fcn.0040add0
push eax
lea ecx, [ebp - 0x88]
call fcn.00406eb0
push eax
mov edx, dword [ebp - 0x1c]
push edx
call fcn.004452f0
add esp, 0xc
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0xb8], eax
lea ecx, [ebp - 0x88]
call fcn.0040add0
mov dword [ebp - 0xb4], eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
push 0x20
push 0
lea eax, [ebp - 0xcc]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
test eax, eax
jne 0x46ce13
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3e5
je 0x46ce13
mov dword [ebp - 0x2360], 0
push 0x4f1a84
lea eax, [ebp - 0x2360]
push eax
call fcn.0044a79c
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x88]
call fcn.00406d00
mov byte [ebp - 4], 0
lea ecx, [ebp - 0xa4]
call fcn.00406d00
jmp 0x46ce7e
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 0xc]
push edx
push 0
push 0
push 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
test eax, eax
jne 0x46ce7e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3e5
je 0x46ce7e
mov dword [ebp - 0x2364], 0
push 0x4f1a84
lea edx, [ebp - 0x2364]
push edx
call fcn.0044a79c
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x30]
push eax
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46ceb2
cmp dword [ebp - 0x20], 1
je 0x46ceb2
cmp dword [ebp - 0x20], 0x80
je 0x46ceb2
cmp dword [ebp - 0x20], 0x81
jne 0x46cecd
mov dword [ebp - 0x2368], 0
push 0x4f1a84
lea ecx, [ebp - 0x2368]
push ecx
call fcn.0044a79c
mov edx, dword [ebp + 8]
mov eax, dword [edx + 0xc]
push eax
push 9
push 0
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpEndRequestW]
test eax, eax
jne 0x46cf16
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3e5
je 0x46cf16
mov dword [ebp - 0x236c], 0
push 0x4f1a84
lea eax, [ebp - 0x236c]
push eax
call fcn.0044a79c
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x30]
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46cf4a
cmp dword [ebp - 0x20], 1
je 0x46cf4a
cmp dword [ebp - 0x20], 0x80
je 0x46cf4a
cmp dword [ebp - 0x20], 0x81
jne 0x46cf65
mov dword [ebp - 0x2370], 0
push 0x4f1a84
lea edx, [ebp - 0x2370]
push edx
call fcn.0044a79c
mov dword [ebp - 0x6c], 0
xor eax, eax
mov word [ebp - 0x64], ax
xor ecx, ecx
mov dword [ebp - 0x62], ecx
mov dword [ebp - 0x5e], ecx
mov dword [ebp - 0x5a], ecx
mov dword [ebp - 0x56], ecx
mov dword [ebp - 0x52], ecx
mov dword [ebp - 0x4e], ecx
mov dword [ebp - 0x4a], ecx
mov word [ebp - 0x46], cx
mov dword [ebp - 0x68], 0x10
mov dword [ebp - 0xd0], 0
jmp 0x46cfaf
mov edx, dword [ebp - 0xd0]
add edx, 1
mov dword [ebp - 0xd0], edx
cmp dword [ebp - 0xd0], 2
jge 0x46d030
lea eax, [ebp - 0x6c]
push eax
lea ecx, [ebp - 0x68]
push ecx
lea edx, [ebp - 0x64]
push edx
push 0x13
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x46cfd9
jmp 0x46d030
push 0x7d0
push 0
lea edx, [ebp - 0x30]
push edx
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46d010
cmp dword [ebp - 0x20], 1
je 0x46d010
cmp dword [ebp - 0x20], 0x80
je 0x46d010
cmp dword [ebp - 0x20], 0x81
jne 0x46d02b
mov dword [ebp - 0x2374], 0
push 0x4f1a84
lea eax, [ebp - 0x2374]
push eax
call fcn.0044a79c
jmp 0x46cfa0
cmp dword [ebp - 0x68], 6
jne 0x46d583
push 0x4d280c
lea ecx, [ebp - 0x64]
push ecx
call fcn.0043f670
add esp, 8
lea edx, [ebp - 0x64]
cmp eax, edx
jne 0x46d583
mov dword [ebp - 0x16c], 0
xor eax, eax
mov word [ebp - 0x160], ax
push 0x7e
push 0
lea ecx, [ebp - 0x15e]
push ecx
call fcn.00445020
add esp, 0xc
mov dword [ebp - 0x168], 0x40
mov dword [ebp - 0x164], 0
mov dword [ebp - 0xdc], 1
lea edx, [ebp - 0x16c]
push edx
lea eax, [ebp - 0x168]
push eax
lea ecx, [ebp - 0x160]
push ecx
push 5
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x46d135
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x164], eax
cmp dword [ebp - 0x164], 0x3e5
jne 0x46d12b
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x30]
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46d10e
cmp dword [ebp - 0x20], 1
je 0x46d10e
cmp dword [ebp - 0x20], 0x80
je 0x46d10e
cmp dword [ebp - 0x20], 0x81
jne 0x46d129
mov dword [ebp - 0x2378], 0
push 0x4f1a84
lea edx, [ebp - 0x2378]
push edx
call fcn.0044a79c
jmp 0x46d135
mov dword [ebp - 0xdc], 0
mov dword [ebp - 0xd8], 0
mov dword [ebp - 0xd4], 0
call fcn.0046c590
mov dword [ebp - 0xe0], eax
cmp dword [ebp - 0xe0], 6
jne 0x46d35c
mov dword [ebp - 0x170], 0
push 0x1000
push 0
lea eax, [ebp - 0x1170]
push eax
call fcn.00445020
add esp, 0xc
mov dword [ebp - 0x170], 0x1000
lea ecx, [ebp - 0x170]
push ecx
mov edx, dword [ebp - 0x170]
push edx
lea eax, [ebp - 0x1170]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x46d239
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x164], eax
cmp dword [ebp - 0x164], 0x3e5
jne 0x46d21e
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x30]
push eax
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46d201
cmp dword [ebp - 0x20], 1
je 0x46d201
cmp dword [ebp - 0x20], 0x80
je 0x46d201
cmp dword [ebp - 0x20], 0x81
jne 0x46d21c
mov dword [ebp - 0x237c], 0
push 0x4f1a84
lea ecx, [ebp - 0x237c]
push ecx
call fcn.0044a79c
jmp 0x46d239
mov dword [ebp - 0x2380], 0
push 0x4f1a84
lea edx, [ebp - 0x2380]
push edx
call fcn.0044a79c
mov eax, dword [ebp - 0xd4]
add eax, dword [ebp - 0x170]
mov dword [ebp - 0xd4], eax
cmp dword [ebp - 0xd4], 0
jle 0x46d34a
mov ecx, dword [ebp - 0xd4]
add ecx, 1
push ecx
call fcn.00442b2d
add esp, 4
mov dword [ebp - 0x23e4], eax
mov edx, dword [ebp - 0x23e4]
mov dword [ebp - 0x2384], edx
mov eax, dword [ebp - 0x2384]
mov dword [ebp - 0x1174], eax
mov ecx, dword [ebp - 0xd4]
add ecx, 1
push ecx
push 0
mov edx, dword [ebp - 0x1174]
push edx
call fcn.00445020
add esp, 0xc
cmp dword [ebp - 0xd8], 0
je 0x46d321
mov eax, dword [ebp - 0xd4]
sub eax, dword [ebp - 0x170]
push eax
mov ecx, dword [ebp - 0xd8]
push ecx
mov edx, dword [ebp - 0x1174]
push edx
call fcn.004452f0
add esp, 0xc
mov eax, dword [ebp - 0x170]
push eax
lea ecx, [ebp - 0x1170]
push ecx
mov edx, dword [ebp - 0x1174]
add edx, dword [ebp - 0xd4]
sub edx, dword [ebp - 0x170]
push edx
call fcn.004452f0
add esp, 0xc
mov eax, dword [ebp - 0xd8]
mov dword [ebp - 0x2388], eax
mov ecx, dword [ebp - 0x2388]
push ecx
call fcn.004443f2
add esp, 4
mov edx, dword [ebp - 0x1174]
mov dword [ebp - 0xd8], edx
jmp 0x46d34a
mov eax, dword [ebp - 0x170]
push eax
lea ecx, [ebp - 0x1170]
push ecx
mov edx, dword [ebp - 0x1174]
push edx
call fcn.004452f0
add esp, 0xc
mov eax, dword [ebp - 0x1174]
mov dword [ebp - 0xd8], eax
cmp dword [ebp - 0x170], 0
jne 0x46d16b
jmp 0x46d56c
push 0x1000
push 0
lea ecx, [ebp - 0x21a0]
push ecx
call fcn.00445020
add esp, 0xc
push 0x28
push 0
lea edx, [ebp - 0x119c]
push edx
call fcn.00445020
add esp, 0xc
mov dword [ebp - 0x119c], 0x28
lea eax, [ebp - 0x21a0]
mov dword [ebp - 0x1188], eax
mov dword [ebp - 0x1184], 0x1000
push 0
push 9
lea ecx, [ebp - 0x119c]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_InternetReadFileExW]
test eax, eax
jne 0x46d44e
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x164], eax
cmp dword [ebp - 0x164], 0x3e5
jne 0x46d433
push 0xffffffffffffffff
push 0
lea ecx, [ebp - 0x30]
push ecx
push 2
call dword [sym.imp.KERNEL32.dll_WaitForMultipleObjects]
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 0x102
je 0x46d411
cmp dword [ebp - 0x20], 1
je 0x46d411
cmp dword [ebp - 0x20], 0x80
je 0x46d411
cmp dword [ebp - 0x20], 0x81
jne 0x46d42c
mov dword [ebp - 0x238c], 0
push 0x4f1a84
lea edx, [ebp - 0x238c]
push edx
call fcn.0044a79c
jmp 0x46d55f
mov dword [ebp - 0x2390], 0
push 0x4f1a84
lea eax, [ebp - 0x2390]
push eax
call fcn.0044a79c
mov ecx, dword [ebp - 0xd4]
add ecx, dword [ebp - 0x1184]
mov dword [ebp - 0xd4], ecx
cmp dword [ebp - 0xd4], 0
jle 0x46d55f
mov edx, dword [ebp - 0xd4]
add edx, 1
push edx
call fcn.00442b2d
add esp, 4
mov dword [ebp - 0x23e8], eax
mov eax, dword [ebp - 0x23e8]
mov dword [ebp - 0x2394], eax
mov ecx, dword [ebp - 0x2394]
mov dword [ebp - 0x21a4], ecx
mov edx, dword [ebp - 0xd4]
add edx, 1
push edx
push 0
mov eax, dword [ebp - 0x21a4]
push eax
call fcn.00445020
add esp, 0xc
cmp dword [ebp - 0xd8], 0
je 0x46d536
mov ecx, dword [ebp - 0xd4]
sub ecx, dword [ebp - 0x1184]
push ecx
mov edx, dword [ebp - 0xd8]
push edx
mov eax, dword [ebp - 0x21a4]
push eax
call fcn.004452f0
add esp, 0xc
mov ecx, dword [ebp - 0x1184]
push ecx
lea edx, [ebp - 0x21a0]
push edx
mov eax, dword [ebp - 0x21a4]
add eax, dword [ebp - 0xd4]
sub eax, dword [ebp - 0x1184]
push eax
call fcn.004452f0
add esp, 0xc
mov ecx, dword [ebp - 0xd8]
mov dword [ebp - 0x2398], ecx
mov edx, dword [ebp - 0x2398]
push edx
call fcn.004443f2
add esp, 4
mov eax, dword [ebp - 0x21a4]
mov dword [ebp - 0xd8], eax
jmp 0x46d55f
mov ecx, dword [ebp - 0x1184]
push ecx
lea edx, [ebp - 0x21a0]
push edx
mov eax, dword [ebp - 0x21a4]
push eax
call fcn.004452f0
add esp, 0xc
mov ecx, dword [ebp - 0x21a4]
mov dword [ebp - 0xd8], ecx
cmp dword [ebp - 0x1184], 0
jne 0x46d35c
mov edx, dword [ebp + 0xc]
mov eax, dword [ebp - 0xd8]
mov dword [edx], eax
mov ecx, dword [ebp - 0xd4]
add ecx, 1
mov dword [ebp - 0x14], ecx
jmp 0x46dd08
push 0
push 0
push 0
push 0
push str.Sogou_GameDownloader
call dword [sym.imp.WININET.dll_InternetOpenW]
mov edx, dword [ebp + 8]
mov dword [edx], eax
mov eax, dword [ebp + 8]
cmp dword [eax], 0
jne 0x46d5c3
mov dword [ebp - 0x239c], 0
push 0x4f1a84
lea ecx, [ebp - 0x239c]
push ecx
call fcn.0044a79c
push 0
push 0
push 3
push 0
push 0
mov edx, dword [ebp + 8]
movzx eax, word [edx + 0x234]
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x34
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx]
push eax
call dword [sym.imp.WININET.dll_InternetConnectW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 4], eax
mov edx, dword [ebp + 8]
cmp dword [edx + 4], 0
jne 0x46d615
mov dword [ebp - 0x23a0], 0
push 0x4f1a84
lea eax, [ebp - 0x23a0]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
add ecx, 0x1a38
mov dword [ebp - 0x21ac], ecx
mov dword [ebp - 0x21a8], 0
push 0
push 0x84480000
lea edx, [ebp - 0x21ac]
push edx
push 0
push 0
mov eax, dword [ebp + 8]
add eax, 0x238
push eax
mov ecx, dword [ebp + 8]
add ecx, 0x14
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 4]
push eax
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov ecx, dword [ebp + 8]
mov dword [ecx + 8], eax
mov edx, dword [ebp + 8]
cmp dword [edx + 8], 0
jne 0x46d687
mov dword [ebp - 0x23a4], 0
push 0x4f1a84
lea eax, [ebp - 0x23a4]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
add ecx, 0x2238
push ecx
call fcn.00444a90
add esp, 4
test eax, eax
jbe 0x46d6ea
push SysReAllocString
mov edx, dword [ebp + 8]
add edx, 0x2238
push edx
call fcn.00444a90
add esp, 4
push eax
mov eax, dword [ebp + 8]
add eax, 0x2238
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
test eax, eax
jne 0x46d6ea
mov dword [ebp - 0x23a8], 0
push 0x4f1a84
lea eax, [ebp - 0x23a8]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
add ecx, 0x2a38
push ecx
call fcn.00444a90
add esp, 4
test eax, eax
jbe 0x46d74d
push 0xa0000000
mov edx, dword [ebp + 8]
add edx, 0x2a38
push edx
call fcn.00444a90
add esp, 4
push eax
mov eax, dword [ebp + 8]
add eax, 0x2a38
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersW]
test eax, eax
jne 0x46d74d
mov dword [ebp - 0x23ac], 0
push 0x4f1a84
lea eax, [ebp - 0x23ac]
push eax
call fcn.0044a79c
mov ecx, dword [ebp + 8]
cmp dword [ecx + 0x3a38], 0
je 0x46d8a4
mov edx, dword [ebp + 8]
cmp dword [edx + 0x3a3c], 0
jle 0x46d8a4
mov dword [ebp - 0x2234], 0
xor eax, eax
mov dword [ebp - 0x2230], eax
mov dword [ebp - 0x222c], eax
mov dword [ebp - 0x2228], eax
mov dword [ebp - 0x2224], eax
mov dword [ebp - 0x2220], eax
mov dword [ebp - 0x221c], eax
mov dword [ebp - 0x2218], eax
mov dword [ebp - 0x2214], eax
mov dword [ebp - 0x2210], eax
mov dword [ebp - 0x2234], 0x28
mov dword [ebp - 0x2230], 0
mov ecx, dword [ebp + 8]
add ecx, 0x1238
mov dword [ebp - 0x222c], ecx
mov edx, dword [ebp + 8]
add edx, 0x1238
push edx
call fcn.00444a90
add esp, 4
mov dword [ebp - 0x2228], eax
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 0x3a38]
push ecx
lea ecx, [ebp - 0x220c]
call fcn.00406c80
mov dword [ebp - 0x23ec], eax
mov byte [ebp - 4], 3
lea edx, [ebp - 0x220c]
push edx
lea eax, [ebp - 0x21f0]
push eax
call fcn.0046c400
add esp, 8
mov dword [ebp - 0x23f0], eax
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x21f0]
call fcn.00406eb0
mov dword [ebp - 0x2220], eax
lea ecx, [ebp - 0x21f0]
call fcn.0040add0
mov dword [ebp - 0x221c], eax
push 0
push 0
push 0
lea ecx, [ebp - 0x2234]
push ecx
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
test eax, eax
jne 0x46d884
mov dword [ebp - 0x23b0], 0
push 0x4f1a84
lea ecx, [ebp - 0x23b0]
push ecx
call fcn.0044a79c
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x21f0]
call fcn.00406d00
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x220c]
call fcn.00406d00
jmp 0x46d8d8
push 0
push 0
push 0
push 0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
test eax, eax
jne 0x46d8d8
mov dword [ebp - 0x23b4], 0
push 0x4f1a84
lea ecx, [ebp - 0x23b4]
push ecx
call fcn.0044a79c
push 0
push 0
push 0
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_HttpEndRequestW]
test eax, eax
jne 0x46d90a
mov dword [ebp - 0x23b8], 0
push 0x4f1a84
lea ecx, [ebp - 0x23b8]
push ecx
call fcn.0044a79c
mov dword [ebp - 0x21d4], 0
xor edx, edx
mov word [ebp - 0x21cc], dx
xor eax, eax
mov dword [ebp - 0x21ca], eax
mov dword [ebp - 0x21c6], eax
mov dword [ebp - 0x21c2], eax
mov dword [ebp - 0x21be], eax
mov dword [ebp - 0x21ba], eax
mov dword [ebp - 0x21b6], eax
mov dword [ebp - 0x21b2], eax
mov word [ebp - 0x21ae], ax
mov dword [ebp - 0x21d0], 0x10
lea ecx, [ebp - 0x21d4]
push ecx
lea edx, [ebp - 0x21d0]
push edx
lea eax, [ebp - 0x21cc]
push eax
push 0x13
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x46d9af
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0x3e5
je 0x46d9af
mov dword [ebp - 0x23bc], 0
push 0x4f1a84
lea eax, [ebp - 0x23bc]
push eax
call fcn.0044a79c
cmp dword [ebp - 0x21d0], 6
jne 0x46dd08
push 0x4d2840
lea ecx, [ebp - 0x21cc]
push ecx
call fcn.0043f670
add esp, 8
lea edx, [ebp - 0x21cc]
cmp eax, edx
jne 0x46dd08
mov dword [ebp - 0x22c4], 0
xor eax, eax
mov word [ebp - 0x22b8], ax
push 0x7e
push 0
lea ecx, [ebp - 0x22b6]
push ecx
call fcn.00445020
add esp, 0xc
mov dword [ebp - 0x22c0], 0x40
mov dword [ebp - 0x22bc], 0
lea edx, [ebp - 0x22c4]
push edx
lea eax, [ebp - 0x22c0]
push eax
lea ecx, [ebp - 0x22b8]
push ecx
push 5
mov edx, dword [ebp + 8]
mov eax, dword [edx + 8]
push eax
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x46dc56
mov dword [ebp - 0x22d0], 0x100000
mov ecx, dword [ebp - 0x22d0]
push ecx
call fcn.00442b2d
add esp, 4
mov dword [ebp - 0x23f4], eax
mov edx, dword [ebp - 0x23f4]
mov dword [ebp - 0x23c0], edx
mov eax, dword [ebp - 0x23c0]
mov dword [ebp - 0x22c8], eax
mov ecx, dword [ebp - 0x22d0]
push ecx
push 0
mov edx, dword [ebp - 0x22c8]
push edx
call fcn.00445020
add esp, 0xc
mov dword [ebp - 0x22d4], 0
mov dword [ebp - 0x22cc], 0
mov eax, 1
test eax, eax
je 0x46dc3d
mov dword [ebp - 0x22d8], 0
mov byte [ebp - 0x2328], 0
push 0x40
push 0
lea ecx, [ebp - 0x2327]
push ecx
call fcn.00445020
add esp, 0xc
lea edx, [ebp - 0x22d8]
push edx
push 0x40
lea eax, [ebp - 0x2328]
push eax
mov ecx, dword [ebp + 8]
mov edx, dword [ecx + 8]
push edx
call dword [sym.imp.WININET.dll_InternetReadFile]
mov dword [ebp - 0x22dc], eax
cmp dword [ebp - 0x22dc], 0
je 0x46dc38
cmp dword [ebp - 0x22d8], 0
jbe 0x46dc2d
mov eax, dword [ebp - 0x22d4]
mov dword [ebp - 0x232c], eax
mov ecx, dword [ebp - 0x232c]
add ecx, dword [ebp - 0x22d8]
mov dword [ebp - 0x232c], ecx
mov edx, dword [ebp - 0x232c]
cmp edx, dword [ebp - 0x22d0]
jl 0x46dbfb
mov eax, dword [ebp - 0x22d0]
add eax, dword [ebp - 0x22d0]
mov dword [ebp - 0x22d0], eax
mov ecx, dword [ebp - 0x22d0]
push ecx
call fcn.00442b2d
add esp, 4
mov dword [ebp - 0x23f8], eax
mov edx, dword [ebp - 0x23f8]
mov dword [ebp - 0x23c4], edx
mov eax, dword [ebp - 0x23c4]
mov dword [ebp - 0x2330], eax
mov ecx, dword [ebp - 0x22d0]
push ecx
push 0
mov edx, dword [ebp - 0x2330]
push edx
call fcn.00445020
add esp, 0xc
mov eax, dword [ebp - 0x22c8]
push eax
call fcn.004446f0
add esp, 4
push eax
mov ecx, dword [ebp - 0x22c8]
push ecx
mov edx, dword [ebp - 0x2330]
add edx, dword [ebp - 0x22d4]
push edx
call fcn.004452f0
add esp, 0xc
mov eax, dword [ebp - 0x22c8]
mov dword [ebp - 0x23c8], eax
mov ecx, dword [ebp - 0x23c8]
push ecx
call fcn.004443d8
add esp, 4
mov dword [ebp - 0x22c8], 0
mov edx, dword [ebp - 0x2330]
mov dword [ebp - 0x22c8], edx
jmp 0x46dc19
push 0x41
lea eax, [ebp - 0x2328]
push eax
mov ecx, dword [ebp - 0x22c8]
add ecx, dword [ebp - 0x22d4]
push ecx
call fcn.004452f0
add esp, 0xc
mov edx, dword [ebp - 0x22d4]
add edx, dword [ebp - 0x22d8]
mov dword [ebp - 0x22d4], edx
jmp 0x46dc38
cmp dword [ebp - 0x22d8], 0
jne 0x46dc38
jmp 0x46dc3d
jmp 0x46daa7
mov eax, dword [ebp - 0x22d4]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x22c8]
mov dword [ecx], edx
jmp 0x46dd08
lea eax, [ebp - 0x22b8]
push eax
call fcn.00445e3c
add esp, 4
add eax, 1
mov dword [ebp - 0x2338], eax
mov ecx, dword [ebp - 0x2338]
push ecx
call fcn.00442b2d
add esp, 4
mov dword [ebp - 0x23fc], eax
mov edx, dword [ebp - 0x23fc]
mov dword [ebp - 0x23cc], edx
mov eax, dword [ebp - 0x23cc]
mov dword [ebp - 0x2334], eax
mov ecx, dword [ebp - 0x2338]
push ecx
push 0
mov edx, dword [ebp - 0x2334]
push edx
call fcn.00445020
add esp, 0xc
lea eax, [ebp - 0x2338]
push eax
mov ecx, dword [ebp - 0x2338]
push ecx
mov edx, dword [ebp - 0x2334]
push edx
mov eax, dword [ebp + 8]
mov ecx, dword [eax + 8]
push ecx
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x46dcf4
mov dword [ebp - 0x23d0], 0
push 0x4f1a84
lea edx, [ebp - 0x23d0]
push edx
call fcn.0044a79c
mov eax, dword [ebp - 0x2338]
mov dword [ebp - 0x14], eax
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp - 0x2334]
mov dword [ecx], edx
jmp 0x46dd17
mov dword [ebp - 4], 0xffffffff
cmp dword [ebp - 0x1c], 0
je 0x46dd3c
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x23d4], eax
mov ecx, dword [ebp - 0x23d4]
push ecx
call fcn.004443f2
add esp, 4
mov edx, dword [ebp + 8]
cmp dword [edx], 0
je 0x46dd52
push 0
mov eax, dword [ebp + 8]
mov ecx, dword [eax]
push ecx
call dword [sym.imp.WININET.dll_InternetSetStatusCallbackW]
mov eax, dword [ebp - 0x14]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x44]
xor ecx, ebp
call fcn.004443e3
mov esp, ebp
pop ebp
ret