Function at 0x48e813
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 0x53434b
mov eax, dword fs:[0]
push eax
mov eax, 0x18b8
call fcn.00508a50
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 0x48e888
cmp dword [0x59535c], esi
je 0x48e881
call dword [sym.imp.KERNEL32.dll_GetCurrentThreadId]
push eax
push str._ERROR___d___get_cdn_file_size__url_is_empty.
push 1
push dword [0x59535c]
call fcn.0047fca4
add esp, 0x10
xor eax, eax
jmp 0x48ee0b
xor eax, eax
xor edi, edi
push 0x3fe
mov word [esp + 0xc8], ax
lea eax, [esp + 0xca]
push edi
push eax
call fcn.00506ab0
add esp, 0xc
lea eax, [esp + 0x4c4]
push 0x1400
push edi
push eax
call fcn.00506ab0
add esp, 0xc
lea eax, [esp + 0x44]
push 0x38
push edi
push eax
call fcn.00506ab0
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.0044dd64
mov dword [esp + 0x28], eax
lea eax, [esp + 0x28]
mov dword [esp + 0x18d4], edi
push eax
push dword [esp + 0x54]
call fcn.0048e754
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
call fcn.00491168
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 0x48ed65
lea esi, [ecx + 0x10]
push dword [esi]
call dword [sym.imp.WS2_32.dll_inet_ntoa]
push eax
lea ecx, [esp + 0x80]
call fcn.0044e9d1
mov byte [esp + 0x18d4], 2
cmp dword [0x59535c], 0
je 0x48e9f8
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 [0x59535c]
call fcn.0047fca4
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 0x48ea3e
cmp dword [0x59535c], ebx
je 0x48ed33
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 [0x59535c]
call fcn.0047fca4
add esp, 0x14
jmp 0x48ed33
lea edx, [esp + 0x7c]
lea ecx, [esp + 0xac]
call fcn.0048071a
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 0x48eae9
cmp dword [0x59535c], eax
je 0x48ed06
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 [0x59535c]
call fcn.0047fca4
add esp, 0x18
jmp 0x48ed06
push 0x100
push edi
push edi
push str.HTTP_1.1
push dword [esp + 0x7c]
push 0x56f98c
push eax
call dword [sym.imp.WINHTTP.dll_WinHttpOpenRequest]
mov ebx, eax
test ebx, ebx
jne 0x48eb3a
cmp dword [0x59535c], eax
je 0x48ed06
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 0x48ead4
push 0x56fa38
lea ecx, [esp + 0x98]
call fcn.00450d66
mov byte [esp + 0x18d4], 4
push dword [esp + 0x50]
call fcn.00450d3f
pop ecx
push eax
push dword [esp + 0x54]
lea ecx, [esp + 0x9c]
call fcn.0045405e
push 0x56fa9c
call fcn.00450d3f
pop ecx
push eax
push 0x56fa9c
lea ecx, [esp + 0x9c]
call fcn.0045405e
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 0x48ebf7
cmp dword [0x59535c], eax
je 0x48ecf7
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 [0x59535c]
call fcn.0047fca4
add esp, 0x18
jmp 0x48ecf7
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 0x48ec37
cmp dword [0x59535c], eax
je 0x48ecf7
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 0x48ebe2
push edi
push ebx
call dword [sym.imp.WINHTTP.dll_WinHttpReceiveResponse]
test eax, eax
jne 0x48ec75
cmp dword [0x59535c], eax
je 0x48ecf7
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 0x48ebe2
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 0x48ecb5
mov eax, dword [esp + 0x1c]
test eax, eax
je 0x48ecb5
push esi
lea eax, [esp + 0x20]
push eax
lea ecx, [esp + 0x28]
call fcn.00490d29
mov ecx, eax
call fcn.00490db9
jmp 0x48ecf7
cmp dword [0x59535c], 0
je 0x48ecf7
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 [0x59535c]
call fcn.0047fca4
add esp, 0x20
push edi
push 1
lea ecx, [esp + 0x9c]
call fcn.004510a8
push edi
push 1
lea ecx, [esp + 0xb4]
call fcn.004510a8
push dword [esp + 0x30]
mov esi, dword [sym.imp.WINHTTP.dll_WinHttpCloseHandle]
call esi
mov eax, dword [esp + 0x38]
test eax, eax
je 0x48ed2c
push eax
call esi
test ebx, ebx
je 0x48ed33
push ebx
call esi
push edi
push 1
lea ecx, [esp + 0x84]
mov byte [esp + 0x18dc], 1
call fcn.0044ea00
lea ecx, [esp + 0x18]
call fcn.0044dd2a
mov ecx, dword [esp + 0x18]
cmp dword [esp + 0x28], ecx
jne 0x48e9a5
mov esi, dword [esp + 0x20]
cmp dword [0x59535c], 0
je 0x48ed8e
push dword [esp + 0x24]
call ebp
push eax
push str._INFO___d___get_cdn_file_size__content_size_count__d_
push 3
push dword [0x59535c]
call fcn.0047fca4
mov esi, dword [esp + 0x34]
add esp, 0x14
mov eax, dword [esi]
mov ebx, edi
mov dword [esp + 0x18], eax
jmp 0x48ede9
test edi, edi
je 0x48eda9
mov ecx, dword [eax + 0x18]
sub ecx, dword [eax + 0x14]
sar ecx, 2
cmp edi, ecx
jae 0x48eddc
mov edi, dword [eax + 0x18]
sub edi, dword [eax + 0x14]
mov ebx, dword [eax + 0x10]
sar edi, 2
cmp dword [0x59535c], 0
je 0x48eddc
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 [0x59535c]
call fcn.0047fca4
mov esi, dword [esp + 0x38]
add esp, 0x18
lea ecx, [esp + 0x18]
call fcn.0044dd2a
mov eax, dword [esp + 0x18]
cmp esi, eax
jne 0x48ed98
lea ecx, [esp + 0x20]
call fcn.00490d90
lea ecx, [esp + 0x28]
call fcn.00490d08
push dword [esp + 0x28]
call fcn.004b4a4d
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.00501f3e
add esp, 0x18c4
ret 4