Function at 0x418cd0
Capabilities:
Create http request
Read data from internet
Receive data

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x14
mov eax, dword [0x43a004]
xor eax, ebp
mov dword [ebp - 4], eax
cmp dword [0x43bd20], 0
mov eax, dword [ebp + 0xc]
push esi
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push edi
mov dword [ebp - 0x10], ecx
mov edi, 1
mov dword [ebp - 0x14], eax
je 0x418d0e
call esi
cmp dword [0x43bd20], eax
mov eax, dword [0x43acbc]
je 0x418d13
mov eax, dword [0x43ac6c]
and eax, 0xb000
mov dword [ebp - 8], eax
and eax, 0x9000
cmp eax, 0x9000
je 0x418d7b
cmp dword [0x43bdbc], 0
jne 0x418d90
push 0
push 0
push 0
push 1
push str.SAAL_57
call dword [sym.imp.WININET.dll_InternetOpenW]
mov dword [0x43bdbc], eax
test eax, eax
jne 0x418d90
cmp dword [0x43bd20], eax
je 0x418d63
call esi
cmp dword [0x43bd20], eax
mov eax, 0x43acbc
je 0x418d68
mov eax, 0x43ac6c
or dword [eax], 0x1000
push 0xe001002d
call fcn.00413190
add esp, 4
pop edi
or eax, 0xffffffff
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004194d8
mov esp, ebp
pop ebp
ret 8
push ebx
push 0x2000
call fcn.0041d6de
mov ebx, eax
add esp, 4
test ebx, ebx
jne 0x418df9
movzx eax, word [0x43ad06]
sub eax, 7
je 0x418dc8
sub eax, 2
je 0x418dc1
sub eax, 1
jne 0x418dc1
mov eax, dword [str.El_sistema_no_puede_asignar_suficiente_memoria]
jmp 0x418dcd
mov eax, dword [str.The_system_cannot_allocate_enough_memory]
jmp 0x418dcd
mov eax, dword [str.Der_Speicher_reicht_nicht]
push eax
push 0xa8010f00
call fcn.00413190
add esp, 8
push 0xe
call dword [sym.imp.KERNEL32.dll_SetLastError]
pop ebx
pop edi
or eax, 0xffffffff
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004194d8
mov esp, ebp
pop ebp
ret 8
push 0
push 0x80000000
push 0
push 0
push dword [ebp - 0x10]
push dword [0x43bdbc]
call dword [sym.imp.WININET.dll_InternetOpenUrlW]
mov dword [ebp - 0xc], eax
test eax, eax
je 0x418f1e
mov ecx, dword [0x43bd24]
test ecx, ecx
je 0x418e60
mov edx, dword [ebp - 0x10]
nop dword [eax + eax]
mov ax, word [edx]
cmp ax, word [ecx]
jne 0x418e56
test ax, ax
je 0x418e52
mov ax, word [edx + 2]
cmp ax, word [ecx + 2]
jne 0x418e56
add edx, 4
add ecx, 4
test ax, ax
jne 0x418e30
xor edi, edi
jmp 0x418e5b
sbb edi, edi
or edi, 1
mov eax, dword [ebp - 0xc]
nop
cmp dword [0x43bdc0], 0
je 0x418e6d
test edi, edi
je 0x418ec4
lea ecx, [ebp - 8]
push ecx
push 0x1ffe
push ebx
push eax
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x418f18
mov eax, dword [ebp - 8]
test eax, eax
je 0x418f05
push dword [ebp - 0x14]
mov byte [ebx + eax], 0
push ebx
push dword [ebp - 8]
call fcn.00413bc0
mov esi, eax
test esi, esi
js 0x418f18
mov eax, dword [0x43bdc4]
test eax, eax
je 0x418ebe
test edi, edi
jne 0x418ebe
push edi
push edi
push 0x405
push eax
call dword [sym.imp.USER32.dll_SendMessageW]
test esi, esi
jle 0x418ef7
jmp 0x418e5b
mov eax, dword [0x43bd24]
mov dword [0x43bdc4], 0
mov dword [0x43bdc0], 0
test eax, eax
je 0x418ef4
push eax
call fcn.0041d6c3
add esp, 4
mov dword [0x43bd24], 0
or esi, 0xffffffff
push ebx
call fcn.0041d6c3
mov eax, dword [ebp - 0xc]
add esp, 4
jmp 0x418f61
push ebx
mov esi, 1
call fcn.0041d6c3
mov eax, dword [ebp - 0xc]
add esp, 4
jmp 0x418f61
mov esi, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
cmp dword [0x43bd20], 0
je 0x418f36
call esi
cmp dword [0x43bd20], eax
mov eax, 0x43acbc
je 0x418f3b
mov eax, 0x43ac6c
push dword [ebp - 0x10]
or dword [eax], 0x1000
push 0xe0010031
call fcn.00413190
push ebx
call fcn.0041d6c3
mov eax, dword [ebp - 0xc]
add esp, 0xc
or esi, 0xffffffff
test eax, eax
je 0x418f68
push eax
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov ecx, dword [ebp - 4]
mov eax, esi
pop ebx
pop edi
xor ecx, ebp
pop esi
call fcn.004194d8
mov esp, ebp
pop ebp
ret 8