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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x4c
mov eax, dword [0x1820f00c]
xor eax, esp
mov dword [esp + 0x48], eax
push ebx
push esi
push edi
push 0x50
mov ebx, ecx
call fcn.1814d7d1
pop ecx
lea ecx, [ebx + 4]
push ecx
mov ecx, eax
call fcn.180ae75a
and dword [esp + 0x1c], 0
mov edi, eax
mov eax, dword [ebp + 8]
mov esi, edi
lea ecx, [edi + 0x44]
test eax, eax
jne 0x180b255e
push dword [esp + 0xc]
lea edi, [ebx + 0x2c]
push edi
push edi
push dword [ecx + 4]
call fcn.1805a24b
and dword [esp + 0x1c], 0
lea eax, [esp + 0x1c]
push eax
push 0x400
push edi
push dword [ebx + 0x24]
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x180b22c0
mov eax, dword [esp + 0x1c]
mov ecx, esi
push dword [esp + 0xc]
add eax, 0x2c
add eax, ebx
push eax
push edi
push dword [ecx + 0x48]
lea ecx, [ecx + 0x44]
call fcn.1805a24b
cmp dword [esp + 0x1c], 0x400
je 0x180b227b
jmp 0x180b22d9
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x3e5
je 0x180b253c
test eax, eax
jne 0x180b255c
mov eax, esi
xor ecx, ecx
push ecx
mov dword [eax + 0x1c], ecx
lea eax, [esp + 0x14]
push eax
lea eax, [esp + 0x28]
mov dword [esp + 0x28], ecx
push eax
push 0x20000013
push dword [ebx + 0x24]
mov dword [esp + 0x24], 4
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
mov eax, dword [esp + 0x20]
mov ecx, esi
push 0
mov dword [ecx + 0x20], eax
lea eax, [esp + 0x14]
push eax
push edi
push 0x16
push dword [ebx + 0x24]
mov dword [esp + 0x24], 0x3ff
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
test eax, eax
jne 0x180b2370
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x7a
je 0x180b2340
xor eax, eax
mov dword [esp + 0x10], eax
jmp 0x180b2374
mov eax, dword [esp + 0x10]
mov edi, esi
inc eax
push eax
lea ecx, [edi + 0x44]
call fcn.1800d9d9
mov edi, dword [edi + 0x44]
lea eax, [esp + 0x10]
push 0
push eax
push edi
push 0x16
push dword [ebx + 0x24]
call dword [sym.imp.WININET.dll_HttpQueryInfoA]
neg eax
sbb eax, eax
and eax, dword [esp + 0x10]
jmp 0x180b233a
mov eax, dword [esp + 0x10]
mov byte [edi + eax], 0
jmp 0x180b24ac
push 0x3a
push edi
call fcn.181636d0
mov dword [esp + 0x14], eax
pop ecx
pop ecx
test eax, eax
je 0x180b24f6
and dword [esp + 0x4c], 0
mov dword [esp + 0x50], 0xf
mov byte [esp + 0x3c], 0
cmp edi, eax
je 0x180b23ba
sub eax, edi
lea ecx, [esp + 0x3c]
push eax
push edi
call fcn.18019812
mov eax, dword [esp + 0xc]
lea edi, [eax + 1]
jmp 0x180b23c0
inc edi
cmp byte [edi], 0x20
je 0x180b23bf
push 0x181dbee8
push edi
call fcn.18187730
mov dword [esp + 0x14], eax
pop ecx
pop ecx
test eax, eax
je 0x180b24b7
and dword [esp + 0x34], 0
mov dword [esp + 0x38], 0xf
mov byte [esp + 0x24], 0
cmp edi, eax
je 0x180b2401
sub eax, edi
lea ecx, [esp + 0x24]
push eax
push edi
call fcn.18019812
lea eax, [esp + 0x24]
mov ecx, esi
push eax
lea eax, [esp + 0x40]
push eax
lea ecx, [ecx + 0x24]
call fcn.180b1c92
mov edi, dword [esp + 0xc]
mov eax, dword [esp + 0x38]
add edi, 2
cmp eax, 0x10
jb 0x180b245b
mov ecx, dword [esp + 0x24]
inc eax
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], ecx
cmp eax, 0x1000
jb 0x180b2452
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x10]
push eax
call fcn.18007386
mov eax, dword [esp + 0x20]
pop ecx
pop ecx
mov ecx, dword [esp + 0xc]
push eax
push ecx
call fcn.1814d45b
pop ecx
pop ecx
and dword [esp + 0x34], 0
mov eax, dword [esp + 0x50]
mov dword [esp + 0x38], 0xf
mov byte [esp + 0x24], 0
cmp eax, 0x10
jb 0x180b24ac
mov ecx, dword [esp + 0x3c]
inc eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], ecx
cmp eax, 0x1000
jb 0x180b24a3
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.18007386
mov eax, dword [esp + 0x14]
pop ecx
pop ecx
mov ecx, dword [esp + 0x18]
push eax
push ecx
call fcn.1814d45b
pop ecx
pop ecx
cmp byte [edi], 0
jne 0x180b237d
jmp 0x180b24f6
mov eax, dword [esp + 0x50]
cmp eax, 0x10
jb 0x180b24f6
mov ecx, dword [esp + 0x3c]
inc eax
mov dword [esp + 0xc], eax
mov dword [esp + 0x18], ecx
cmp eax, 0x1000
jb 0x180b24ed
lea eax, [esp + 0xc]
push eax
lea eax, [esp + 0x1c]
push eax
call fcn.18007386
mov eax, dword [esp + 0x14]
pop ecx
pop ecx
mov ecx, dword [esp + 0x18]
push eax
push ecx
call fcn.1814d45b
pop ecx
pop ecx
mov ecx, dword [ebx + 0x1c]
test ecx, ecx
je 0x180b2509
mov eax, dword [ecx]
push 0
push dword [ebx + 0x24]
push 7
call dword [eax + 8]
mov edi, esi
cmp byte [ebx + 0x42c], 0
jne 0x180b253c
push 0
push dword [ebx + 0x24]
call dword [sym.imp.WININET.dll_InternetSetStatusCallbackW]
mov ecx, dword [ebx + 0x1c]
xor esi, esi
mov byte [ebx + 0x42c], 1
push edi
mov eax, dword [ecx]
call dword [eax + 4]
mov ecx, dword [ebx]
lea eax, [ebx + 4]
push eax
call fcn.180b2664
test esi, esi
je 0x180b2548
mov eax, dword [esi]
mov ecx, esi
push 1
call dword [eax]
mov ecx, dword [esp + 0x54]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1814cf3d
mov esp, ebp
pop ebp
ret 4
mov edi, esi
mov ecx, 0x2f14
cmp eax, ecx
ja 0x180b258a
je case.0x180b257a.12002
add eax, 0xffffd11e
cmp eax, 0x2b
ja case.0x180b257a.12004
movzx eax, byte [eax + 0x180b25eb]
jmp dword [eax*4 + 0x180b25df]
mov dword [edi + 0x1c], 1
jmp 0x180b250b
mov ecx, 0x2f80
cmp eax, ecx
ja 0x180b25bd
je case.0x180b257a.12002
cmp eax, 0x2f17
je case.0x180b257a.12002
cmp eax, 0x2f76
jbe case.0x180b257a.12004
cmp eax, 0x2f78
jbe case.0x180b257a.12002
cmp eax, 0x2f7c
je case.0x180b257a.12002
mov dword [edi + 0x1c], 2
jmp 0x180b250b
cmp eax, 0x2f89
jb case.0x180b257a.12004
cmp eax, 0x2f8a
jbe case.0x180b257a.12002
cmp eax, 0x2f8f
jne case.0x180b257a.12004
mov dword [edi + 0x1c], 3
jmp 0x180b250b