Function at 0x424810
Capabilities:
Check for time delay via gettickcount
Connect to http server
Create http request
Read data from internet
Receive data
Send data
Send http request

Disassembly:
mov eax, 0x7070
call fcn.00457d20
push ebx
push ebp
mov ebp, ecx
push esi
xor esi, esi
push edi
mov ecx, dword [ebp + 4]
cmp dword [ecx + 0x410c], esi
jne 0x424c6e
cmp dword [ecx + 0x5118], esi
jne 0x424c6e
mov eax, dword [esp + 0x7094]
xor ebx, ebx
mov dword [esp + 0x30], esi
mov dword [esp + 0x2c], ebx
mov eax, dword [eax + 0x24]
cmp eax, 0xffffffff
je 0x424896
lea edx, [eax + eax*2]
mov eax, dword [ecx + 0x275c8]
shl edx, 6
mov ebx, dword [eax + edx + 0x74]
cmp ebx, 0xffffffff
mov dword [esp + 0x2c], ebx
je 0x424896
mov edx, ebx
shl edx, 8
add edx, ebx
lea eax, [ebx + edx*2]
lea eax, [eax + eax*2]
lea edx, [ebx + eax*2]
mov eax, dword [ecx + 0x275e8]
cmp dword [eax + edx*4 + 0x3040], esi
je 0x424896
mov dword [esp + 0x30], 1
mov dl, byte [0x493b50]
mov ecx, 0x802
xor eax, eax
lea edi, [esp + 0x5d]
mov byte [esp + 0x5c], dl
mov byte [esp + 0x306c], dl
rep stosd dword es:[edi], eax
stosw word es:[edi], ax
mov ecx, 0x400
xor eax, eax
lea edi, [esp + 0x306d]
push 0x48d1cc
rep stosd dword es:[edi], eax
mov ecx, dword [esp + 0x7088]
mov dword [esp + 0x1c], esi
push ecx
call fcn.00457ca0
add esp, 8
cmp eax, esi
je 0x424c6e
lea edi, [eax + 1]
or ecx, 0xffffffff
xor eax, eax
lea edx, [esp + 0x306c]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
push 0x48d1cc
mov eax, ecx
mov esi, edi
mov edi, edx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
lea ecx, [esp + 0x3070]
push ecx
call fcn.00457ca0
add esp, 8
test eax, eax
je 0x424c6e
mov edx, dword [esp + 0x7084]
push str.Pragma:_no_cache_r_n
push edx
mov byte [eax], 0
call fcn.00457ca0
add esp, 8
test eax, eax
jne 0x424c6e
mov dword [esp + 0x38], eax
mov al, byte [0x493b50]
mov byte [esp + 0x2068], al
mov ecx, 0x400
xor eax, eax
lea edi, [esp + 0x2069]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x7090]
lea ecx, [esp + 0x306c]
cmp eax, 0x50
push ecx
jne 0x42499e
mov edx, dword [esp + 0x7090]
lea eax, [esp + 0x206c]
push edx
push str.http:___s_s
push eax
call fcn.00457c43
add esp, 0x10
jmp 0x4249bc
mov edx, dword [esp + 0x7090]
push eax
push edx
lea eax, [esp + 0x2074]
push str.http:___s:_d_s
push eax
call fcn.00457c43
add esp, 0x14
mov edi, dword [sym.imp.WININET.dll_GetUrlCacheEntryInfoA]
lea ecx, [esp + 0x38]
push ecx
lea edx, [esp + 0x206c]
push 0
push edx
call edi
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
jne 0x424e0a
mov eax, dword [esp + 0x38]
push eax
call fcn.0046e679
add esp, 4
lea ecx, [esp + 0x38]
mov esi, eax
lea edx, [esp + 0x2068]
push ecx
push esi
push edx
mov dword [esp + 0x28], esi
mov dword [esi], 0x50
call edi
test eax, eax
je 0x424e01
mov eax, dword [ebp + 4]
mov dword [esp + 0x20], 0
mov eax, dword [eax + 0x58]
test eax, eax
je 0x424a2f
mov dword [esp + 0x20], 1
jne 0x424aad
mov ecx, dword [esi + 0x38]
lea eax, [esi + 0x38]
test ecx, ecx
je 0x424aad
mov ecx, dword [esi + 0x20]
test ecx, ecx
je 0x424aad
lea ecx, [esp + 0x4c]
push ecx
push eax
call dword [sym.imp.KERNEL32.dll_FileTimeToSystemTime]
lea edx, [esp + 0x3c]
push edx
call dword [sym.imp.KERNEL32.dll_GetSystemTime]
lea eax, [esp + 0x3c]
push 0xffffffffffffffff
push eax
lea ecx, [esp + 0x2c]
call fcn.0046864a
lea ecx, [esp + 0x4c]
push 0xffffffffffffffff
push ecx
lea ecx, [esp + 0x3c]
call fcn.0046864a
mov edx, dword [esp + 0x34]
push ecx
mov eax, esp
lea ecx, [esp + 0x28]
mov dword [eax], edx
lea eax, [esp + 0x18]
push eax
call fcn.004256c0
mov ecx, dword [eax]
mov eax, 0x88888889
imul ecx
mov edi, dword [ebp + 4]
add edx, ecx
sar edx, 5
mov eax, dword [edi + 0x5c]
mov ecx, edx
shr ecx, 0x1f
add edx, ecx
cmp edx, eax
jl 0x424ab9
mov eax, dword [esp + 0x20]
test eax, eax
je 0x424e01
mov edx, dword [esi + 0x40]
xor edi, edi
push str._r_n_r_n
push edx
mov dword [esp + 0x18], edi
call fcn.00457ca0
add esp, 8
cmp eax, edi
je 0x424adc
sub eax, dword [esi + 0x40]
add eax, 4
jmp 0x424adf
mov eax, dword [esi + 0x44]
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x10], eax
cmp ecx, edi
je 0x424ba2
mov eax, dword [ebp + 4]
mov edx, ebx
shl edx, 8
mov ecx, dword [eax + 0x275e8]
add edx, ebx
lea eax, [ebx + edx*2]
lea eax, [eax + eax*2]
lea edx, [ebx + eax*2]
lea eax, [ecx + edx*4 + 0x1038]
mov ecx, dword [esi + 0x40]
push eax
push ecx
mov ecx, ebp
call fcn.00426310
test eax, eax
je 0x424b9e
mov eax, dword [ebp + 4]
mov edx, dword [eax + 0x20b4]
cmp edx, edi
jne 0x424b66
add eax, 0x1cb4
lea edx, [esp + 0x5c]
push eax
push 0x48d48c
push edx
call fcn.00457c43
lea edi, [esp + 0x68]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x5c]
mov dword [esp + 0x18], ecx
push ecx
mov ecx, dword [esp + 0x708c]
push eax
push ecx
jmp 0x424b7c
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
mov edx, dword [esp + 0x7090]
push edx
mov ecx, ebp
call fcn.0041c1d0
push esi
call fcn.0046e6a2
add esp, 4
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp + 4]
mov dword [esp + 0x20], edi
push eax
cmp dword [ecx + 0x34c0], edi
je 0x424c06
mov edx, dword [esi + 0x40]
lea eax, [esp + 0x60]
push edx
push eax
call fcn.00458800
mov ecx, dword [esp + 0x1c]
add esp, 0xc
lea edx, [esp + 0x10]
lea eax, [esp + 0x5c]
mov byte [esp + ecx + 0x5c], 0
push edx
push eax
mov ecx, ebp
call fcn.00429fa0
lea ecx, [esp + 0x10]
lea edx, [esp + 0x5c]
push ecx
push edx
mov ecx, ebp
call fcn.00429610
mov edx, dword [esp + 0x7088]
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x5c]
push eax
push ecx
push edx
jmp 0x424c43
mov eax, dword [esi + 0x40]
lea ecx, [esp + 0x60]
push eax
push ecx
call fcn.00458800
mov edx, dword [esp + 0x1c]
add esp, 0xc
lea eax, [esp + 0x10]
lea ecx, [esp + 0x5c]
push eax
push ecx
mov ecx, ebp
mov byte [esp + edx + 0x64], 0
call fcn.00429fa0
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x7088]
lea eax, [esp + 0x5c]
push edx
push eax
push ecx
mov ecx, ebp
call fcn.0041c1d0
mov esi, dword [esp + 0x1c]
push 0x48d248
mov edx, dword [esi + 8]
push edx
call fcn.00458414
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x424c7d
push esi
call fcn.0046e6a2
add esp, 4
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
test byte [ebx + 0xc], 0x10
jne 0x424d0b
mov edi, dword [esp + 0x2c]
push ebx
push 0x1000
lea eax, [esp + 0x64]
push 1
push eax
call fcn.004586df
mov esi, eax
add esp, 0x10
test esi, esi
jle 0x424d56
mov eax, dword [esp + 0x30]
mov byte [esp + esi + 0x5c], 0
test eax, eax
je 0x424cec
mov edx, edi
mov ecx, dword [ebp + 4]
shl edx, 8
add edx, edi
mov ecx, dword [ecx + 0x275e8]
lea eax, [edi + edx*2]
lea eax, [eax + eax*2]
lea edx, [edi + eax*2]
lea eax, [ecx + edx*4 + 0x1038]
lea ecx, [esp + 0x5c]
push eax
push ecx
mov ecx, ebp
call fcn.00426310
test eax, eax
jne 0x424d78
mov eax, dword [esp + 0x7088]
lea edx, [esp + 0x5c]
push esi
push edx
push eax
mov ecx, ebp
call fcn.0041c1d0
test byte [ebx + 0xc], 0x10
je 0x424c8b
mov esi, dword [esp + 0x1c]
mov eax, dword [ebp + 4]
mov ecx, dword [eax + 0x34c0]
test ecx, ecx
je 0x424d35
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x424d35
mov ecx, dword [esp + 0x7088]
add eax, 0x24bc
push eax
push ecx
mov ecx, ebp
call fcn.0041c1a0
push ebx
call fcn.004580c8
push esi
call fcn.0046e6a2
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
push ebx
call fcn.004580c8
mov ecx, dword [esp + 0x20]
push ecx
call fcn.0046e6a2
add esp, 8
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
mov eax, dword [ebp + 4]
mov edx, dword [eax + 0x20b4]
test edx, edx
jne 0x424dbf
add eax, 0x1cb4
lea edx, [esp + 0x5c]
push eax
push 0x48d48c
push edx
call fcn.00457c43
lea edi, [esp + 0x68]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x5c]
mov dword [esp + 0x18], ecx
push ecx
mov ecx, dword [esp + 0x708c]
push eax
push ecx
jmp 0x424dd5
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
mov edx, dword [esp + 0x7090]
push edx
mov ecx, ebp
call fcn.0041c1d0
push ebx
call fcn.004580c8
mov eax, dword [esp + 0x20]
push eax
call fcn.0046e6a2
add esp, 8
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
push esi
call fcn.0046e6a2
add esp, 4
push 0
push 0
push 0
push 1
push 0
call dword [sym.imp.WININET.dll_InternetOpenA]
mov edx, dword [esp + 0x7090]
push 0
push 0
push 3
mov esi, eax
mov eax, dword [esp + 0x7098]
push 0
push 0
push edx
push eax
push esi
mov dword [esp + 0x40], esi
call dword [sym.imp.WININET.dll_InternetConnectA]
push 0
push 0x28f400
push 0
push 0
lea ecx, [esp + 0x307c]
push 0
mov edi, eax
push ecx
push 0x48f1b4
push edi
mov dword [esp + 0x3c], edi
call dword [sym.imp.WININET.dll_HttpOpenRequestA]
mov edx, dword [esp + 0x7094]
mov dword [esp + 0x10], eax
mov edx, dword [edx + 0x24]
cmp edx, 0xffffffff
je 0x424ea2
mov edi, dword [esp + 0x7084]
or ecx, 0xffffffff
xor eax, eax
push 1
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
mov ecx, dword [ebp + 4]
push edx
add ecx, 0x241e0
call fcn.00406430
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x7084]
push 0x48d240
push eax
lea ecx, [esp + 0x507c]
call fcn.00442a00
lea ecx, [esp + 0x5074]
call fcn.00442a60
lea ecx, [esp + 0x5074]
call fcn.00442ac0
test eax, eax
je 0x424f14
lea ecx, [esp + 0x5074]
call fcn.00442a60
mov edx, eax
or ecx, 0xffffffff
mov edi, edx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push 0
push ecx
mov ecx, dword [esp + 0x18]
push edx
push ecx
call dword [sym.imp.WININET.dll_HttpAddRequestHeadersA]
lea ecx, [esp + 0x5074]
call fcn.00442ac0
test eax, eax
jne 0x424ed7
mov edi, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
push 0
push 0
push 0
push 0
push edx
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x424f4d
mov eax, dword [esp + 0x10]
mov ebx, dword [sym.imp.WININET.dll_InternetCloseHandle]
push eax
call ebx
push edi
call ebx
push esi
call ebx
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x18]
push 0
lea edx, [esp + 0x60]
push ecx
push edx
push 0x16
push eax
mov dword [esp + 0x2c], 0x1000
mov dword [esp + 0x48], 0
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
test eax, eax
je 0x425697
mov ecx, dword [esp + 0x18]
lea edx, [esp + 0x5c]
push str.Transfer_Encoding:_chunked_r_n
push edx
mov byte [esp + ecx + 0x64], 0
call fcn.00457ca0
add esp, 8
test eax, eax
je 0x42511a
mov al, byte [0x493b50]
mov ecx, 0x400
mov byte [esp + 0x4070], al
xor eax, eax
lea edi, [esp + 0x4071]
lea ebx, [esp + 0x5c]
rep stosd dword es:[edi], eax
lea edi, [esp + 0x5c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x24], eax
cmp ecx, 0x1000
jbe 0x425000
lea edi, [esp + 0x5c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea ecx, [ecx + ecx + 1]
push ecx
call fcn.0046e679
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x24], 1
jmp 0x42500b
lea eax, [esp + 0x4070]
mov dword [esp + 0x14], eax
mov byte [eax], 0
push str.Transfer_Encoding:_chunked_r_n
push ebx
call fcn.00457ca0
add esp, 8
test eax, eax
je 0x425099
mov byte [eax], 0
or ecx, 0xffffffff
mov edi, ebx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x493b50
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str.Transfer_Encoding:_chunked_r_n
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, ebx
lea ebx, [ecx + edx]
jmp 0x42500e
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x14]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
lea ebx, [esp + 0x5c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x24]
and ecx, 3
test eax, eax
rep movsb byte es:[edi], byte [esi]
je 0x4250f8
mov ecx, edx
push ecx
call fcn.0046e6a2
add esp, 4
mov edi, str.Transfer_Encoding:_chunked_r_n
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x2c]
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x18]
not ecx
dec ecx
sub eax, ecx
mov dword [esp + 0x18], eax
mov byte [esp + eax + 0x5c], 0
lea edx, [esp + 0x5c]
push str.Transfer_Encoding:_Chunked_r_n
push edx
call fcn.00457ca0
add esp, 8
test eax, eax
je 0x4252ad
mov al, byte [0x493b50]
mov ecx, 0x400
mov byte [esp + 0x4070], al
xor eax, eax
lea edi, [esp + 0x4071]
lea ebx, [esp + 0x5c]
rep stosd dword es:[edi], eax
lea edi, [esp + 0x5c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov dword [esp + 0x24], eax
cmp ecx, 0x1000
jbe 0x425193
lea edi, [esp + 0x5c]
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea ecx, [ecx + ecx + 1]
push ecx
call fcn.0046e679
add esp, 4
mov dword [esp + 0x14], eax
mov dword [esp + 0x24], 1
jmp 0x42519e
lea eax, [esp + 0x4070]
mov dword [esp + 0x14], eax
mov byte [eax], 0
push str.Transfer_Encoding:_Chunked_r_n
push ebx
call fcn.00457ca0
add esp, 8
test eax, eax
je 0x42522c
mov byte [eax], 0
or ecx, 0xffffffff
mov edi, ebx
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, 0x493b50
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov edi, dword [esp + 0x14]
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, edx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, edx
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, ebx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
mov edi, str.Transfer_Encoding:_Chunked_r_n
mov edx, ecx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
dec ecx
add ecx, ebx
lea ebx, [ecx + edx]
jmp 0x4251a1
mov edi, ebx
or ecx, 0xffffffff
xor eax, eax
mov edx, dword [esp + 0x14]
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov esi, edi
mov ebx, ecx
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
mov ecx, ebx
dec edi
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, ebx
lea ebx, [esp + 0x5c]
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov edi, edx
or ecx, 0xffffffff
repne scasb al, byte es:[edi]
not ecx
sub edi, ecx
mov eax, ecx
mov esi, edi
mov edi, ebx
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
mov eax, dword [esp + 0x24]
and ecx, 3
test eax, eax
rep movsb byte es:[edi], byte [esi]
je 0x42528b
mov ecx, edx
push ecx
call fcn.0046e6a2
add esp, 4
mov edi, str.Transfer_Encoding:_chunked_r_n
or ecx, 0xffffffff
xor eax, eax
mov ebx, dword [esp + 0x2c]
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x18]
not ecx
dec ecx
sub eax, ecx
mov dword [esp + 0x18], eax
mov byte [esp + eax + 0x5c], 0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x42537f
mov edx, dword [ebp + 4]
mov eax, ebx
shl eax, 8
mov ecx, dword [edx + 0x275e8]
add eax, ebx
lea eax, [ebx + eax*2]
lea edx, [eax + eax*2]
lea eax, [ebx + edx*2]
lea edx, [esp + 0x5c]
lea ecx, [ecx + eax*4 + 0x1038]
push ecx
push edx
mov ecx, ebp
call fcn.00426310
test eax, eax
je 0x42537f
mov eax, dword [ebp + 4]
mov edx, dword [eax + 0x20b4]
test edx, edx
jne 0x425335
add eax, 0x1cb4
push eax
lea eax, [esp + 0x60]
push 0x48d48c
push eax
call fcn.00457c43
lea edi, [esp + 0x68]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
mov edx, dword [esp + 0x7088]
not ecx
dec ecx
mov dword [esp + 0x18], ecx
push ecx
lea ecx, [esp + 0x60]
push ecx
push edx
jmp 0x42534b
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
mov eax, dword [esp + 0x7088]
not ecx
dec ecx
push ecx
push edx
push eax
mov ecx, ebp
call fcn.0041c1d0
mov ecx, dword [esp + 0x10]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ecx
call esi
mov edx, dword [esp + 0x1c]
push edx
call esi
mov eax, dword [esp + 0x20]
push eax
call esi
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
lea ecx, [esp + 0x18]
lea edx, [esp + 0x5c]
push ecx
push edx
mov ecx, ebp
call fcn.00429fa0
mov eax, dword [ebp + 4]
mov ecx, dword [eax + 0x34c0]
test ecx, ecx
je 0x4253b2
lea ecx, [esp + 0x18]
lea edx, [esp + 0x5c]
push ecx
push edx
mov ecx, ebp
call fcn.00429610
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x7088]
lea ecx, [esp + 0x5c]
push eax
push ecx
push esi
mov ecx, ebp
call fcn.0041c1d0
mov edx, dword [esp + 0x7094]
mov eax, dword [edx + 0x24]
cmp eax, 0xffffffff
je 0x4253f0
mov ecx, dword [esp + 0x18]
push 0
push ecx
mov ecx, dword [ebp + 4]
push eax
add ecx, 0x241e0
call fcn.00406430
xor edi, edi
mov dword [esp + 0x28], edi
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov ecx, dword [esp + 0x7094]
mov dword [esp + 0x14], eax
mov eax, dword [ecx + 0x24]
cmp eax, 0xffffffff
je 0x42542b
mov edx, dword [ebp + 4]
lea eax, [eax + eax*2]
shl eax, 6
mov edx, dword [edx + 0x275c8]
add eax, edx
mov edi, dword [eax + 0x80]
mov edx, dword [eax + 0x7c]
add edi, edx
cmp dword [ecx + 0x1c], 2
jne 0x42560a
mov eax, dword [ebp + 8]
test eax, eax
je 0x42560a
mov edx, dword [esp + 0x10]
lea eax, [esp + 0x28]
push eax
lea ecx, [esp + 0x60]
push 0x1000
push ecx
push edx
mov dword [esp + 0x38], 0x1000
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x42560a
mov eax, dword [esp + 0x28]
test eax, eax
je 0x42560a
mov byte [esp + eax + 0x5c], 0
mov eax, dword [esp + 0x30]
test eax, eax
je 0x4254bc
mov eax, dword [ebp + 4]
mov ecx, dword [esp + 0x2c]
mov edx, dword [eax + 0x275e8]
mov eax, ecx
shl eax, 8
add eax, ecx
lea eax, [ecx + eax*2]
lea eax, [eax + eax*2]
lea ecx, [ecx + eax*2]
lea eax, [esp + 0x5c]
lea edx, [edx + ecx*4 + 0x1038]
mov ecx, ebp
push edx
push eax
call fcn.00426310
test eax, eax
jne 0x4255c1
mov ecx, dword [esp + 0x7094]
mov eax, dword [ecx + 0x24]
cmp eax, 0xffffffff
je 0x425590
mov edx, dword [esp + 0x28]
mov ecx, dword [ebp + 4]
push 0
push edx
push eax
add ecx, 0x241e0
call fcn.00406430
mov edx, dword [esp + 0x7094]
mov ecx, dword [ebp + 4]
mov eax, dword [edx + 0x24]
mov ecx, dword [ecx + 0x275c8]
lea eax, [eax + eax*2]
shl eax, 6
mov eax, dword [ecx + eax + 0x70]
cmp eax, 0xffffffff
jle 0x425590
test eax, eax
je 0x42566a
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov edx, dword [ebp + 4]
mov ebx, eax
mov eax, dword [esp + 0x7094]
mov edx, dword [edx + 0x275c8]
mov eax, dword [eax + 0x24]
lea ecx, [eax + eax*2]
shl ecx, 6
add ecx, edx
mov esi, dword [ecx + 0x80]
mov edx, dword [ecx + 0x7c]
add esi, edx
cmp esi, edi
jae 0x425547
xor edi, edi
lea eax, [esi + esi*2]
lea edx, [edi + edi*2]
lea eax, [esi + eax*8]
lea edx, [edi + edx*8]
lea eax, [eax + eax*4]
lea edx, [edx + edx*4]
shl eax, 3
shl edx, 3
sub eax, edx
xor edx, edx
div dword [ecx + 0x70]
mov edx, dword [esp + 0x14]
mov ecx, ebx
sub ecx, edx
cmp ecx, eax
jae 0x425589
sub eax, ebx
add eax, edx
push eax
call dword [sym.imp.KERNEL32.dll_Sleep]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x14], eax
mov edi, esi
mov esi, dword [esp + 0x7088]
mov edx, dword [esp + 0x28]
lea eax, [esp + 0x5c]
push edx
push eax
push esi
mov ecx, ebp
call fcn.0041c1d0
test eax, eax
je 0x42560a
mov ecx, dword [esp + 0x7094]
mov dword [esp + 0x28], 0
cmp dword [ecx + 0x1c], 2
je 0x425435
jmp 0x42560a
mov eax, dword [ebp + 4]
mov edx, dword [eax + 0x20b4]
test edx, edx
jne 0x42565a
add eax, 0x1cb4
lea edx, [esp + 0x5c]
push eax
push 0x48d48c
push edx
call fcn.00457c43
lea edi, [esp + 0x68]
or ecx, 0xffffffff
xor eax, eax
add esp, 0xc
repne scasb al, byte es:[edi]
not ecx
dec ecx
lea eax, [esp + 0x5c]
push ecx
mov dword [esp + 0x1c], ecx
push eax
push esi
mov ecx, ebp
call fcn.0041c1d0
mov eax, dword [ebp + 4]
mov ecx, dword [eax + 0x34c0]
test ecx, ecx
je 0x42562d
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x42562d
add eax, 0x24bc
mov ecx, ebp
push eax
push esi
call fcn.0041c1a0
mov ecx, dword [esp + 0x10]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ecx
call esi
mov edx, dword [esp + 0x1c]
push edx
call esi
mov eax, dword [esp + 0x20]
push eax
call esi
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
mov edi, edx
or ecx, 0xffffffff
xor eax, eax
repne scasb al, byte es:[edi]
not ecx
dec ecx
push ecx
push edx
jmp 0x425602
mov ecx, dword [esp + 0x10]
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ecx
call esi
mov edx, dword [esp + 0x1c]
push edx
call esi
mov eax, dword [esp + 0x20]
push eax
call esi
mov eax, 0xd
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x7070
ret 0x14
mov ecx, dword [esp + 0x10]
mov ebx, dword [sym.imp.WININET.dll_InternetCloseHandle]
push ecx
call ebx
push edi
call ebx
push esi
call ebx
pop edi
pop esi
pop ebp
mov eax, 0xd
pop ebx
add esp, 0x7070
ret 0x14