Function at 0x140058d50
Capabilities:
Copy file
Delete file

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
lea rbp, [rsp - 0x1028]
mov eax, 0x1128
call fcn.140121d30
sub rsp, rax
mov qword [rbp - 0x58], 0xfffffffffffffffe
mov rax, qword [0x140200d38]
xor rax, rsp
mov qword [rbp + 0x1010], rax
mov r14, r9
mov rsi, r8
mov r12, rdx
mov r15, rcx
xor ebx, ebx
mov dword [rsp + 0x40], ebx
mov r13b, 1
mov rdx, r9
lea rcx, [rbp - 0x10]
call fcn.14002fd80
nop
mov rcx, qword [rbp]
test rcx, rcx
je 0x1400593ce
mov rdx, qword [rbp + 8]
mov rax, rdx
sub rax, rcx
cmp rax, 4
jb 0x140058dff
lea rdi, [rcx + 4]
mov qword [rbp], rdi
lea rbx, [rbp - 0x10]
cmp rdx, 8
cmovae rbx, qword [rbp - 0x10]
lea rcx, [rbx + rcx*2]
mov r8d, 8
lea rdx, str..tmp
call fcn.14013fdb0
xor eax, eax
mov word [rbx + rdi*2], ax
xor ebx, ebx
jmp 0x140058e1f
mov qword [rsp + 0x20], 4
lea r9, str..tmp
xor r8d, r8d
lea edx, [r8 + 4]
lea rcx, [rbp - 0x10]
call fcn.140022280
lea rdx, [rbp - 0x10]
lea rcx, [rbp - 0x30]
call fcn.1400ab790
nop
cmp qword [rbp - 0x20], 0
je 0x14005938d
lea rdx, [rbp - 0x30]
mov rcx, rsi
call fcn.1400341b0
movzx r13d, al
test al, al
jne 0x14005927a
lea r15, [0x14017fa78]
mov rcx, qword [0x14020ceb8]
cmp dword [rcx], 2
jbe 0x140058efe
mov qword [rsp + 0x30], r15
mov dword [rsp + 0x28], 0xea
lea rax, str.d:workspacewsg_citkiller_releasekillernetwork_service_service_sharedsource_bwclogic_bwcxmlfiles.cpp
mov qword [rsp + 0x20], rax
lea r9, str._hs__d__:__ls__
mov edi, 0x7ff
mov r8d, edi
mov ebx, 0x800
mov edx, ebx
lea rcx, [rbp + 0x10]
call fcn.140044f70
mov edx, ebx
lea rcx, [rbp + 0x10]
call fcn.140143374
mov r8, r14
cmp qword [r14 + 0x18], 8
jb 0x140058eb7
mov r8, qword [r14]
mov rdx, rsi
cmp qword [rsi + 0x18], 8
jb 0x140058ec4
mov rdx, qword [rsi]
sub rdi, rax
sub rbx, rax
lea rcx, [rbp + 0x10]
lea rcx, [rcx + rax*2]
mov qword [rsp + 0x28], r8
mov qword [rsp + 0x20], rdx
lea r9, str.Error_Downloading__ls_to_file__ls
mov r8, rdi
mov rdx, rbx
call fcn.140044f70
lea rdx, [rbp + 0x10]
lea rcx, [0x14020cea8]
call fcn.14005e5e0
movdqa xmm0, xmmword [0x1401b5c90]
movdqu xmmword [rbp - 0x68], xmm0
xor r12d, r12d
mov word [rbp - 0x78], r12w
lea r8d, [r12 + 0x16]
mov rdx, r15
lea rcx, [rbp - 0x78]
call fcn.1400150c0
nop
movdqa xmm0, xmmword [0x1401b5c90]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov dword [rsp + 0x40], 1
lea r15, [rsi + 0x10]
mov rdx, qword [r15]
add rdx, 0x12
lea rcx, [rsp + 0x48]
call fcn.140021e10
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rax, 0x12
jb 0x140058fa0
lea rdi, [rcx + 0x12]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea rcx, [rbx + rcx*2]
lea r8d, [r12 + 0x24]
lea rdx, str.Error_Downloading
call fcn.14013fdb0
mov word [rbx + rdi*2], r12w
jmp 0x140058fc1
mov qword [rsp + 0x20], SafeArrayAccessData
lea r9, str.Error_Downloading
xor r8d, r8d
lea edx, [r8 + 0x12]
lea rcx, [rsp + 0x48]
call fcn.140022280
cmp qword [rsi + 0x18], 8
jb 0x140058fcb
mov rsi, qword [rsi]
mov rdx, qword [r15]
mov rcx, qword [rsp + 0x58]
mov r8, qword [rsp + 0x60]
mov rax, r8
sub rax, rcx
cmp rdx, rax
ja 0x140059012
lea rdi, [rcx + rdx]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp r8, 8
cmovae rbx, qword [rsp + 0x48]
lea r8, [rdx + rdx]
lea rcx, [rbx + rcx*2]
mov rdx, rsi
call fcn.14013fdb0
mov word [rbx + rdi*2], r12w
jmp 0x140059027
mov qword [rsp + 0x20], rdx
mov r9, rsi
xor r8d, r8d
lea rcx, [rsp + 0x48]
call fcn.140022280
mov rcx, qword [rsp + 0x58]
mov rdx, qword [rsp + 0x60]
mov rax, rdx
sub rax, rcx
cmp rax, 9
jb 0x140059077
lea rdi, [rcx + 9]
mov qword [rsp + 0x58], rdi
lea rbx, [rsp + 0x48]
cmp rdx, 8
cmovae rbx, qword [rsp + 0x48]
lea rcx, [rbx + rcx*2]
mov r8d, SafeArrayAccessData
lea rdx, str._to_file
call fcn.14013fdb0
mov word [rbx + rdi*2], r12w
lea rax, [rsp + 0x48]
jmp 0x140059098
mov qword [rsp + 0x20], 9
lea r9, str._to_file
xor r8d, r8d
lea edx, [r8 + 9]
lea rcx, [rsp + 0x48]
call fcn.140022280
xorps xmm0, xmm0
movdqu xmmword [rbp - 0x40], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rbp - 0x50], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rbp - 0x40], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov dword [rsp + 0x40], 3
mov rdx, r14
cmp qword [r14 + 0x18], 8
jb 0x1400590d4
mov rdx, qword [r14]
mov r8, qword [r14 + 0x10]
lea rcx, [rbp - 0x50]
call fcn.140021f10
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x78], xmm0
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0x68], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0x78], xmm1
mov qword [rax + 0x10], r12
mov qword [rax + 0x18], 7
mov word [rax], r12w
mov dword [rsp + 0x40], 7
mov edx, 1
lea r8d, [rdx + 1]
lea rax, [rbp - 0x78]
mov qword [rsp + 0x20], rax
lea r9d, [rdx + 0xf]
lea rcx, [rsp + 0x68]
call fcn.1400214c0
nop
mov rdx, qword [rbp - 0x80]
cmp rdx, 8
jb 0x140059175
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059170
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059437
call fcn.1401218ec
movdqa xmm0, xmmword [0x1401b5c90]
movdqu xmmword [rsp + 0x78], xmm0
mov word [rsp + 0x68], r12w
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x1400591c9
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400591c4
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005943d
call fcn.1401218ec
movdqa xmm0, xmmword [0x1401b5c90]
movdqu xmmword [rbp - 0x40], xmm0
mov word [rbp - 0x50], r12w
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x14005921d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059218
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059443
call fcn.1401218ec
movdqa xmm0, xmmword [0x1401b5c90]
movdqu xmmword [rsp + 0x58], xmm0
mov word [rsp + 0x48], r12w
mov rdx, qword [rbp - 0x60]
cmp rdx, 8
jb 0x14005938d
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x78]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059270
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059449
call fcn.1401218ec
jmp 0x14005938d
lea rcx, [rbp - 0x10]
call fcn.1400b0160
movzx r13d, al
test al, al
je 0x140059378
xor eax, eax
mov qword [rsp + 0x50], rax
mov qword [rsp + 0x48], r15
mov rcx, r15
call fcn.1400fff28
test eax, eax
je 0x1400592ae
mov ecx, eax
call fcn.140100058
mov byte [rsp + 0x50], 1
mov rcx, qword [r12]
mov qword [r12], rbx
test rcx, rcx
je 0x1400592cb
mov rax, qword [rcx]
mov edx, 1
call qword [rax + reloc.OLEAUT32.dll_VariantClear]
mov rdx, r14
lea rcx, [rbp - 0x50]
call fcn.1400ab790
nop
lea rdx, [rbp - 0x50]
cmp qword [rbp - 0x38], 8
cmovae rdx, qword [rbp - 0x50]
lea rcx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rcx, qword [rbp - 0x30]
xor r8d, r8d
call qword [sym.imp.KERNEL32.dll_CopyFileW]
test eax, eax
je 0x140059313
mov r8, r14
mov rdx, r12
mov rcx, r15
call fcn.14005c340
movzx r13d, al
mov rdx, qword [rbp - 0x38]
cmp rdx, 8
jb 0x140059353
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x50]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14005934e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14005944f
call fcn.1401218ec
movdqa xmm0, xmmword [0x1401b5c90]
movdqu xmmword [rbp - 0x40], xmm0
mov word [rbp - 0x50], bx
mov rcx, r15
call fcn.1400fff4c
test eax, eax
je 0x140059378
mov ecx, eax
call fcn.140100058
nop
lea rcx, [rbp - 0x30]
cmp qword [rbp - 0x18], 8
cmovae rcx, qword [rbp - 0x30]
call qword [sym.imp.KERNEL32.dll_DeleteFileW]
nop
mov rdx, qword [rbp - 0x18]
cmp rdx, 8
jb 0x1400593ce
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x30]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400593c8
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059455
call fcn.1401218ec
nop
mov rdx, qword [rbp + 8]
cmp rdx, 8
jb 0x14005940a
lea rdx, [rdx*2 + 2]
mov rcx, qword [rbp - 0x10]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140059405
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140059431
call fcn.1401218ec
movzx eax, r13b
mov rcx, qword [rbp + 0x1010]
xor rcx, rsp
call fcn.140121cc0
add rsp, 0x1128
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
pop rbp
ret
call fcn.1401431ac
nop
call fcn.1401431ac
nop
call fcn.1401431ac
nop
call fcn.1401431ac
nop
call fcn.1401431ac
nop
call fcn.1401431ac
nop
call fcn.1401431ac
int3