Function at 0x48ea95
Capabilities:
Initialize winhttp library
Prepare http request
Read http header
Receive http response
Resolve function by parsing pe exports
Set http header

Disassembly:
push 0xffffffffffffffff
push 0x5347db
mov eax, dword fs:[0]
push eax
mov eax, 0x18b8
call fcn.00509170
mov eax, dword [0x58e700]
xor eax, esp
mov dword [esp + 0x18b0], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x58e700]
xor eax, esp
push eax
lea eax, [esp + 0x18cc]
mov dword fs:[0], eax
mov esi, dword [esp + 0x18dc]
test esi, esi
jne 0x48eb0a
cmp dword [0x5952dc], esi
je 0x48eb03
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push 0x5704e8
push 1
push dword [0x5952dc]
call fcn.004801e7
add esp, 0x10
xor eax, eax
jmp 0x48f08d
xor eax, eax
xor edi, edi
push 0x3fe
mov word [esp + 0xc8], ax
lea eax, [esp + 0xca]
push edi
push eax
call fcn.005071d0
add esp, 0xc
lea eax, [esp + 0x4c4]
push 0x1400
push edi
push eax
call fcn.005071d0
add esp, 0xc
lea eax, [esp + 0x44]
push 0x38
push edi
push eax
call fcn.005071d0
lea eax, [esp + 0x14d0]
mov dword [esp + 0x4c], 0x3c
mov dword [esp + 0x80], eax
add esp, 0xc
lea eax, [esp + 0x4c4]
mov dword [esp + 0x50], eax
lea eax, [esp + 0xcc4]
mov dword [esp + 0x64], eax
lea eax, [esp + 0xc4]
mov dword [esp + 0x44], eax
lea eax, [esp + 0x10c4]
mov dword [esp + 0x6c], eax
lea eax, [esp + 0x8c4]
mov dword [esp + 0x5c], eax
mov eax, 0x200
mov dword [esp + 0x60], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x48], eax
mov dword [esp + 0x68], eax
mov dword [esp + 0x54], eax
mov dword [esp + 0x78], eax
lea eax, [esp + 0x40]
push eax
push SysReAllocString
push edi
push esi
call dword [sym.imp.WINHTTP.dll_WinHttpCrackUrl]
mov dword [esp + 0x28], edi
mov dword [esp + 0x2c], edi
call fcn.0044de29
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x18d4], edi
push eax
push dword [esp + 0x54]
call fcn.0048e9d4
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
call fcn.0049114b
mov esi, eax
mov dword [esp + 0x20], esi
mov byte [esp + 0x18d4], 1
mov edx, dword [esp + 0x28]
mov ebp, dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
mov ecx, dword [edx]
mov dword [esp + 0x18], ecx
cmp edx, ecx
je 0x48efe7
lea esi, [ecx + 0x10]
push dword [esi]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea ecx, [esp + 0x80]
call fcn.0044ea4a
mov byte [esp + 0x18d4], 2
cmp dword [0x5952dc], 0
je 0x48ec7a
cmp dword [esp + 0x90], 0x10
lea eax, [esp + 0x7c]
cmovae eax, dword [esp + 0x7c]
push eax
call ebp
push eax
push str._INFO___d___get_cdn_file_size__host_ip__s_
push 3
push dword [0x5952dc]
call fcn.004801e7
add esp, 0x14
push edi
push edi
push edi
push 1
push edi
mov ebx, edi
call dword [sym.imp.WINHTTP.dll_WinHttpOpen]
mov dword [esp + 0x30], eax
test eax, eax
jne 0x48ecc0
cmp dword [0x5952dc], ebx
je 0x48efb5
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_open_failed__err__d_.
push 1
push dword [0x5952dc]
call fcn.004801e7
add esp, 0x14
jmp 0x48efb5
lea edx, [esp + 0x7c]
lea ecx, [esp + 0xac]
call fcn.00480b9b
push 0xa
push 6
push 6
push 0xa
push dword [esp + 0x40]
mov byte [esp + 0x18e8], 3
mov dword [esp + 0x50], 4
mov dword [esp + 0x30], edi
mov dword [esp + 0x48], edi
call dword [sym.imp.WINHTTP.dll_WinHttpSetTimeouts]
cmp dword [esp + 0xc0], 8
lea eax, [esp + 0xac]
push edi
push dword [esp + 0x5c]
cmovae eax, dword [esp + 0xb4]
push eax
push dword [esp + 0x3c]
call dword [sym.imp.WINHTTP.dll_WinHttpConnect]
mov dword [esp + 0x38], eax
test eax, eax
jne 0x48ed6b
cmp dword [0x5952dc], eax
je 0x48ef88
cmp dword [esp + 0x90], 0x10
lea esi, [esp + 0x7c]
cmovae esi, dword [esp + 0x7c]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_connect_failed__ip__s___err__d_.
push 1
push dword [0x5952dc]
call fcn.004801e7
add esp, 0x18
jmp 0x48ef88
push 0x100
push edi
push edi
push str.HTTP_1.1
push dword [esp + 0x7c]
push 0x5705c4
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov ebx, eax
test ebx, ebx
jne 0x48edbc
cmp dword [0x5952dc], eax
je 0x48ef88
cmp dword [esp + 0x90], 0x10
lea esi, [esp + 0x7c]
cmovae esi, dword [esp + 0x7c]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_open_request_failed__ip__s___err__d_.
jmp 0x48ed56
push 0x5706b4
lea ecx, [esp + 0x98]
call fcn.00450d79
mov byte [esp + 0x18d4], 4
push dword [esp + 0x50]
call fcn.00450d55
pop ecx
push eax
push dword [esp + 0x54]
lea ecx, [esp + 0x9c]
call fcn.00453ef6
push 0x5706ac
call fcn.00450d55
pop ecx
push eax
push 0x5706ac
lea ecx, [esp + 0x9c]
call fcn.00453ef6
cmp dword [esp + 0xa8], 8
lea eax, [esp + 0x94]
push 0x20000000
cmovae eax, dword [esp + 0x98]
push 0xffffffffffffffff
push eax
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpAddRequestHeaders]
test eax, eax
jne 0x48ee79
cmp dword [0x5952dc], eax
je 0x48ef79
cmp dword [esp + 0x90], 0x10
lea esi, [esp + 0x7c]
cmovae esi, dword [esp + 0x7c]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_add_request_headers_failed__ip__s___err__d_.
push 1
push dword [0x5952dc]
call fcn.004801e7
add esp, 0x18
jmp 0x48ef79
push edi
push edi
push edi
push edi
push edi
push edi
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpSendRequest]
test eax, eax
jne 0x48eeb9
cmp dword [0x5952dc], eax
je 0x48ef79
cmp dword [esp + 0x90], 0x10
lea esi, [esp + 0x7c]
cmovae esi, dword [esp + 0x7c]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_send_request_failed__ip__s___err__d_.
jmp 0x48ee64
push edi
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
jne 0x48eef7
cmp dword [0x5952dc], eax
je 0x48ef79
cmp dword [esp + 0x90], 0x10
lea esi, [esp + 0x7c]
cmovae esi, dword [esp + 0x7c]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push esi
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_receive_response_failed__ip__s___err__d_.
jmp 0x48ee64
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x24]
push eax
push edi
push 0x20000005
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpQueryHeaders]
test eax, eax
je 0x48ef37
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x48ef37
push esi
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x28]
call fcn.00490f6a
mov ecx, eax
call fcn.00490ffa
jmp 0x48ef79
cmp dword [0x5952dc], 0
je 0x48ef79
cmp dword [esp + 0x90], 0x10
lea esi, [esp + 0x7c]
cmovae esi, dword [esp + 0x7c]
call dword [sym.imp.KERNEL32.dll_GetLastError]
push eax
push dword [esp + 0x38]
push dword [esp + 0x24]
push esi
call ebp
push eax
push str._ERROR___d___get_cdn_file_size__win_http_query_headers_failed__ip__s___size__d___index__d___err__d_.
push 1
push dword [0x5952dc]
call fcn.004801e7
add esp, 0x20
push edi
push 1
lea ecx, [esp + 0x9c]
call fcn.004510af
push edi
push 1
lea ecx, [esp + 0xb4]
call fcn.004510af
push dword [esp + 0x30]
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
call esi
mov eax, dword [esp + 0x38]
test eax, eax
je 0x48efae
push eax
call esi
test ebx, ebx
je 0x48efb5
push ebx
call esi
push edi
push 1
lea ecx, [esp + 0x84]
mov byte [esp + 0x18dc], 1
call fcn.0044ea77
lea ecx, [esp + 0x18]
call fcn.0044ddef
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x28], ecx
jne 0x48ec27
mov esi, dword [esp + 0x20]
cmp dword [0x5952dc], 0
je 0x48f010
push dword [esp + 0x24]
call ebp
push eax
push str._INFO___d___get_cdn_file_size__content_size_count__d_
push 3
push dword [0x5952dc]
call fcn.004801e7
mov esi, dword [esp + 0x34]
add esp, 0x14
mov eax, dword [esi]
mov ebx, edi
mov dword [esp + 0x18], eax
jmp 0x48f06b
test edi, edi
je 0x48f02b
mov ecx, dword [eax + 0x18]
sub ecx, dword [eax + 0x14]
sar ecx, 2
cmp edi, ecx
jae 0x48f05e
mov edi, dword [eax + 0x18]
sub edi, dword [eax + 0x14]
mov ebx, dword [eax + 0x10]
sar edi, 2
cmp dword [0x5952dc], 0
je 0x48f05e
push edi
push ebx
call ebp
push eax
push str._INFO___d___get_cdn_file_size__ulfs_max__ld___count__d_
push 3
push dword [0x5952dc]
call fcn.004801e7
mov esi, dword [esp + 0x38]
add esp, 0x18
lea ecx, [esp + 0x18]
call fcn.0044ddef
mov eax, dword [esp + 0x18]
cmp esi, eax
jne 0x48f01a
lea ecx, [esp + 0x20]
call fcn.00490fd1
lea ecx, [esp + 0x28]
call fcn.00490f49
push dword [esp + 0x28]
call fcn.0050264e
pop ecx
mov eax, ebx
mov ecx, dword [esp + 0x18cc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x18b0]
xor ecx, esp
call fcn.00502653
add esp, 0x18c4
ret 4