Function at 0x42ef47
Capabilities:
Check for time delay via gettickcount
Check http status code
Connect to http server
Create http request
Get http response content encoding
Parse pe header
Query remote server for available data
Read data from internet
Receive data
Send data
Send http request

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x513f5a
mov eax, dword fs:[0]
push eax
mov eax, 0x19f4
call fcn.004d9200
mov eax, dword [0x577014]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x1948], ecx
mov al, byte [ebp + 0x98]
mov ebx, dword [ebp + 8]
mov byte [ebp - 0x194f], al
mov al, byte [ebp + 0x1c]
mov byte [ebp - 0x1911], al
mov al, byte [ebp + 0x40]
mov byte [ebp - 0x194d], al
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x1960], eax
mov eax, dword [ebp + 0x10]
mov dword [ebp - 0x18f0], ebx
mov dword [ebp - 0x18ec], eax
mov al, byte [ebp + 0x18]
mov byte [ebp - 0x1905], al
mov eax, dword [ebp + 0x20]
mov dword [ebp - 0x196c], eax
mov eax, dword [ebp + 0x24]
mov dword [ebp - 0x1964], eax
mov eax, dword [ebp + 0x2c]
mov dword [ebp - 0x1944], eax
mov eax, dword [ebp + 0x30]
mov ecx, dword [ebp + 0x14]
mov dword [ebp - 0x194c], eax
mov eax, dword [ebp + 0x34]
mov dword [ebp - 0x1970], eax
mov eax, dword [ebp + 0x38]
mov dword [ebp - 0x1988], eax
mov eax, dword [ebp + 0x3c]
mov dword [ebp - 0x1928], eax
mov eax, dword [ebp + 0x44]
mov dword [ebp - 0x18cc], eax
mov al, byte [ebp + 0x48]
mov byte [ebp - 0x1935], al
mov eax, dword [ebp + 0x4c]
mov dword [ebp - 0x1930], eax
mov al, byte [ebp + 0x70]
mov byte [ebp - 0x194e], al
mov al, byte [ebp + 0x74]
mov byte [ebp - 0x1912], al
mov al, byte [ebp + 0x78]
mov dword [ebp - 0x18e4], ebx
xor ebx, ebx
mov byte [ebp - 0x1950], al
mov eax, dword [ebp + 0x7c]
mov dword [ebp - 0x1904], ecx
mov dword [ebp - 0x198c], eax
mov dword [ebp - 0x19f4], ebx
push 3
pop eax
mov dword [ebp - 4], eax
mov edi, ebx
xor eax, eax
mov dword [ebp - 0x18f4], ebx
lea ecx, [ebp - 0x1918]
mov dword [ebp - 0x1918], 4
push ecx
test edi, edi
lea ecx, [ebp - 0x18f4]
push ecx
setne al
add eax, 0x49
push eax
push ebx
mov dword [ebp - 0x18f8], eax
call dword [sym.imp.WININET.dll_InternetQueryOptionW]
mov eax, dword [ebp - 0x18f4]
push 0x40
pop ecx
cmp eax, ecx
cmovb eax, ecx
mov dword [ebp - 0x193c], eax
cmp dword [ebp - 0x18f4], eax
je 0x42f0dd
mov esi, dword [ebp - 0x18f8]
lea eax, [ebp - 0x193c]
push 4
push eax
push esi
push ebx
call dword [sym.imp.WININET.dll_InternetSetOptionW]
lea eax, [ebp - 0x1918]
push eax
lea eax, [ebp - 0x193c]
push eax
push esi
push ebx
call dword [sym.imp.WININET.dll_InternetQueryOptionW]
inc edi
cmp edi, 2
jl 0x42f05e
lea ecx, [ebp - 0x19d8]
call fcn.0042d201
mov byte [ebp - 4], 4
lea esi, [ebp - 0x19d8]
mov eax, dword [ebp - 0x1928]
lea ecx, [ebp - 0x50]
test eax, eax
cmovne esi, eax
mov dword [ebp - 0x1934], esi
call fcn.0042d201
push eax
mov ecx, esi
mov byte [ebp - 4], 5
call fcn.00431a67
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 4
call fcn.0042df17
mov ecx, dword [ebp - 0x1970]
mov eax, ecx
mov edx, dword [ebp - 0x1988]
and eax, edx
mov ebx, dword [ebp - 0x18e4]
mov esi, dword [ebp - 0x194c]
cmp eax, 0xffffffff
je 0x42f1ea
xor eax, eax
inc eax
mov byte [ebp - 0x1929], al
cmp esi, edx
jl 0x42f297
jg 0x42f173
mov edx, dword [ebp - 0x1944]
cmp edx, ecx
jbe 0x42f29d
push 0x9e
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
lea eax, [ebp - 0x18e0]
mov byte [ebp - 4], 6
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x19d8]
call fcn.0042df17
lea ecx, [ebp + 0x58]
call fcn.004ad684
mov ecx, dword [ebp + 0x60]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp + 0x84]
add ecx, 0xfffffff0
call fcn.00407189
mov ecx, dword [ebp + 0x94]
add ecx, 0xfffffff0
jmp 0x42f274
mov edx, dword [ebp - 0x1944]
xor ecx, ecx
mov eax, edx
mov byte [ebp - 0x1929], cl
or eax, esi
je 0x42f29f
push 0xa0
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 7
lea eax, [ebp - 0x18e0]
mov ecx, ebx
push eax
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x19d8]
call fcn.0042df17
lea ecx, [ebp + 0x58]
call fcn.004ad684
mov ecx, dword [ebp + 0x60]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp + 0x84]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp + 0x94]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov eax, ebx
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004d818b
leave
ret 0x94
mov edx, dword [ebp - 0x1944]
xor ecx, ecx
cmp byte [ebp + 0x50], 0
je 0x42f2e8
cmp byte [ebp - 0x1905], 0
jne 0x42f2e8
cmp byte [ebp - 0x1912], 0
jne 0x42f2e8
mov eax, dword [ebp + 0x94]
cmp dword [eax - 0xc], ecx
jne 0x42f2e8
push 0xa4
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 8
jmp 0x42f223
mov eax, dword [ebp - 0x1904]
push 0x3f
pop ecx
test eax, eax
je 0x42f303
cmp word [eax], cx
jne 0x42f303
add eax, 2
mov dword [ebp - 0x1904], eax
mov ecx, dword [ebp - 0x1948]
xor edi, edi
push edi
push edi
push esi
mov eax, dword [ecx]
push edx
push edi
lea edx, [ebp - 0x195c]
push edx
call dword [eax + 4]
mov byte [ebp - 4], 9
lea eax, [ebp - 0x195c]
cmp dword [ebp - 0x195c], 0x80004004
push eax
jne 0x42f345
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x1954]
jmp 0x42f237
lea ecx, [ebp - 0x18e0]
call fcn.0040121b
mov byte [ebp - 4], 0xa
cmp dword [ebp - 0x18e0], 0
jge 0x42f3cb
cmp dword [ebp - 0x18dc], 0
mov eax, 0xb7
cmovne eax, dword [ebp - 0x18dc]
push eax
push dword [ebp - 0x18e0]
push ecx
mov esi, esp
mov dword [ebp - 0x18f0], esi
mov edi, dword [ebp - 0x18d8]
lea ecx, [edi - 0x10]
call fcn.004070e7
add eax, 0x10
lea ecx, [ebp - 0x197c]
mov dword [esi], eax
call fcn.00406620
lea eax, [ebp - 0x197c]
mov byte [ebp - 4], 0xb
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x1974]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [edi - 0x10]
call fcn.00407189
jmp 0x42f33a
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov byte [ebp - 4], 4
mov ecx, dword [ebp - 0x1954]
lea ecx, [ecx - 0x10]
call fcn.00407189
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov esi, dword [ebp - 0x196c]
mov dword [ebp - 0x1984], eax
test esi, esi
je 0x42f41f
lea eax, [ebp - 0x18f8]
mov ecx, esi
push eax
call fcn.0042d5b3
mov dword [ebp - 0x19f4], 2
xor ecx, ecx
mov eax, dword [eax]
jmp 0x42f423
xor ecx, ecx
mov eax, ecx
push ecx
push ecx
push eax
movzx eax, byte [ebp - 0x194d]
xor edx, edx
inc edx
push 3
xor eax, edx
test esi, esi
pop ecx
cmovne eax, ecx
push eax
push dword [ebp + 0x60]
call dword [sym.imp.WININET.dll_InternetOpenW]
mov esi, eax
mov dword [ebp - 0x191c], esi
test byte [ebp - 0x19f4], 2
je 0x42f463
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
test esi, esi
jne 0x42f4a7
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0xc8
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0xd
jmp 0x42f223
cmp dword [ebp + 0x64], 0
je 0x42f52b
push 4
lea eax, [ebp + 0x64]
push eax
push 2
push esi
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
jne 0x42f52b
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0xcb
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0xe
lea eax, [ebp - 0x18e0]
mov ecx, ebx
push eax
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
test esi, esi
je 0x42f23f
push esi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x42f23f
cmp dword [ebp + 0x68], 0
je 0x42f584
push 4
lea eax, [ebp + 0x68]
push eax
push 5
push esi
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
jne 0x42f584
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0xce
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0xf
jmp 0x42f4fb
cmp dword [ebp + 0x6c], 0
je 0x42f5dd
push 4
lea eax, [ebp + 0x6c]
push eax
push 6
push esi
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
jne 0x42f5dd
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0xd1
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x10
jmp 0x42f4fb
mov ax, word [ebp + 0x28]
mov edi, 0x1bb
mov dl, byte [ebp - 0x1911]
movzx ecx, ax
test ax, ax
jne 0x42f5ff
push 0x50
test dl, dl
pop eax
cmovne eax, edi
movzx ecx, ax
movzx eax, dl
xor edx, edx
push edx
shl eax, 0x17
mov dword [ebp - 0x1918], eax
or eax, 0x84080200
push eax
push 3
pop eax
push eax
push edx
push edx
push ecx
push dword [ebp - 0x1960]
push esi
call dword [sym.imp.WININET.dll_InternetConnectW]
mov edi, eax
mov dword [ebp - 0x18e8], edi
test edi, edi
jne 0x42f674
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0xeb
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x12
jmp 0x42f4fb
lea ecx, [ebp - 0x18d0]
call fcn.0040687a
mov byte [ebp - 4], 0x13
lea ecx, [ebp - 0x18f8]
push dword [ebp - 0x18ec]
call fcn.00406fea
push eax
lea ecx, [ebp - 0x18d0]
mov byte [ebp - 4], 0x14
call fcn.00405d6e
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov eax, dword [ebp - 0x1904]
test eax, eax
je 0x42f725
xor ecx, ecx
cmp word [eax], cx
je 0x42f725
push 0x544514
lea ecx, [ebp - 0x1928]
call fcn.00406fea
mov byte [ebp - 4], 0x15
mov edx, eax
mov ecx, dword [ebp - 0x1904]
push ecx
lea ecx, [ebp - 0x18f8]
call fcn.00409442
pop ecx
mov byte [ebp - 4], 0x16
lea ecx, [ebp - 0x18d0]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.004d5d16
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x1928]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp + 0x94]
lea ecx, [ecx - 0x10]
call fcn.004070e7
add eax, 0x10
mov dword [ebp - 0x18d4], eax
xor ecx, ecx
mov byte [ebp - 4], 0x17
cmp dword [eax - 0xc], ecx
jne 0x42f79b
cmp byte [ebp - 0x1950], 0
mov eax, 0x544900
mov ecx, str.DELETE
mov ebx, str.POST
cmove ecx, eax
cmp byte [ebp - 0x1912], 0
mov eax, 0x5448e8
cmove eax, ecx
cmp byte [ebp - 0x1905], 0
cmove ebx, eax
push ebx
call fcn.004ddaa2
pop ecx
push eax
push ebx
lea ecx, [ebp - 0x18d4]
call fcn.00406efb
mov eax, dword [ebp - 0x18d4]
xor ecx, ecx
mov ebx, dword [ebp - 0x18e4]
push ecx
xor ecx, ecx
mov edx, 0xc000
cmp byte [ebp - 0x194e], cl
cmovne ecx, edx
cmp byte [ebp - 0x1935], 0
mov edx, 0x200000
cmovne edx, ecx
movzx ecx, byte [ebp - 0x194f]
shl ecx, 0x16
or edx, ecx
xor ecx, ecx
or edx, dword [ebp - 0x1918]
or edx, 0x84080300
push edx
push ecx
push ecx
push ecx
push dword [ebp - 0x18d0]
push eax
push edi
call dword [sym.imp.WININET.dll_HttpOpenRequestW]
mov edi, eax
mov dword [ebp - 0x1904], edi
mov byte [ebp - 4], 0x18
test edi, edi
jne 0x42f891
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x117
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
lea eax, [ebp - 0x18e0]
mov byte [ebp - 4], 0x19
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x18d4]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x18d0]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
mov eax, dword [ebp - 0x18e8]
test eax, eax
je 0x42f881
push eax
call edi
test esi, esi
je 0x42f23f
push esi
call edi
jmp 0x42f23f
xor eax, eax
push 0x18
mov dword [ebp - 0x1900], eax
mov dword [ebp - 0x18fc], eax
call fcn.004d8429
pop ecx
xor ecx, ecx
inc ecx
mov dword [eax], eax
mov dword [eax + 4], eax
mov dword [eax + 8], eax
mov byte [eax + 0xc], cl
mov byte [eax + 0xd], cl
mov dword [ebp - 0x1900], eax
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x1900]
mov eax, dword [ebp + 0x58]
push eax
push dword [eax]
call fcn.004b98e7
push str.Accept
lea ecx, [ebp - 0x1924]
call fcn.00406fea
push 0x544908
lea ecx, [ebp - 0x1920]
mov byte [ebp - 4], 0x1b
call fcn.00406fea
lea eax, [ebp - 0x1924]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0x1910]
push eax
lea ecx, [ebp - 0x1900]
call fcn.004b9919
lea ecx, [ebp - 0x1924]
mov byte [ebp - 4], 0x1a
call fcn.00407c33
cmp byte [ebp - 0x1905], 0
je 0x42f982
cmp byte [ebp + 0x50], 0
jne 0x42f982
push str.Content_Type
lea ecx, [ebp - 0x1924]
call fcn.00406fea
push str.application_x_www_form_urlencoded
lea ecx, [ebp - 0x1920]
mov byte [ebp - 4], 0x1d
call fcn.00406fea
lea eax, [ebp - 0x1924]
mov byte [ebp - 4], 0x1e
push eax
lea eax, [ebp - 0x1910]
push eax
lea ecx, [ebp - 0x1900]
call fcn.004b157a
lea ecx, [ebp - 0x1924]
mov byte [ebp - 4], 0x1a
call fcn.00407c33
mov ebx, dword [ebp - 0x18cc]
test ebx, ebx
je 0x42f9d8
push str.Referer
lea ecx, [ebp - 0x1924]
call fcn.00406fea
push ebx
lea ecx, [ebp - 0x1920]
mov byte [ebp - 4], 0x1f
call fcn.00406fea
lea eax, [ebp - 0x1924]
mov byte [ebp - 4], 0x20
push eax
lea eax, [ebp - 0x1910]
push eax
lea ecx, [ebp - 0x1900]
call fcn.004b157a
lea ecx, [ebp - 0x1924]
mov byte [ebp - 4], 0x1a
call fcn.00407c33
cmp byte [ebp - 0x1929], 0
je 0x42fa6d
push dword [ebp - 0x1988]
lea eax, [ebp - 0x18f8]
push dword [ebp - 0x1970]
push dword [ebp - 0x194c]
push dword [ebp - 0x1944]
push str.bytes_I64d__I64d
push eax
call fcn.004011e0
add esp, 0x18
mov ebx, eax
push str.Range
lea ecx, [ebp - 0x1924]
mov byte [ebp - 4], 0x21
call fcn.00406fea
push ebx
lea ecx, [ebp - 0x1920]
mov byte [ebp - 4], 0x22
call fcn.00407166
lea eax, [ebp - 0x1924]
mov byte [ebp - 4], 0x23
push eax
lea eax, [ebp - 0x1910]
push eax
lea ecx, [ebp - 0x1900]
call fcn.004b157a
lea ecx, [ebp - 0x1924]
call fcn.00407c33
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x1930]
test ecx, ecx
je 0x42fb5d
mov eax, dword [ecx]
cmp eax, dword [ecx + 4]
je 0x42fb5d
lea ecx, [ebp - 0x1918]
call fcn.0040687a
mov byte [ebp - 4], 0x24
xor eax, eax
mov ecx, dword [ebp - 0x1930]
mov ebx, eax
mov eax, dword [ecx + 4]
sub eax, dword [ecx]
sar eax, 2
test eax, eax
je 0x42fb02
mov esi, ecx
push ecx
mov ecx, esp
push 0x5449c0
call fcn.00406fea
mov edx, esi
lea ecx, [ebp - 0x18f8]
call fcn.004b159d
pop ecx
mov byte [ebp - 4], 0x25
lea ecx, [ebp - 0x1918]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.004d5d16
mov byte [ebp - 4], 0x24
mov ecx, dword [ebp - 0x18f8]
add ecx, 0xfffffff0
call fcn.00407189
mov eax, dword [esi + 4]
inc ebx
sub eax, dword [esi]
sar eax, 2
cmp ebx, eax
jb 0x42faad
mov esi, dword [ebp - 0x191c]
push str.Cookie
lea ecx, [ebp - 0x1924]
call fcn.00406fea
mov byte [ebp - 4], 0x26
mov ebx, dword [ebp - 0x1918]
lea ecx, [ebx - 0x10]
call fcn.004070e7
add eax, 0x10
mov dword [ebp - 0x1920], eax
lea eax, [ebp - 0x1924]
mov byte [ebp - 4], 0x27
push eax
lea eax, [ebp - 0x1910]
push eax
lea ecx, [ebp - 0x1900]
call fcn.004b9919
lea ecx, [ebp - 0x1924]
call fcn.00407c33
lea ecx, [ebx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x18cc]
call fcn.0040687a
mov byte [ebp - 4], 0x28
mov eax, dword [ebp - 0x1900]
mov eax, dword [eax]
mov dword [ebp - 0x1918], eax
jmp 0x42fc16
lea ebx, [eax + 0x10]
push 0x5449d8
mov edx, ebx
lea ecx, [ebp - 0x193c]
call fcn.00409442
lea ecx, [ebx + 4]
mov byte [ebp - 4], 0x29
push ecx
mov edx, eax
lea ecx, [ebp - 0x1928]
call fcn.0040a037
push 0x5531d8
mov edx, eax
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x18f8]
call fcn.00409442
add esp, 0xc
mov byte [ebp - 4], 0x2b
lea ecx, [ebp - 0x18cc]
mov eax, dword [eax]
push dword [eax - 0xc]
push eax
call fcn.004d5d16
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x1928]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x193c]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x1918]
call fcn.004094c2
mov eax, dword [ebp - 0x1918]
cmp byte [eax + 0xd], 0
je 0x42fb7f
xor ecx, ecx
mov dword [ebp - 0x18c8], ecx
mov ebx, dword [ebp - 0x1934]
mov byte [ebp - 4], 0x2c
mov byte [ebp - 0x1930], cl
mov eax, dword [ebp - 0x1964]
test eax, eax
je 0x42fc7f
push eax
mov edx, edi
lea ecx, [ebp - 0x1a00]
call fcn.0042ecb1
pop ecx
mov byte [ebp - 4], 0x2d
cmp dword [ebp - 0x1a00], 0
jl 0x43039b
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x19f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
xor eax, eax
inc eax
xor ecx, ecx
mov byte [ebp - 0x1930], al
cmp dword [ebp + 0x54], 0
je 0x42fc8a
mov edx, dword [ebp + 0x54]
jmp 0x42fc9d
mov eax, dword [ebp - 0x198c]
test eax, eax
je 0x42fca5
push eax
call fcn.004eefe0
pop ecx
mov edx, eax
mov dword [ebp - 0x18f4], edx
jmp 0x42fcad
mov edx, ecx
mov dword [ebp - 0x18f4], ecx
xor eax, eax
mov byte [ebp - 0x1911], al
mov byte [ebp - 0x1912], al
cmp byte [ebp + 0x50], 0
je 0x42fd06
push 0xa
pop ecx
xor eax, eax
lea edi, [ebp - 0x38]
rep stosd dword es:[edi], eax
mov eax, dword [ebp - 0x18cc]
xor edi, edi
mov dword [ebp - 0x38], 0x28
mov ecx, eax
cmp dword [eax - 0xc], edi
cmove ecx, edi
mov edi, dword [ebp - 0x1904]
mov dword [ebp - 0x30], ecx
mov eax, dword [eax - 0xc]
mov dword [ebp - 0x2c], eax
xor eax, eax
push eax
push eax
push eax
lea eax, [ebp - 0x38]
mov dword [ebp - 0x1c], edx
push eax
push edi
call dword [sym.imp.WININET.dll_HttpSendRequestExW]
jmp 0x42fd27
mov eax, dword [ebp - 0x18cc]
mov ecx, dword [eax - 0xc]
test ecx, ecx
jne 0x42fd17
xor eax, eax
mov ecx, eax
push edx
push dword [ebp - 0x198c]
push ecx
push eax
push edi
call dword [sym.imp.WININET.dll_HttpSendRequestW]
test eax, eax
jne 0x42ffdb
call fcn.00406710
cmp byte [ebp + 0x88], 0
je 0x42fdb6
cmp eax, 0x80072f19
jne 0x42fdb6
cmp byte [ebp - 0x1912], 0
jne 0x42fdb6
xor eax, eax
mov dword [ebp - 0x18f8], 4
inc eax
mov byte [ebp - 0x1912], al
xor eax, eax
mov dword [ebp - 0x18ec], eax
lea eax, [ebp - 0x18f8]
push eax
lea eax, [ebp - 0x18ec]
push eax
push 0x1f
push edi
call dword [sym.imp.WININET.dll_InternetQueryOptionW]
test eax, eax
je 0x4304d7
or dword [ebp - 0x18ec], 0x80
lea eax, [ebp - 0x18ec]
push 4
push eax
push 0x1f
push edi
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
je 0x43047d
mov edx, dword [ebp - 0x18f4]
jmp 0x42fcbb
cmp byte [ebp + 0x80], 0
je 0x430833
cmp eax, 0x80072f0d
jne 0x430833
cmp byte [ebp - 0x1911], 0
jne 0x430833
xor eax, eax
inc eax
mov byte [ebp - 0x1911], al
xor eax, eax
mov dword [ebp - 0x18ec], eax
lea eax, [ebp - 0x18f8]
mov byte [ebp - 4], 0x31
push eax
lea eax, [ebp - 0x18ec]
mov dword [ebp - 0x18f8], 4
push eax
push 0x69
push edi
call dword [sym.imp.WININET.dll_InternetQueryOptionW]
test eax, eax
je 0x4307f3
mov eax, dword [ebp - 0x18ec]
xor edx, edx
inc edx
cmp dword [eax + 0xc], edx
jne 0x4307cd
mov ecx, dword [eax + 4]
cmp ecx, 0x20
jne 0x4307c6
mov ecx, dword [eax + 8]
cmp ecx, 0x100
jne 0x43079b
mov eax, dword [eax + 0x10]
mov eax, dword [eax]
cmp dword [eax + 0xc], edx
jne 0x430732
mov eax, dword [eax + 0x10]
lea edi, [ebp - 0x24]
push 0x14
mov eax, dword [eax]
mov ecx, dword [eax + 4]
xor eax, eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp - 0x1928]
pop edi
push eax
lea eax, [ebp - 0x24]
mov dword [ebp - 0x1928], edi
push eax
push 3
pop eax
push eax
push ecx
call dword [sym.imp.CRYPT32.dll_CertGetCertificateContextProperty]
test eax, eax
je 0x4306f5
cmp dword [ebp - 0x1928], edi
jne 0x4306b5
xor eax, eax
lea edi, [ebp - 0x18c4]
stosd dword es:[edi], eax
lea ecx, [ebp - 0x18c4]
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
stosd dword es:[edi], eax
lea eax, [ebp + 0x84]
push eax
lea eax, [ebp - 0x197c]
push eax
call fcn.00427274
mov byte [ebp - 4], 0x37
cmp dword [ebp - 0x197c], 0
jl 0x43060c
mov ecx, dword [ebp - 0x1974]
add ecx, 0xfffffff0
call fcn.00407189
push 0x14
lea eax, [ebp - 0x18c4]
push eax
lea eax, [ebp - 0x24]
push eax
call fcn.004da4e8
add esp, 0xc
test eax, eax
jne 0x430554
mov byte [ebp - 4], 0x2c
cmp dword [ebp - 0x18ec], eax
je 0x42ff13
push dword [ebp - 0x18ec]
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateChain]
mov edi, dword [ebp - 0x1904]
xor eax, eax
mov dword [ebp - 0x18ec], eax
lea eax, [ebp - 0x18f8]
push eax
lea eax, [ebp - 0x18ec]
mov dword [ebp - 0x18f8], 4
push eax
push 0x1f
push edi
call dword [sym.imp.WININET.dll_InternetQueryOptionW]
test eax, eax
je 0x430514
or dword [ebp - 0x18ec], 0x1100
lea eax, [ebp - 0x18ec]
push 4
push eax
push 0x1f
push edi
call dword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
jne 0x42fdab
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x1d4
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x3b
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x18c8]
call fcn.004ab87b
jmp 0x430423
cmp byte [ebp + 0x50], 0
je 0x43025d
mov eax, dword [ebp - 0x18f4]
xor ecx, ecx
mov dword [ebp - 0x1918], eax
mov edx, ecx
mov dword [ebp - 0x18f8], edx
mov dword [ebp - 0x18ec], ecx
mov dword [ebp - 0x1960], ecx
test eax, eax
je 0x430249
mov eax, dword [ebp - 0x1948]
push 0
push dword [ebp - 0x18f4]
mov eax, dword [eax]
push 0
push ecx
push edx
lea ecx, [ebp - 0x19f0]
push ecx
mov ecx, dword [ebp - 0x1948]
call dword [eax + 8]
mov byte [ebp - 4], 0x3c
cmp dword [ebp - 0x19f0], 0
jl 0x4309bc
mov eax, dword [ebp - 0x1918]
mov edx, 0x8000
cmp eax, edx
cmova eax, edx
mov edx, dword [ebp - 0x198c]
xor ecx, ecx
mov dword [ebp - 0x193c], eax
mov dword [ebp - 0x196c], ecx
test edx, edx
je 0x4300f9
lea ecx, [ebp - 0x196c]
push ecx
mov ecx, dword [ebp - 0x1960]
push eax
lea eax, [edx + ecx]
push eax
push edi
call dword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
jne 0x430197
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x1f9
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x3d
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x19e8]
jmp 0x42ffc3
mov dword [ebp - 0x19e4], ecx
mov dword [ebp - 0x19e0], ecx
mov dword [ebp - 0x19dc], ecx
push eax
lea ecx, [ebp - 0x19e4]
mov byte [ebp - 4], 0x3e
call fcn.00409336
mov ecx, dword [ebp - 0x193c]
test ecx, ecx
je 0x430969
push dword [ebp - 0x19e4]
mov edx, dword [ebp - 0x1948]
push ecx
xor ecx, ecx
push ecx
mov ecx, dword [ebp - 0x1960]
mov eax, dword [edx]
push ecx
lea ecx, [ebp - 0x195c]
push ecx
mov ecx, edx
call dword [eax + 0x10]
mov byte [ebp - 4], 0x40
cmp dword [ebp - 0x195c], 0
jl 0x43090a
lea ecx, [ebp - 0x1954]
call fcn.004071a1
lea eax, [ebp - 0x196c]
push eax
push dword [ebp - 0x193c]
push dword [ebp - 0x19e4]
push edi
call dword [sym.imp.WININET.dll_InternetWriteFile]
test eax, eax
je 0x4308a3
lea ecx, [ebp - 0x19e4]
call fcn.00409384
mov eax, dword [ebp - 0x196c]
cmp eax, dword [ebp - 0x193c]
jne 0x430853
add dword [ebp - 0x18ec], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov dword [ebp - 0x18f0], eax
xor eax, eax
sub ecx, dword [ebp - 0x1984]
sbb eax, eax
mov dword [ebp - 0x193c], eax
js 0x43020f
jg 0x4301da
mov eax, 0x3e8
cmp ecx, eax
jbe 0x43020f
mov eax, dword [ebp - 0x18ec]
mov edx, 0x3e8
push dword [ebp - 0x193c]
mul edx
push ecx
push edx
push eax
call fcn.004d8de0
mov dword [ebp - 0x18f8], eax
mov eax, dword [ebp - 0x18f0]
mov dword [ebp - 0x1984], eax
xor eax, eax
mov dword [ebp - 0x18ec], eax
lea ecx, [ebp - 0x19e8]
mov byte [ebp - 4], 0x2c
call fcn.004071a1
mov ecx, dword [ebp - 0x1960]
mov eax, 0x8000
sub dword [ebp - 0x1918], eax
add ecx, eax
mov edx, dword [ebp - 0x18f8]
mov dword [ebp - 0x1960], ecx
cmp ecx, dword [ebp - 0x18f4]
jb 0x43000f
xor eax, eax
push eax
push eax
push eax
push edi
call dword [sym.imp.WININET.dll_HttpEndRequestW]
test eax, eax
je 0x4309d5
xor eax, eax
mov dword [ebp - 0x18f0], 4
push eax
lea eax, [ebp - 0x18f0]
push eax
push ebx
push 0x20000013
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x431a27
cmp dword [ebx], 0x197
jne 0x430af0
cmp byte [ebp - 0x1930], 0
jne 0x430ac7
lea ecx, [ebp - 0x1924]
call fcn.0040687a
lea ecx, [ebp - 0x1920]
call fcn.0040687a
mov ecx, dword [ebp - 0x1948]
lea edx, [ebp - 0x1905]
mov byte [ebp - 4], 0x46
xor eax, eax
push dword [ebp - 0x18c8]
mov byte [ebp - 0x1905], al
mov eax, dword [ecx]
push edx
lea edx, [ebp - 0x1924]
push edx
mov eax, dword [eax + 0x14]
call eax
test al, al
je 0x430aa1
lea eax, [ebp - 0x1924]
mov edx, edi
push eax
lea ecx, [ebp - 0x18e0]
call fcn.0042ecb1
pop ecx
mov byte [ebp - 4], 0x47
cmp dword [ebp - 0x18e0], 0
jl 0x430a2f
lea ecx, [ebp - 0x18d8]
mov byte [ebp - 4], 0x46
call fcn.004071a1
push 8
call fcn.004d8429
pop ecx
mov dword [ebp - 0x190c], eax
lea ecx, [ebp - 0x1924]
mov byte [ebp - 4], 0x49
push ecx
mov ecx, eax
call fcn.00431b2e
mov ecx, dword [ebp - 0x18c8]
mov dword [ebp - 0x18f0], ecx
mov dword [ebp - 0x18c8], eax
test ecx, ecx
je 0x430369
call fcn.00407c33
push 8
push dword [ebp - 0x18f0]
call fcn.004d840d
pop ecx
pop ecx
mov eax, dword [ebp - 0x1930]
lea ecx, [ebp - 0x1924]
cmp byte [ebp - 0x1905], 0
push 1
movzx eax, al
pop edx
cmove eax, edx
mov byte [ebp - 4], 0x2c
mov dword [ebp - 0x1930], eax
call fcn.00407c33
xor ecx, ecx
jmp 0x42fc38
cmp dword [ebp - 0x19fc], 0
mov eax, 0x15c
cmovne eax, dword [ebp - 0x19fc]
push eax
push dword [ebp - 0x1a00]
lea eax, [ebp - 0x19f8]
push ecx
mov ecx, esp
push eax
call fcn.00407166
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x2e
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x19f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov eax, dword [ebp - 0x18c8]
test eax, eax
je 0x430423
mov ecx, eax
call fcn.00407c33
push 8
push dword [ebp - 0x18c8]
call fcn.004d840d
pop ecx
pop ecx
mov ecx, dword [ebp - 0x18cc]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x1900]
call fcn.004ad684
test edi, edi
je 0x430447
push edi
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, dword [ebp - 0x18d4]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x18d0]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov eax, dword [ebp - 0x18e8]
test eax, eax
je 0x42f517
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
jmp 0x42f517
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x18d
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x30
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
jmp 0x4303fb
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x18b
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x2f
jmp 0x4304b8
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x1cb
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x3a
jmp 0x42ffa9
push 0x1c1
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x39
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
cmp dword [ebp - 0x18ec], 0
je 0x4305b4
push dword [ebp - 0x18ec]
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateChain]
xor eax, eax
mov dword [ebp - 0x18ec], eax
lea ecx, [ebp - 0x18c8]
call fcn.004ab87b
mov ecx, dword [ebp - 0x18cc]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x1900]
call fcn.004ad684
mov eax, dword [ebp - 0x1904]
mov edi, dword [sym.imp.WININET.dll_InternetCloseHandle]
test eax, eax
je 0x4305eb
push eax
call edi
mov ecx, dword [ebp - 0x18d4]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x18d0]
lea ecx, [ecx - 0x10]
call fcn.00407189
jmp 0x42f874
cmp dword [ebp - 0x1978], 0
mov eax, 0x1bf
cmovne eax, dword [ebp - 0x1978]
push eax
push dword [ebp - 0x197c]
lea eax, [ebp - 0x1974]
push ecx
mov ecx, esp
push eax
call fcn.00407166
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x38
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x1974]
lea ecx, [ecx - 0x10]
call fcn.00407189
cmp dword [ebp - 0x18ec], 0
je 0x430691
push dword [ebp - 0x18ec]
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateChain]
xor eax, eax
mov dword [ebp - 0x18ec], eax
mov edi, dword [ebp - 0x18c8]
test edi, edi
je 0x4305bf
mov ecx, edi
call fcn.00407c33
push 8
push edi
call fcn.004d840d
pop ecx
pop ecx
jmp 0x4305bf
push 0x1bc
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x36
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
jmp 0x43066c
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x1bb
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x35
jmp 0x4306d6
push 0x1b4
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x34
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
cmp dword [ebp - 0x18ec], 0
je 0x430403
push dword [ebp - 0x18ec]
call dword [sym.imp.CRYPT32.dll_CertFreeCertificateChain]
xor eax, eax
mov dword [ebp - 0x18ec], eax
jmp 0x430403
push 0x1ae
push 0x80004005
push ecx
mov eax, esp
push ecx
push str.0x_08x
push eax
call fcn.004011e0
mov ebx, dword [ebp - 0x18e4]
add esp, 0xc
mov ecx, ebx
call fcn.00406620
jmp 0x430775
push 0x1ab
jmp 0x4307a0
push 0x1a8
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x33
jmp 0x430753
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x1a5
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x32
jmp 0x430753
push 0x19b
push eax
push ecx
mov ecx, esp
call fcn.0040687a
mov ebx, dword [ebp - 0x18e4]
mov ecx, ebx
call fcn.00406620
jmp 0x430403
push 0x206
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x43
call fcn.0040121b
lea ecx, [ebp - 0x18d8]
call fcn.004071a1
lea ecx, [ebp - 0x19e8]
call fcn.004071a1
jmp 0x42ffcb
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x203
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x42
call fcn.0040121b
lea ecx, [ebp - 0x18d8]
call fcn.004071a1
lea ecx, [ebp - 0x19e4]
call fcn.00409384
jmp 0x430893
cmp dword [ebp - 0x1958], 0
mov eax, 0x200
cmovne eax, dword [ebp - 0x1958]
push eax
push dword [ebp - 0x195c]
lea eax, [ebp - 0x1954]
push ecx
mov ecx, esp
push eax
call fcn.00407166
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x41
call fcn.0040121b
lea ecx, [ebp - 0x18d8]
call fcn.004071a1
lea ecx, [ebp - 0x1954]
jmp 0x4308f8
push 0x1ff
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x3f
call fcn.0040121b
mov ecx, dword [ebp - 0x18d8]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x19e4]
call fcn.00409384
jmp 0x4300ee
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x19f0]
push eax
mov ecx, ebx
call fcn.0040121b
jmp 0x4300ee
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x214
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x44
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
call fcn.0040121b
lea ecx, [ebp - 0x18d8]
jmp 0x430899
cmp dword [ebp - 0x18dc], 0
mov eax, 0x22e
cmovne eax, dword [ebp - 0x18dc]
push eax
push dword [ebp - 0x18e0]
lea eax, [ebp - 0x18d8]
push ecx
mov ecx, esp
push eax
call fcn.00407166
lea ecx, [ebp - 0x195c]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x195c]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x48
call fcn.0040121b
lea ecx, [ebp - 0x1954]
call fcn.004071a1
lea ecx, [ebp - 0x18d8]
call fcn.004071a1
lea ecx, [ebp - 0x1924]
call fcn.00407c33
jmp 0x42ffcb
push 0x22b
push 0x80004004
push ecx
mov ecx, esp
push str.Proxy_authentication
call fcn.00406fea
mov ebx, dword [ebp - 0x18e4]
mov ecx, ebx
call fcn.00406620
jmp 0x430a91
push 0x222
push 0x80004005
push ecx
mov ecx, esp
push str.Proxy_authentication_failed
call fcn.00406fea
mov ebx, dword [ebp - 0x18e4]
mov ecx, ebx
call fcn.00406620
jmp 0x42ffcb
cmp byte [ebp + 0x90], 0
je 0x430e19
xor ecx, ecx
lea eax, [ebp - 0x1930]
push ecx
push eax
push ecx
push 0x16
push edi
mov dword [ebp - 0x1930], ecx
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
mov ebx, eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
test ebx, ebx
je 0x430b49
push 0x24e
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x4a
jmp 0x430a10
cmp eax, 0x7a
je 0x430b74
push 0x24f
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x4b
jmp 0x430a10
cmp dword [ebp - 0x1930], 0
jne 0x430ba3
push 0x250
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x4c
jmp 0x430a10
lea ecx, [ebp - 0x18f4]
call fcn.0040687a
mov byte [ebp - 4], 0x4d
lea ecx, [ebp - 0x18f4]
push dword [ebp - 0x1930]
call fcn.0040dcc6
xor ecx, ecx
push ecx
lea ecx, [ebp - 0x1930]
push ecx
push eax
push 0x16
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
push 0xffffffffffffffff
lea ecx, [ebp - 0x18f4]
mov ebx, eax
call fcn.004d64bc
test ebx, ebx
jne 0x430c4f
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x254
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x4e
call fcn.0040121b
lea ecx, [ebp - 0x18d8]
call fcn.004071a1
mov ecx, dword [ebp - 0x18f4]
jmp 0x42ffc3
lea ecx, [ebp - 0x1940]
call fcn.004adabc
push ecx
mov byte [ebp - 4], 0x4f
mov ecx, esp
mov dword [ebp - 0x190c], esp
push 0x5531d8
call fcn.00406fea
push ecx
lea eax, [ebp - 0x18f4]
mov byte [ebp - 4], 0x50
mov ecx, esp
push eax
call fcn.00407166
xor eax, eax
mov byte [ebp - 4], 0x4f
lea ecx, [ebp - 0x1940]
lea edx, [eax + 1]
call fcn.004b1620
cmp dword [ebp - 0x193c], 0
pop ecx
pop ecx
jne 0x430cf3
push 0x25a
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
mov byte [ebp - 4], 0x51
call fcn.0040121b
lea ecx, [ebp - 0x18d8]
call fcn.004071a1
lea ecx, [ebp - 0x1940]
call fcn.004ad994
jmp 0x430c44
mov eax, dword [ebp - 0x1940]
lea ecx, [ebp - 0x1918]
mov eax, dword [eax]
add eax, 8
push eax
call fcn.00407166
mov byte [ebp - 4], 0x52
lea ecx, [ebp - 0x1940]
mov eax, dword [ebp - 0x1940]
push dword [eax]
call fcn.004b0289
mov ecx, dword [ebp - 0x1940]
mov eax, dword [ecx]
cmp eax, ecx
je 0x430de8
mov edi, eax
mov esi, ecx
xor eax, eax
lea ebx, [edi + 8]
push eax
push 0x5449d8
mov ecx, ebx
call fcn.004045bb
mov dword [ebp - 0x18f0], eax
cmp eax, 0xffffffff
je 0x430dd0
push eax
lea eax, [ebp - 0x1928]
mov ecx, ebx
push eax
call fcn.0040452e
mov byte [ebp - 4], 0x53
mov ecx, ebx
mov eax, dword [ebp - 0x18f0]
add eax, 2
push eax
lea eax, [ebp - 0x18f8]
push eax
call fcn.00404574
mov ecx, dword [ebp - 0x1934]
lea eax, [ebp - 0x1928]
push eax
lea eax, [ebp - 0x1924]
mov byte [ebp - 4], 0x54
push eax
lea ecx, [ecx + 0x1c]
call fcn.004b660d
mov ecx, dword [eax]
lea eax, [ebp - 0x18f8]
add ecx, 0x14
push eax
push dword [ecx]
call fcn.004b65a3
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov byte [ebp - 4], 0x52
mov ecx, dword [ebp - 0x1928]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov eax, dword [edi]
mov edi, eax
cmp eax, esi
jne 0x430d35
mov esi, dword [ebp - 0x191c]
mov edi, dword [ebp - 0x1904]
mov ecx, dword [ebp - 0x1918]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x1940]
call fcn.004ad994
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x18f4]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ebx, dword [ebp - 0x1934]
xor eax, eax
push 0x208
push eax
lea eax, [ebp - 0x258]
push eax
call fcn.004d9f30
add esp, 0xc
mov dword [ebp - 0x18f0], 0x208
xor eax, eax
push eax
lea eax, [ebp - 0x18f0]
push eax
lea eax, [ebp - 0x258]
push eax
push 0x1d
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
lea ecx, [ebx + 0xc]
test eax, eax
je 0x430e69
lea eax, [ebp - 0x258]
push eax
call fcn.00406fbf
jmp 0x430e6e
call fcn.00406d1e
push ecx
push ecx
lea ecx, [ebp - 0x18e0]
call fcn.004ae6b4
mov byte [ebp - 4], 0x55
mov ecx, dword [ebp - 0x18e0]
mov eax, dword [ebp - 0x18dc]
sub eax, ecx
sar eax, 1
add eax, eax
mov dword [ebp - 0x18f0], eax
xor eax, eax
push eax
mov word [ecx], ax
lea eax, [ebp - 0x18f0]
push eax
push ecx
push 0x21
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
lea ecx, [ebx + 8]
mov dword [ebp - 0x193c], ecx
test eax, eax
je 0x430ec8
push dword [ebp - 0x18e0]
call fcn.00406fbf
jmp 0x430ecd
call fcn.00406d1e
lea ecx, [ebp - 0x18e0]
mov byte [ebp - 4], 0x2c
call fcn.004b0516
add ebx, 0x30
xor eax, eax
push 0x208
push eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
lea eax, [ebp - 0x258]
push eax
call fcn.004d9f30
add esp, 0xc
mov dword [ebp - 0x18f0], 0x208
xor eax, eax
push eax
lea eax, [ebp - 0x18f0]
push eax
lea eax, [ebp - 0x258]
push eax
push 5
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x430f88
push ebx
lea eax, [ebp - 0x258]
push 0x53cd68
push eax
call fcn.00409ee9
xor ecx, ecx
add esp, 0xc
inc ecx
cmp eax, ecx
je 0x430fcb
push 0x28d
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x56
mov ebx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov ecx, ebx
call fcn.0040121b
lea ecx, [ebp - 0x18e0]
call fcn.004066a2
jmp 0x42ffcb
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x2f76
jne 0x430f9e
xor eax, eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
jmp 0x430fcd
call fcn.00406710
xor ecx, ecx
mov edx, eax
push ecx
push ecx
lea ecx, [ebp - 0x1964]
call fcn.004d5f06
pop ecx
pop ecx
mov ecx, dword [ebp - 0x1964]
xor eax, eax
mov dword [ebx], eax
mov dword [ebx + 4], eax
lea ecx, [ecx - 0x10]
call fcn.00407189
xor eax, eax
push 0x1860
push eax
lea eax, [ebp - 0x18b0]
push eax
call fcn.004d9f30
add esp, 0xc
mov dword [ebp - 0x1918], 0x1860
xor eax, eax
mov dword [ebp - 0x1928], eax
lea eax, [ebp - 0x1928]
push eax
lea eax, [ebp - 0x1918]
push eax
lea eax, [ebp - 0x18b0]
push eax
push 0x2b
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x43107f
mov eax, dword [ebp - 0x1934]
add eax, 0x10
mov esi, eax
lea eax, [ebp - 0x18b0]
push eax
lea ecx, [ebp - 0x18f8]
call fcn.00406fea
lea eax, [ebp - 0x18f8]
mov byte [ebp - 4], 0x57
push eax
mov ecx, esi
call fcn.00405059
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x18f8]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea eax, [ebp - 0x1928]
push eax
lea eax, [ebp - 0x1918]
push eax
lea eax, [ebp - 0x18b0]
push eax
push 0x2b
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x431021
mov esi, dword [ebp - 0x191c]
cmp byte [ebp - 0x1929], 0
jne 0x4310a6
mov esi, dword [ebp - 0x1934]
mov eax, dword [ebx]
add esi, 0x38
mov ecx, dword [ebx + 4]
mov ebx, dword [ebp - 0x1934]
mov dword [esi], eax
mov dword [esi + 4], ecx
jmp 0x43145a
mov eax, dword [ebp - 0x1934]
cmp dword [eax], 0xce
je 0x43112c
lea ecx, [ebp - 0x18f4]
call fcn.0040687a
mov byte [ebp - 4], 0x58
lea eax, [ebp - 0x18f4]
push dword [ebx]
mov ebx, dword [ebp - 0x1934]
push dword [ebp - 0x1970]
push dword [ebp - 0x1944]
push dword [ebx]
push str._d___d__d__d_
push eax
call fcn.00409fd2
add esp, 0x18
lea eax, [ebp - 0x18f4]
cmp dword [ebx], 0xc8
jne 0x431120
push 0x2df
push 0x80040701
push ecx
mov ecx, esp
push eax
call fcn.00407166
mov ebx, dword [ebp - 0x18e4]
mov ecx, ebx
call fcn.00406620
jmp 0x430c44
push 0x2e2
push 0x80004005
jmp 0x431105
mov eax, dword [ebx]
or eax, dword [ebx + 4]
je 0x431182
mov eax, dword [ebp - 0x1970]
sub eax, dword [ebp - 0x1944]
mov ecx, dword [ebp - 0x1988]
sbb ecx, dword [ebp - 0x194c]
xor edx, edx
inc edx
add eax, edx
adc ecx, 0
cmp dword [ebx], eax
jne 0x43115c
cmp dword [ebx + 4], ecx
je 0x431182
push 0x2e7
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x59
jmp 0x430f64
mov esi, 0x208
lea eax, [ebp - 0x258]
push esi
xor ebx, ebx
push ebx
push eax
call fcn.004d9f30
add esp, 0xc
mov dword [ebp - 0x18f0], esi
lea eax, [ebp - 0x18f0]
push ebx
push eax
lea eax, [ebp - 0x258]
push eax
push 0x35
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x4312be
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x2ef
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov byte [ebp - 4], 0x5a
call fcn.0040121b
lea ecx, [ebp - 0x18e0]
call fcn.004066a2
lea ecx, [ebp - 0x18c8]
call fcn.004ab87b
mov ecx, dword [ebp - 0x18cc]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x1900]
call fcn.004ad684
lea ecx, [ebp - 0x1904]
call fcn.004adaee
mov ecx, dword [ebp - 0x18d4]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x18d0]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x18e8]
call fcn.004adaee
lea ecx, [ebp - 0x191c]
call fcn.004adaee
lea ecx, [ebp - 0x19d8]
call fcn.0042df17
lea ecx, [ebp + 0x58]
call fcn.004ad684
mov ecx, dword [ebp + 0x60]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp + 0x84]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp + 0x94]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov eax, dword [ebp - 0x18e4]
jmp 0x42f27b
mov dword [ebp - 0x1924], ebx
lea eax, [ebp - 0x1968]
mov dword [ebp - 0x1920], ebx
mov dword [ebp - 0x1968], ebx
mov dword [ebp - 0x1964], ebx
mov ebx, dword [ebp - 0x1934]
lea esi, [ebx + 0x38]
push esi
push eax
lea eax, [ebp - 0x1924]
push eax
lea eax, [ebp - 0x258]
push str.bytes__I64d__I64d__I64d
push eax
call fcn.00409ee9
add esp, 0x14
push 3
pop ecx
cmp eax, ecx
je 0x4313e5
push 0x2f3
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov byte [ebp - 4], 0x5b
call fcn.0040121b
lea ecx, [ebp - 0x18e0]
call fcn.004066a2
lea ecx, [ebp - 0x18c8]
call fcn.004ab87b
mov ecx, dword [ebp - 0x18cc]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x1900]
call fcn.004ad684
lea ecx, [ebp - 0x1904]
call fcn.004adaee
mov ecx, dword [ebp - 0x18d4]
lea ecx, [ecx - 0x10]
call fcn.00407189
mov ecx, dword [ebp - 0x18d0]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp - 0x18e8]
call fcn.004adaee
lea ecx, [ebp - 0x191c]
call fcn.004adaee
lea ecx, [ebp - 0x19d8]
call fcn.0042df17
lea ecx, [ebp + 0x58]
call fcn.004ad684
mov ecx, dword [ebp + 0x60]
lea ecx, [ecx - 0x10]
call fcn.00407189
lea ecx, [ebp + 0x84]
call fcn.004071a1
lea ecx, [ebp + 0x94]
call fcn.004071a1
jmp 0x4312b3
mov ecx, dword [ebp - 0x1964]
cmp dword [ebp - 0x1920], ecx
ja 0x431971
mov eax, dword [ebp - 0x1968]
jb 0x43140b
cmp dword [ebp - 0x1924], eax
ja 0x431971
cmp ecx, dword [esi + 4]
ja 0x43194e
jb 0x43141e
cmp eax, dword [esi]
jae 0x43194e
mov edx, dword [ebp - 0x1944]
cmp dword [ebp - 0x1924], edx
jne 0x43192b
mov edx, dword [ebp - 0x194c]
cmp dword [ebp - 0x1920], edx
jne 0x43192b
cmp eax, dword [ebp - 0x1970]
jne 0x431908
cmp ecx, dword [ebp - 0x1988]
jne 0x431908
xor eax, eax
push 0x208
push eax
lea eax, [ebp - 0x258]
push eax
call fcn.004d9f30
add esp, 0xc
mov dword [ebp - 0x18f0], 0x208
xor eax, eax
push eax
lea eax, [ebp - 0x18f0]
push eax
lea eax, [ebp - 0x258]
push eax
push 0xb
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x4314a1
call dword [sym.imp.KERNEL32.dll_GetLastError]
jmp 0x4314b0
lea eax, [ebp - 0x258]
push eax
lea ecx, [ebx + 4]
call fcn.00406fbf
push dword [esi + 4]
mov ecx, dword [ebp - 0x1948]
lea edx, [ebp - 0x1998]
push dword [esi]
push dword [ebp - 0x194c]
mov eax, dword [ecx]
push dword [ebp - 0x1944]
push 0
push edx
call dword [eax + 4]
mov byte [ebp - 4], 0x61
cmp dword [ebp - 0x1998], 0
jge 0x4314ff
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x1998]
push eax
call fcn.0040121b
lea ecx, [ebp - 0x1998]
jmp 0x4319aa
cmp byte [ebp - 0x1935], 0
jne 0x4315d3
cmp dword [ebx], 0x12d
je 0x431530
cmp dword [ebx], 0x12e
je 0x431530
cmp dword [ebx], 0x12f
je 0x431530
cmp dword [ebx], 0x133
jne 0x4315d3
mov esi, 0x1860
lea eax, [ebp - 0x18b0]
push esi
xor ebx, ebx
push ebx
push eax
call fcn.004d9f30
add esp, 0xc
mov dword [ebp - 0x18f0], esi
lea eax, [ebp - 0x18f0]
push ebx
push eax
lea eax, [ebp - 0x18b0]
push eax
push 0x21
push edi
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
jne 0x4315ad
push 0x324
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
mov byte [ebp - 4], 0x62
call fcn.0040121b
lea ecx, [ebp - 0x18e0]
call fcn.004066a2
jmp 0x4314f4
mov ecx, dword [ebp - 0x193c]
lea eax, [ebp - 0x18b0]
push eax
call fcn.00406fbf
mov ecx, dword [ebp - 0x18e4]
xor eax, eax
inc eax
push eax
call fcn.00406602
jmp 0x4314f4
lea ecx, [ebp - 0x1980]
call fcn.004b0bc0
push ecx
push 0x1000
mov byte [ebp - 4], 0x63
call fcn.004d6193
test al, al
jne 0x43163f
push 0x32e
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x64
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
call fcn.0040121b
lea ecx, [ebp - 0x18e0]
call fcn.004066a2
lea ecx, [ebp - 0x1980]
call fcn.0040aeb5
jmp 0x4314f4
xor ecx, ecx
mov dword [ebp - 0x1928], ecx
mov dword [ebp - 0x1918], ecx
mov dword [ebx + 0x28], ecx
mov dword [ebx + 0x2c], ecx
cmp byte [ebp + 0x8c], 0
mov esi, dword [ebp - 0x197c]
je 0x431698
push ecx
push ecx
lea eax, [ebp - 0x18f8]
mov dword [ebp - 0x18f8], ecx
push eax
push edi
call dword [sym.imp.WININET.dll_InternetQueryDataAvailable]
test eax, eax
je 0x43183e
mov eax, dword [ebp - 0x18f8]
test eax, eax
je 0x431691
cmp eax, esi
cmovb esi, eax
jmp 0x431696
xor eax, eax
lea esi, [eax + 1]
xor ecx, ecx
mov dword [ebp - 0x18f4], ecx
push ecx
lea ecx, [ebp - 0x1980]
call fcn.004b0bd0
lea ecx, [ebp - 0x18f4]
push ecx
push esi
push eax
push edi
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x4318e5
mov esi, dword [ebp - 0x1918]
add esi, dword [ebp - 0x18f4]
mov dword [ebp - 0x1918], esi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, eax
mov dword [ebp - 0x1964], eax
xor eax, eax
sub ecx, dword [ebp - 0x1984]
push eax
pop edx
sbb eax, edx
mov dword [ebp - 0x18f0], eax
js 0x431732
jg 0x431701
mov eax, 0x3e8
cmp ecx, eax
jbe 0x431732
push dword [ebp - 0x18f0]
mov eax, esi
mov edx, 0x3e8
mul edx
push ecx
push edx
push eax
call fcn.004d8de0
mov dword [ebp - 0x1928], eax
xor edx, edx
mov eax, dword [ebp - 0x1964]
mov dword [ebp - 0x1984], eax
mov dword [ebp - 0x1918], edx
cmp dword [ebp - 0x18f4], 0
je 0x431896
mov ebx, dword [ebp - 0x1948]
push edx
push dword [ebp - 0x18f4]
mov ecx, dword [ebx]
mov eax, dword [ecx]
mov ecx, ebx
call eax
mov eax, dword [ebx]
mov esi, dword [ebp - 0x18f4]
push ecx
lea ecx, [ebp - 0x1980]
mov ebx, dword [eax + 0xc]
call fcn.004b0bd0
mov ecx, dword [ebp - 0x1934]
mov edx, dword [ebp - 0x1944]
mov edi, dword [ebp - 0x1934]
push esi
add edx, dword [ecx + 0x28]
mov ecx, dword [ebp - 0x194c]
adc ecx, dword [edi + 0x2c]
push eax
push ecx
mov ecx, dword [ebp - 0x1948]
lea eax, [ebp - 0x18e0]
push edx
push eax
call ebx
mov byte [ebp - 4], 0x66
mov ebx, edi
mov edx, dword [ebp - 0x18f4]
mov edi, dword [ebp - 0x1904]
push 0
add edx, dword [ebx + 0x28]
pop esi
adc esi, dword [ebx + 0x2c]
cmp dword [ebp - 0x18e0], 0
mov dword [ebx + 0x28], edx
mov dword [ebx + 0x2c], esi
jl 0x431612
push dword [ebx + 0x3c]
add edx, dword [ebp - 0x1944]
lea ecx, [ebp - 0x195c]
push dword [ebx + 0x38]
adc esi, dword [ebp - 0x194c]
mov eax, dword [ebp - 0x1948]
push esi
push edx
push dword [ebp - 0x1928]
mov eax, dword [eax]
push ecx
mov ecx, dword [ebp - 0x1948]
call dword [eax + 4]
push eax
lea ecx, [ebp - 0x18e0]
mov byte [ebp - 4], 0x67
call fcn.004032ed
lea ecx, [ebp - 0x195c]
mov byte [ebp - 4], 0x66
call fcn.004066a2
cmp dword [ebp - 0x18e0], 0
jl 0x431612
lea ecx, [ebp - 0x18e0]
mov byte [ebp - 4], 0x63
call fcn.004066a2
xor ecx, ecx
jmp 0x431653
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x33f
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x195c]
call fcn.00406620
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x195c]
push eax
mov byte [ebp - 4], 0x65
call fcn.0040121b
lea ecx, [ebp - 0x195c]
jmp 0x43162a
mov edx, dword [ebx + 0x30]
mov eax, edx
mov ecx, dword [ebx + 0x34]
or eax, ecx
je 0x4318d2
cmp dword [ebx + 0x28], edx
jne 0x4318ac
cmp dword [ebx + 0x2c], ecx
je 0x4318d2
push 0x37a
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x68
jmp 0x431612
mov ecx, dword [ebp - 0x18e4]
xor eax, eax
push eax
call fcn.00406602
jmp 0x43162f
call fcn.00406710
push 0x34d
push eax
push ecx
mov ecx, esp
call fcn.0040687a
mov ecx, dword [ebp - 0x18e4]
call fcn.00406620
jmp 0x43162f
push 0x2f8
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x60
jmp 0x431992
push 0x2f7
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x5f
jmp 0x431992
push 0x2f6
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x5e
jmp 0x431992
push 0x2f5
push 0x80004005
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x5d
mov ecx, dword [ebp - 0x18e4]
lea eax, [ebp - 0x18e0]
push eax
call fcn.0040121b
lea ecx, [ebp - 0x18e0]
call fcn.004066a2
lea ecx, [ebp - 0x18c8]
call fcn.004ab87b
lea ecx, [ebp - 0x18cc]
call fcn.004071a1
lea ecx, [ebp - 0x1900]
call fcn.004ad684
lea ecx, [ebp - 0x1904]
call fcn.004adaee
lea ecx, [ebp - 0x18d4]
call fcn.004071a1
lea ecx, [ebp - 0x18d0]
call fcn.004071a1
lea ecx, [ebp - 0x18e8]
call fcn.004adaee
lea ecx, [ebp - 0x191c]
call fcn.004adaee
lea ecx, [ebp - 0x19d8]
call fcn.0042df17
lea ecx, [ebp + 0x58]
call fcn.004ad684
lea ecx, [ebp + 0x60]
call fcn.004071a1
jmp 0x4313ca
call dword [sym.imp.KERNEL32.dll_GetLastError]
movzx ecx, ax
or ecx, 0x80070000
test eax, eax
push 0x21a
cmovle ecx, eax
mov eax, 0x80004005
test ecx, ecx
cmovs eax, ecx
push eax
push ecx
mov ecx, esp
call fcn.0040687a
lea ecx, [ebp - 0x18e0]
call fcn.00406620
mov byte [ebp - 4], 0x45
jmp 0x430a10