Function at 0x407c20
Capabilities:
Delete file
Download and write a file
Move file
Receive and write data from server to client
Receive data
Receive data on socket
Write file on windows

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x10b40
call fcn.00417260
mov eax, dword [0x42c010]
xor eax, ebp
mov dword [ebp - 4], eax
cmp byte [0x45de5d], 0
push esi
push edi
je 0x407c61
push str._Database__Please_wait_for_the_current_list_update
push 0
call fcn.0040be00
add esp, 8
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c5b1
mov esp, ebp
pop ebp
ret
cmp byte [0x45de5c], 0
je 0x407c89
push str._Database__Please_wait_for_the_current_list_reload
push 0
call fcn.0040be00
add esp, 8
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c5b1
mov esp, ebp
pop ebp
ret
push str.PREMIUM
lea eax, [ebp - 0x320]
mov byte [0x45de5d], 1
push 0x428eb8
push eax
call fcn.00405f90
mov eax, dword [0x428e44]
add esp, 0xc
movdqu xmm0, xmmword [str..DataInternal.List.part.db]
mov dword [ebp - 0xf8], eax
mov al, byte [0x428e48]
push 0xe7
mov byte [ebp - 0xf4], al
lea eax, [ebp - 0xf3]
movdqu xmmword [ebp - 0x110], xmm0
push 0
movq xmm0, qword [0x428e3c]
push eax
movq qword [ebp - 0x100], xmm0
call fcn.0040fee0
movdqu xmm0, xmmword [str..DataInternal.List.db]
add esp, 0xc
lea eax, [ebp - 0x200]
movdqu xmmword [ebp - 0x218], xmm0
movq xmm0, qword [0x428e5c]
push 0xec
push 0
push eax
movq qword [ebp - 0x208], xmm0
call fcn.0040fee0
xorps xmm0, xmm0
mov dword [ebp - 0x10b28], 0
movdqu xmmword [ebp - 0x10b40], xmm0
lea eax, [ebp - 0xb20]
add esp, 0xc
lea edx, [ebp - 0x10b40]
movq qword [ebp - 0x10b30], xmm0
mov dword [ebp - 0x10b40], eax
lea ecx, [ebp - 0x320]
lea eax, [ebp - 0x720]
mov dword [ebp - 0x10b3c], 0x400
mov dword [ebp - 0x10b38], eax
mov dword [ebp - 0x10b34], 0x400
call fcn.004021a0
mov edx, dword [ebp - 0x10b28]
lea eax, [ebp - 0x720]
push eax
lea ecx, [ebp - 0xb20]
call fcn.00401ef0
mov esi, eax
add esp, 4
lea eax, [ebp - 0x110]
test esi, esi
je 0x407e73
push 0x428e64
push eax
lea eax, [ebp - 0x10b24]
push eax
call fcn.0040cf29
mov edi, dword [sym.imp.WS2_32.dll_recv]
add esp, 0xc
jmp 0x407dd0
push 0
push 0xffff
lea eax, [ebp - 0x10b20]
push eax
push esi
call edi
push dword [ebp - 0x10b24]
test eax, eax
jle 0x407dff
push 1
push eax
lea eax, [ebp - 0x10b20]
push eax
call fcn.0040e505
add esp, 0x10
jmp 0x407dd0
call fcn.0040d06c
add esp, 4
push esi
call dword [sym.imp.WS2_32.dll_closesocket]
lea eax, [ebp - 0x218]
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push 0x1f4
call dword [sym.imp.KERNEL32.dll_Sleep]
lea eax, [ebp - 0x218]
push eax
lea eax, [ebp - 0x110]
push eax
call fcn.0040e587
push str._Database__Updated_successfully
push 2
mov byte [0x45de5d], 0
call fcn.0040be00
add esp, 0xc
call fcn.004078a0
push str._ServerInfo__InternalList_loaded_successfully
push 3
call fcn.0040be00
add esp, 8
pop edi
pop esi
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.0040c5b1
mov esp, ebp
pop ebp
ret
push eax
call dword [sym.imp.KERNEL32.dll_DeleteFileA]
push dword [0x45f260]
mov byte [0x45de5d], 0
push str._Database__Could_not_update_list__Error:__i_
push 1
call fcn.0040be00
mov ecx, dword [ebp - 4]
add esp, 0xc
xor ecx, ebp
pop edi
pop esi
call fcn.0040c5b1
mov esp, ebp
pop ebp
ret