Function at 0x4013a0
Capabilities:
Create http request
Get geographical location
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x40b98d
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
mov eax, 0x10b8
call fcn.00403150
mov dword [ebp - 0x10b4], 0
push 0
push 0
push 0
push 1
push str.MSIE
call dword [sym.imp.WININET.dll_InternetOpenA]
mov dword [ebp - 0x106c], eax
cmp dword [ebp - 0x106c], 0
jne 0x401416
push 0
mov ecx, dword [ebp + 8]
call fcn.004018e0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x10b4]
or eax, 1
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp + 8]
jmp 0x401648
push 0
push 0x80000000
push 0
push 0
mov ecx, dword [ebp + 0xc]
push ecx
push str.http:__www.geoplugin.net_json.gp_ip
lea edx, [ebp - 0x1094]
push edx
call fcn.00402500
add esp, 0xc
mov dword [ebp - 0x10b8], eax
mov eax, dword [ebp - 0x10b8]
mov dword [ebp - 0x10bc], eax
mov dword [ebp - 4], 1
mov ecx, dword [ebp - 0x10bc]
call fcn.004019c0
push eax
mov ecx, dword [ebp - 0x106c]
push ecx
call dword [sym.imp.WININET.dll_InternetOpenUrlA]
mov dword [ebp - 0x1068], eax
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x1094]
call fcn.00401960
cmp dword [ebp - 0x1068], 0
jne 0x4014be
mov edx, dword [ebp - 0x106c]
push edx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push 0
mov ecx, dword [ebp + 8]
call fcn.004018e0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x10b4]
or eax, 1
mov dword [ebp - 0x10b4], eax
mov eax, dword [ebp + 8]
jmp 0x401648
lea ecx, [ebp - 0x28]
call fcn.004018b0
mov dword [ebp - 4], 2
lea ecx, [ebp - 0x1074]
push ecx
push 0xfff
lea edx, [ebp - 0x1064]
push edx
mov eax, dword [ebp - 0x1068]
push eax
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x401519
cmp dword [ebp - 0x1074], 0
je 0x401519
mov ecx, dword [ebp - 0x1074]
mov byte [ebp + ecx - 0x1064], 0
lea edx, [ebp - 0x1064]
push edx
lea ecx, [ebp - 0x28]
call fcn.004019a0
jmp 0x4014cd
mov eax, dword [ebp - 0x1068]
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, dword [ebp - 0x106c]
push ecx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
lea ecx, [ebp - 0x60]
call fcn.004018b0
mov byte [ebp - 4], 3
push str._geoplugin_countryCode_:_
lea ecx, [ebp - 0x44]
call fcn.004018e0
mov byte [ebp - 4], 4
push 0
lea edx, [ebp - 0x44]
push edx
lea ecx, [ebp - 0x28]
call fcn.00401a20
mov dword [ebp - 0x1070], eax
mov eax, dword [ebp - 0x1070]
cmp eax, dword [0x40c420]
je 0x401606
lea ecx, [ebp - 0x44]
call fcn.004019e0
add eax, dword [ebp - 0x1070]
mov dword [ebp - 0x1070], eax
mov ecx, dword [ebp - 0x1070]
push ecx
push 0x22
lea ecx, [ebp - 0x28]
call fcn.00401a50
mov dword [ebp - 0x1078], eax
mov edx, dword [ebp - 0x1078]
cmp edx, dword [0x40c420]
je 0x401606
mov eax, dword [ebp - 0x1078]
sub eax, dword [ebp - 0x1070]
push eax
mov ecx, dword [ebp - 0x1070]
push ecx
lea edx, [ebp - 0x10b0]
push edx
lea ecx, [ebp - 0x28]
call fcn.00401a70
mov dword [ebp - 0x10c0], eax
mov eax, dword [ebp - 0x10c0]
mov dword [ebp - 0x10c4], eax
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x10c4]
push ecx
lea ecx, [ebp - 0x60]
call fcn.00401980
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x10b0]
call fcn.00401960
lea edx, [ebp - 0x60]
push edx
mov ecx, dword [ebp + 8]
call fcn.00401920
mov eax, dword [ebp - 0x10b4]
or eax, 1
mov dword [ebp - 0x10b4], eax
mov byte [ebp - 4], 3
lea ecx, [ebp - 0x44]
call fcn.00401960
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x60]
call fcn.00401960
mov byte [ebp - 4], 0
lea ecx, [ebp - 0x28]
call fcn.00401960
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret