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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x56951b
mov eax, dword fs:[0]
push eax
sub esp, 0x7f4
mov eax, dword [0x5cce74]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, dword [ebp + 8]
mov dword [ebp - 0x800], 0
mov dword [ebp - 0x7e4], 0
mov dword [ebp - 0x7e8], 0xf
mov dword [ebp - 0x7ec], 0
mov byte [ebp - 0x7fc], 0
push 0
push 0
push 0
push 0
push str.MyAgent
mov dword [ebp - 4], 0
call dword [sym.imp.WININET.dll_InternetOpenW]
mov ebx, eax
test ebx, ebx
jne 0x405310
mov dword [edi + 0x14], 0xf
xor esi, esi
mov dword [edi + 0x10], eax
mov byte [edi], al
cmp byte [0], al
je 0x405298
lea ecx, [esi + 1]
nop dword [eax]
mov al, byte [esi]
inc esi
test al, al
jne 0x405280
sub esi, ecx
cmp esi, 0xfffffffe
jbe 0x405298
push str.string_too_long
call fcn.0054b98a
cmp dword [edi + 0x14], esi
jae 0x4052ba
push dword [edi + 0x10]
mov ecx, edi
push esi
call fcn.00403e70
test esi, esi
je 0x405455
cmp dword [edi + 0x14], 0x10
jb 0x4052df
mov eax, dword [edi]
jmp 0x4052e1
test esi, esi
jne 0x4052b0
mov dword [edi + 0x10], 0
cmp dword [edi + 0x14], 0x10
jb 0x4052d5
mov eax, dword [edi]
mov byte [eax], 0
jmp 0x405455
mov eax, edi
mov byte [eax], 0
jmp 0x405455
mov eax, edi
test esi, esi
je 0x4052f1
push esi
push 0
push eax
call fcn.0054d860
add esp, 0xc
cmp dword [edi + 0x14], 0x10
mov dword [edi + 0x10], esi
jb 0x405305
mov eax, dword [edi]
mov byte [eax + esi], 0
jmp 0x405455
mov eax, edi
mov byte [eax + esi], 0
jmp 0x405455
push 0
push 0x84000000
push 0
push 0
push str.https:__http_download.intuit.com__http.intuit__QBDT_Files__Splunk__SplunkConfig.xml
push ebx
call dword [sym.imp.WININET.dll_InternetOpenUrlW]
mov esi, eax
test esi, esi
jne 0x4053d0
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
mov dword [edi + 0x14], 0xf
mov dword [edi + 0x10], esi
mov byte [edi], 0
cmp byte [0], 0
je 0x405369
lea ecx, [esi + 1]
mov al, byte [esi]
inc esi
test al, al
jne 0x405351
sub esi, ecx
cmp esi, 0xfffffffe
jbe 0x405369
push str.string_too_long
call fcn.0054b98a
cmp dword [edi + 0x14], esi
jae 0x40538b
push dword [edi + 0x10]
mov ecx, edi
push esi
call fcn.00403e70
test esi, esi
je 0x405455
cmp dword [edi + 0x14], 0x10
jb 0x405394
mov eax, dword [edi]
jmp 0x405396
test esi, esi
jne 0x405381
jmp 0x4052be
mov eax, edi
test esi, esi
je 0x4053a6
push esi
push 0
push eax
call fcn.0054d860
add esp, 0xc
cmp dword [edi + 0x14], 0x10
mov dword [edi + 0x10], esi
jb 0x4053ba
mov eax, dword [edi]
mov byte [esi + eax], 0
jmp 0x405455
mov eax, edi
mov byte [esi + eax], 0
jmp 0x405455
push 0x7d0
lea eax, [ebp - 0x7e0]
push 0
push eax
call fcn.0054d330
add esp, 0xc
lea eax, [ebp - 0x7e4]
push eax
push 0x7d0
lea eax, [ebp - 0x7e0]
push eax
push esi
call dword [sym.imp.WININET.dll_InternetReadFile]
cmp byte [ebp - 0x7e0], 0
jne 0x40540d
xor ecx, ecx
jmp 0x40541f
lea ecx, [ebp - 0x7e0]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x405416
sub ecx, edx
push ecx
lea eax, [ebp - 0x7e0]
push eax
lea ecx, [ebp - 0x7fc]
call fcn.00403b20
cmp dword [ebp - 0x7e4], 0
jne 0x4053d0
push esi
mov esi, dword [sym.imp.WININET.dll_InternetCloseHandle]
call esi
push ebx
call esi
lea eax, [ebp - 0x7fc]
mov ecx, edi
push eax
call fcn.00403640
lea ecx, [ebp - 0x7fc]
call fcn.004035d0
mov eax, edi
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.0054a3fc
mov esp, ebp
pop ebp
ret 4