Function at 0x430bf0
Capabilities:
Check for time delay via gettickcount
Check http status code
Create http request
Delete file
Download and write a file
Get common file path
Get file attributes
Get http content length
Read data from internet
Receive and write data from server to client
Receive data
Reference http user-agent string
Set file attributes
Terminate process
Write file on windows

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x2444
call fcn.0043f330
mov eax, dword [0x4590c0]
xor eax, esp
mov dword [esp + 0x2440], eax
mov eax, dword [ebp + 0x10]
push ebx
mov ebx, dword [ebp + 8]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov dword [esp + 0xc], eax
lea eax, [esp + 0x240]
push eax
mov edi, ecx
push 0x104
mov dword [esp + 0x30], edi
call dword [sym.imp.KERNEL32.dll_GetTempPathW]
push 0x2f
xor ecx, ecx
pop edx
test ebx, ebx
je 0x430c5e
mov eax, ebx
cmp word [ebx], cx
je 0x430c5e
push 0x5c
pop edi
cmp word [eax], di
jne 0x430c52
mov word [eax], dx
add eax, 2
cmp word [eax], cx
jne 0x430c4a
mov edi, dword [esp + 0x28]
test esi, esi
je 0x430cd0
mov eax, esi
cmp word [esi], cx
je 0x430c80
push 0x5c
pop edi
cmp word [eax], di
jne 0x430c74
mov word [eax], dx
add eax, 2
cmp word [eax], cx
jne 0x430c6c
mov edi, dword [esp + 0x28]
push str.http:__
call fcn.004333dc
pop ecx
push eax
push str.http:__
push esi
call fcn.0043749f
add esp, 0xc
test eax, eax
je 0x430cbc
push str.https:__
call fcn.004333dc
pop ecx
push eax
push str.https:__
push esi
call fcn.0043749f
add esp, 0xc
test eax, eax
jne 0x430cdc
push esi
push ebx
call fcn.00433672
push 0x2f
push esi
call fcn.00436962
add esp, 0x10
jmp 0x430cd9
push edx
push ebx
call fcn.00436962
pop ecx
pop ecx
lea esi, [eax + 2]
push 0
call fcn.00437450
pop ecx
push edx
push eax
lea eax, [esp + 0x248]
push eax
push str._s_d.tmp
push dword [esp + 0x1c]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0x14
push dword [esp + 0xc]
call dword [sym.imp.KERNEL32.dll_DeleteFileW]
push 0x453130
push dword [esp + 0x10]
call fcn.0043764a
pop ecx
pop ecx
mov dword [esp + 0x20], eax
test eax, eax
jne 0x430d60
push esi
lea eax, [esp + 0x3c]
push str.Error_writing_output_file__s
push eax
call dword [sym.imp.USER32.dll_wsprintfW]
mov ecx, dword [edi + 0x2a8]
add esp, 0xc
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x2c]
push 0x10
push 0
lea eax, [esp + 0x40]
push eax
push dword [edi + 4]
call dword [sym.imp.USER32.dll_MessageBoxW]
push 0
call dword [sym.imp.KERNEL32.dll_ExitProcess]
xor eax, eax
push eax
push eax
push eax
push eax
push str.Mozilla_5.0__Windows_NT_10.0__Win64__x64__AppleWebKit_537.36__KHTML__like_Gecko__Chrome_83.0.4103.97_Safari_537.36
call dword [sym.imp.WININET.dll_InternetOpenW]
mov dword [esp + 0x24], eax
test eax, eax
je 0x430fce
xor ecx, ecx
push ecx
push ecx
push ecx
push ecx
push ebx
push eax
call dword [sym.imp.WININET.dll_InternetOpenUrlW]
mov ebx, eax
mov dword [esp + 0x1c], ebx
test ebx, ebx
je 0x430fc4
and dword [esp + 0x34], 0
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
push 0x20000013
push ebx
mov dword [esp + 0x44], 4
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x430fbd
cmp dword [esp + 0x2c], 0xc8
jne 0x430fbd
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
lea eax, [esp + 0x34]
push eax
push 0x20000005
push ebx
call dword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x430fbd
mov eax, dword [esp + 0x2c]
mov ecx, dword [edi + 0x2a0]
mov dword [esp + 0x18], eax
and dword [ecx + 0x5b4], 0
call fcn.00412d3b
mov ecx, dword [edi + 0x2a0]
mov dword [ecx + 0x5ac], 0x64
call fcn.00412d3b
mov ebx, dword [sym.imp.USER32.dll_wsprintfW]
push esi
lea eax, [esp + 0x3c]
push str.Receiving_file...__s__0.00___
push eax
call ebx
mov ecx, dword [edi + 0x2a8]
add esp, 0xc
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x2c]
cmp dword [esp + 0x18], 0
jne 0x430e98
mov ecx, dword [edi + 0x2a0]
mov dword [ecx + 0x5b4], 0x64
call fcn.00412d3b
push esi
lea eax, [esp + 0x3c]
push str.Failed_to_receive_file___s
push eax
call ebx
mov ecx, dword [edi + 0x2a8]
add esp, 0xc
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x2c]
push 0x10
push 0
lea eax, [esp + 0x40]
jmp 0x430d4e
call dword [sym.imp.KERNEL32.dll_GetTickCount]
and dword [esp + 0x14], 0
mov dword [esp + 0x10], eax
lea eax, [esp + 0x28]
push eax
push 0x2000
lea eax, [esp + 0x450]
push eax
push dword [esp + 0x28]
call dword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x431008
mov eax, dword [esp + 0x28]
test eax, eax
je 0x430eee
push dword [esp + 0x20]
push eax
lea eax, [esp + 0x450]
push 1
push eax
call fcn.00437880
mov eax, dword [esp + 0x38]
add esp, 0x10
add dword [esp + 0x14], eax
call dword [sym.imp.KERNEL32.dll_GetTickCount]
sub eax, dword [esp + 0x10]
cmp eax, 0x64
jbe 0x430f79
mov eax, dword [esp + 0x14]
imul eax, eax, 0x64
movd xmm0, eax
cvtdq2pd xmm0, xmm0
shr eax, 0x1f
push ecx
addsd xmm0, qword [eax*8 + 0x4537a0]
push ecx
lea eax, [esp + 0x40]
cvtpd2ps xmm1, xmm0
movd xmm0, dword [esp + 0x20]
cvtdq2ps xmm0, xmm0
divss xmm1, xmm0
cvtps2pd xmm0, xmm1
movss dword [esp + 0x18], xmm1
movsd qword [esp], xmm0
push esi
push str.Receiving_file...__s___.2f___
push eax
call ebx
cvttss2si eax, dword [esp + 0x24]
mov ecx, dword [edi + 0x2a0]
add esp, 0x14
push eax
call fcn.00421157
mov ecx, dword [edi + 0x2a8]
lea edx, [esp + 0x38]
mov eax, dword [ecx]
push edx
call dword [eax + 0x2c]
call dword [sym.imp.KERNEL32.dll_GetTickCount]
mov dword [esp + 0x10], eax
cmp dword [esp + 0x28], 0
jne 0x430ea7
push esi
lea eax, [esp + 0x3c]
push str.Receiving_file...__s__100___
push eax
call ebx
mov ecx, dword [edi + 0x2a0]
add esp, 0xc
mov dword [ecx + 0x5b4], 0x64
call fcn.00412d3b
mov ecx, dword [edi + 0x2a8]
lea edx, [esp + 0x38]
mov eax, dword [ecx]
push edx
call dword [eax + 0x2c]
mov ebx, dword [esp + 0x1c]
push ebx
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push dword [esp + 0x24]
call dword [sym.imp.WININET.dll_InternetCloseHandle]
push dword [esp + 0x20]
call fcn.00436eef
mov ebx, dword [esp + 0x10]
pop ecx
push ebx
call dword [sym.imp.KERNEL32.dll_GetFileAttributesW]
and eax, 0xfffffffe
or eax, 2
push eax
push ebx
call dword [sym.imp.KERNEL32.dll_SetFileAttributesW]
mov ecx, dword [esp + 0x244c]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.00432b05
mov esp, ebp
pop ebp
ret 0xc
mov ecx, dword [edi + 0x2a0]
mov dword [ecx + 0x5b4], 0x64
call fcn.00412d3b
push esi
lea eax, [esp + 0x3c]
push str.Failed_to_receive_file___s
push eax
call ebx
mov ecx, dword [edi + 0x2a8]
add esp, 0xc
mov eax, dword [ecx]
lea edx, [esp + 0x38]
push edx
call dword [eax + 0x2c]
push 0x10
push 0
lea eax, [esp + 0x40]
jmp 0x430d4e