Function at 0x140052cb0
Capabilities:
Check for software breakpoints
Check if file exists
Delete directory
Delete file
Get file attributes
Move file
Set file attributes

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r14
push r15
lea rbp, [rsp - 0x27]
sub rsp, 0xd0
mov qword [rbp - 0x39], 0xfffffffffffffffe
mov rax, qword [0x14015a138]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov rsi, r8
mov rdi, rdx
mov r15, rcx
xor r12d, r12d
mov dword [rbp - 0x29], r12d
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x69], xmm0
mov byte [rbp - 0x79], r12b
mov dword [rbp - 0x29], 1
lea rdx, [rbp - 0x79]
mov rcx, r8
call fcn.1400089b0
lea rbx, [rbp - 0x79]
cmp qword [rbp - 0x61], 0x10
cmovae rbx, qword [rbp - 0x79]
mov r14, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x140052d2c
mov r14, qword [rdi]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov qword [rsp + 0x20], rbx
mov r9, r14
lea r8, str.CurlDownloader::Download:_Downloading_file...:_URL_s_nfile_s
mov edx, 4
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x61]
cmp rdx, 0x10
jb 0x140052d8b
inc rdx
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052d86
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053555
call fcn.1400ccd64
lea r8, str..downloading
lea rdx, [rbp - 1]
mov rcx, rsi
call fcn.14001cb90
nop
lea rdx, [rbp - 1]
cmp qword [rbp + 0x17], 8
cmovae rdx, qword [rbp - 1]
mov qword [rbp - 0x11], r12
mov qword [rbp - 9], 7
mov word [rbp - 0x21], r12w
mov r8, 0xffffffffffffffff
inc r8
cmp word [rdx + r8*2], 0
jne 0x140052dc5
lea rcx, [rbp - 0x21]
call fcn.1400149d0
nop
mov dword [rbp - 0x25], r12d
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 1]
call fcn.14001c1b0
mov rcx, rax
call fcn.14001c3c0
mov rdx, qword [rbp - 0x41]
cmp rdx, 8
jb 0x140052e33
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140052e2e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005355b
call fcn.1400ccd64
mov r14d, r12d
nop word [rax + rax]
mov qword [rbp - 0x31], r12
lea rdx, [rbp - 1]
cmp qword [rbp + 0x17], 8
cmovae rdx, qword [rbp - 1]
lea r8, [0x1401240a0]
lea rcx, [rbp - 0x31]
call fcn.1400d5214
cmp qword [rbp - 0x31], 0
je 0x1400533ce
mov r8, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x140052e7a
mov r8, qword [rdi]
mov edx, 0x2712
mov rcx, qword [r15]
call fcn.14008ab20
lea r8, [0x140052bf0]
mov edx, 0x4e2b
mov rcx, qword [r15]
call fcn.14008ab20
mov r8, qword [rbp - 0x31]
mov edx, 0x2711
mov rcx, qword [r15]
call fcn.14008ab20
mov rcx, qword [r15]
call fcn.14008ab10
mov ebx, eax
mov rcx, qword [rbp - 0x31]
call fcn.1400d21ec
test ebx, ebx
je 0x140052ef8
mov rbx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x140052ed0
mov rbx, qword [rdi]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov r9, rbx
lea r8, str.CurlDownloader::Download__failed_to_call_curl_easy_perform._URL:__s
mov edx, 2
call fcn.140016a40
mov ebx, 2
jmp 0x140052f90
mov dword [rbp - 0x25], r12d
lea r8, [rbp - 0x25]
mov edx, 0x200002
mov rcx, qword [r15]
call fcn.14008aa20
mov eax, dword [rbp - 0x25]
cmp eax, 0xc8
je 0x140052f5e
cmp eax, 0x130
je 0x140052f6c
cmp eax, 0xcc
je 0x140052f5e
mov rbx, rdi
cmp qword [rdi + 0x18], 0x10
jb 0x140052f32
mov rbx, qword [rdi]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov eax, dword [rbp - 0x25]
mov dword [rsp + 0x20], eax
mov r9, rbx
lea r8, str.CurlDownloader::Download__failed_in_calling_URL__s__http_status:__d
mov edx, 2
call fcn.140016a40
mov ebx, 3
jmp 0x140052f90
cmp eax, 0x130
je 0x140052f6c
cmp eax, 0xcc
jne 0x140052fa2
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov r9d, dword [rbp - 0x25]
lea r8, str.CurlDownloader::Download__file_no_change_since_last_time__http_status_code:__d
mov edx, 4
call fcn.140016a40
mov ebx, 1
inc r14d
cmp r14d, 3
jge 0x140053460
jmp 0x140052e40
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x69], xmm0
mov byte [rbp - 0x79], 0
mov dword [rbp - 0x29], 4
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 1]
call fcn.1400089b0
lea rbx, [rbp - 0x79]
cmp qword [rbp - 0x61], 0x10
cmovae rbx, qword [rbp - 0x79]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov eax, dword [rbp - 0x25]
mov dword [rsp + 0x20], eax
mov r9, rbx
lea r8, str.CurlDownloader::Download__successfully_downloaded_whitelist_file_into__s__http_status:__d
mov edx, 4
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x61]
cmp rdx, 0x10
jb 0x140053036
inc rdx
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053031
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053561
call fcn.1400ccd64
mov dword [rbp - 0x29], r12d
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x140053047
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_GetFileAttributesW]
cmp eax, 0xffffffff
je 0x140053074
test al, 0x10
je 0x140053074
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x140053063
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_RemoveDirectoryW]
test eax, eax
je 0x140053092
mov eax, dword [rbp - 0x29]
inc eax
jmp 0x140053095
mov rcx, rsi
cmp qword [rsi + 0x18], 8
jb 0x140053081
mov rcx, qword [rsi]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
je 0x140053092
mov eax, dword [rbp - 0x29]
inc eax
jmp 0x140053095
mov eax, dword [rbp - 0x29]
test eax, eax
je 0x140053129
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x69], xmm0
mov byte [rbp - 0x79], 0
mov dword [rbp - 0x29], 8
lea rdx, [rbp - 0x79]
mov rcx, rsi
call fcn.1400089b0
lea rbx, [rbp - 0x79]
cmp qword [rbp - 0x61], 0x10
cmovae rbx, qword [rbp - 0x79]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov r9, rbx
lea r8, str.CurlDownloader::Download__deleted_existing_whitelist_file__s
mov edx, 5
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x61]
cmp rdx, 0x10
jb 0x140053129
inc rdx
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053124
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053567
call fcn.1400ccd64
mov rdx, rsi
lea rcx, [rbp - 1]
call fcn.14001ce30
test eax, eax
je 0x1400531b5
lea rdx, [rbp - 0x59]
mov rcx, rsi
call fcn.14001c1b0
mov rcx, rax
call fcn.14001c3c0
mov rdx, qword [rbp - 0x41]
cmp rdx, 8
jb 0x14005318d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053188
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005356d
call fcn.1400ccd64
mov rdx, rsi
cmp qword [rsi + 0x18], 8
jb 0x14005319a
mov rdx, qword [rsi]
lea rcx, [rbp - 1]
cmp qword [rbp + 0x17], 8
cmovae rcx, qword [rbp - 1]
mov r8d, 2
call qword [sym.imp.KERNEL32.dll_MoveFileExW]
nop
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], 0
mov dword [rbp - 0x29], reloc.WS2_32.dll_recv
lea rdx, [rbp - 0x59]
mov rcx, rsi
call fcn.1400089b0
nop
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x69], xmm0
mov byte [rbp - 0x79], 0
mov dword [rbp - 0x29], Ordinal_50
lea rdx, [rbp - 0x79]
lea rcx, [rbp - 1]
call fcn.1400089b0
lea rdi, [rbp - 0x59]
cmp qword [rbp - 0x41], 0x10
cmovae rdi, qword [rbp - 0x59]
lea rbx, [rbp - 0x79]
cmp qword [rbp - 0x61], 0x10
cmovae rbx, qword [rbp - 0x79]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov qword [rsp + 0x20], rdi
mov r9, rbx
lea r8, str.CurlDownloader::Download__renamed_temporary_file__s_as__s
mov edx, 5
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x61]
cmp rdx, 0x10
jb 0x14005327a
inc rdx
mov rcx, qword [rbp - 0x79]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053275
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053573
call fcn.1400ccd64
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x69], xmm0
mov byte [rbp - 0x79], 0
mov rdx, qword [rbp - 0x41]
cmp rdx, 0x10
jb 0x1400532c7
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400532c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053573
call fcn.1400ccd64
nop
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], 0
mov dword [rbp - 0x29], 0x40
lea rdx, [rbp - 0x59]
mov rcx, rsi
call fcn.1400089b0
lea rbx, [rbp - 0x59]
cmp qword [rbp - 0x41], 0x10
cmovae rbx, qword [rbp - 0x59]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov r9, rbx
lea r8, str.CurlDownloader::Download__successfully_downloaded_whitelist_file_as__s:
mov edx, 4
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 0x10
jb 0x140053353
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005334e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053579
call fcn.1400ccd64
lea rdx, [rbp - 0x59]
mov rcx, rsi
call fcn.14001efb0
mov rbx, rax
cmp qword [rax + 0x18], 0x10
jb 0x14005336c
mov rbx, qword [rax]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov r9, rbx
lea r8, str.CurlDownloader::Download:_file_content:__s
mov edx, 5
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 0x10
jb 0x1400533c6
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400533c1
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005357f
call fcn.1400ccd64
mov ebx, r12d
jmp 0x140053460
movdqa xmm0, xmmword [0x14012bfd0]
movdqu xmmword [rbp - 0x49], xmm0
mov byte [rbp - 0x59], 0
mov dword [rbp - 0x29], 2
lea rdx, [rbp - 0x59]
lea rcx, [rbp - 1]
call fcn.1400089b0
lea rbx, [rbp - 0x59]
cmp qword [rbp - 0x41], 0x10
cmovae rbx, qword [rbp - 0x59]
xor ecx, ecx
call fcn.140018180
mov rcx, rax
mov r9, rbx
lea r8, str.CurlDownloader::Download__failed_to_open_the_temporary_file_for_writing:__s
mov edx, 2
call fcn.140016a40
nop
mov rdx, qword [rbp - 0x41]
cmp rdx, 0x10
jb 0x14005345b
inc rdx
mov rcx, qword [rbp - 0x59]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140053456
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140053585
call fcn.1400ccd64
mov ebx, 1
lea rcx, [rbp - 0x21]
cmp qword [rbp - 9], 8
cmovae rcx, qword [rbp - 0x21]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
test eax, eax
jne 0x1400534a5
lea rcx, [rbp - 0x21]
cmp qword [rbp - 9], 8
cmovae rcx, qword [rbp - 0x21]
mov edx, 0x80
call qword [sym.imp.KERNEL32.dll_SetFileAttributesW]
lea rcx, [rbp - 0x21]
cmp qword [rbp - 9], 8
cmovae rcx, qword [rbp - 0x21]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
mov rdx, qword [rbp - 9]
cmp rdx, 8
jb 0x1400534e1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x21]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400534dc
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005354f
call fcn.1400ccd64
movdqa xmm0, xmmword [0x14012bfc0]
movdqu xmmword [rbp - 0x11], xmm0
mov word [rbp - 0x21], r12w
mov rdx, qword [rbp + 0x17]
cmp rdx, 8
jb 0x14005352f
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 1]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005352a
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005354f
call fcn.1400ccd64
mov eax, ebx
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.1400ccd40
add rsp, 0xd0
pop r15
pop r14
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1400d1a34
nop
call fcn.1400d1a34
nop
call fcn.1400d1a34
int3
call fcn.1400d1a34
int3
call fcn.1400d1a34
int3
call fcn.1400d1a34
nop
call fcn.1400d1a34
nop
call fcn.1400d1a34
int3
call fcn.1400d1a34
int3
call fcn.1400d1a34
int3