Function at 0x52f1f8
Capabilities:
Read data from internet
Receive data

Disassembly:
test dword [0x7eeab0], 0xffffff80
jne 0x52f220
test dword [0x7eeab0], 0xffffffff
jne 0x52f220
call fcn.006a7fbc
jmp fcn.0052f1f8
push edi
push esi
push ebp
push ebx
push ecx
mov eax, 0x814
call fcn.006977b0
mov ecx, dword [esp + 0x814]
mov dword [esp + 0x814], 0
mov dword [esp + 0x80c], 4
mov eax, 1
mov edi, eax
mov esi, ecx
mov edx, dword [esi + 4]
mov dword [edx + 4], 0
mov ecx, dword [esi + 0x2c]
test ecx, ecx
je 0x52f27f
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x52f27d
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x52f268
dec eax
jmp 0x52f281
xor eax, eax
xor edx, edx
push edx
push edx
push eax
push ecx
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_HttpSendRequestA]
test eax, eax
jne 0x52f335
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [esi + 4]
mov dword [edx + 4], eax
mov ebx, dword [esi + 4]
mov ecx, dword [ebx + 4]
add ecx, 0xffffd0fb
cmp ecx, 0x20
jae 0x52f30f
mov edx, 1
shl edx, cl
test edx, 0x103
je 0x52f30f
mov dword [esp + 0x804], 4
lea ebx, [esp + 0x808]
lea edx, [esp + 0x804]
push edx
push ebx
push 0x1f
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_InternetQueryOptionA]
or dword [esp + 0x808], 0x3100
lea edx, [esp + 0x808]
push 4
push edx
push 0x1f
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_InternetSetOptionA]
jmp 0x52f255
mov ecx, esi
mov eax, dword [ecx + 0x4a]
test eax, eax
je 0x52f477
mov edx, dword [eax]
push str.HTTP_Handshake_nfailed_
push eax
call dword [edx + 0x48]
add esp, 8
add esp, 0x818
pop ebx
pop ebp
pop esi
pop edi
ret
lea ebx, [esp + 0x810]
lea edx, [esp + 0x80c]
push 0
push edx
push ebx
push 0x20000013
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
test eax, eax
je 0x52f477
lea ebx, [esp]
lea edx, [esp + 0x814]
push edx
push 0x800
push ebx
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_InternetReadFile]
cmp dword [esp + 0x814], 0
jne 0x52f35d
mov ecx, 0x16
call fcn.004dc218
test eax, eax
je 0x52f39a
mov ecx, eax
call fcn.0057f7bc
mov ebp, eax
jmp 0x52f39c
xor ebp, ebp
mov ecx, ebp
call fcn.0057f74c
test eax, eax
je 0x52f439
mov ecx, ebp
call fcn.0057dfd4
test eax, eax
je 0x52f439
mov ecx, ebp
call fcn.0057f5f0
mov ebx, eax
mov ecx, ebp
call fcn.0057f53c
mov dword [esp + 0x800], eax
movsx edx, byte [ebx]
test edx, edx
je 0x52f3fe
mov ecx, ebx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x52f3f1
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x52f3dc
dec eax
push eax
push ebx
push 0x2b
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_InternetSetOptionA]
mov edx, dword [esp + 0x800]
movsx ebx, byte [edx]
test ebx, ebx
je 0x52f439
mov ecx, edx
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x52f425
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x52f410
dec eax
push eax
mov edx, dword [esp + 0x804]
push edx
push 0x2c
push dword [esi + 0x10]
call dword [sym.imp.WININET.dll_InternetSetOptionA]
test ebp, ebp
je 0x52f446
mov edx, dword [ebp]
push 1
mov ecx, ebp
call dword [edx]
test edi, edi
je 0x52f45f
mov eax, dword [esp + 0x810]
cmp eax, 0x197
jne 0x52f45f
xor edi, edi
jmp 0x52f255
mov ecx, esi
push dword [ecx + 0x10]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
xor eax, eax
add esp, 0x818
pop ebx
pop ebp
pop esi
pop edi
ret
mov eax, 1
add esp, 0x818
pop ebx
pop ebp
pop esi
pop edi
ret