Function at 0x18003e030
Capabilities:
Delete file
Print debug messages

Disassembly:
push rbp
push rsi
push rdi
push r14
push r15
lea rbp, [rsp - 0x470]
sub rsp, 0x570
mov qword [rsp + 0x50], 0xfffffffffffffffe
mov qword [rsp + 0x5b0], rbx
mov rax, qword [0x1800ba0e0]
xor rax, rsp
mov qword [rbp + 0x460], rax
mov rdi, rdx
mov rsi, rcx
mov qword [rbp - 0x20], rcx
mov qword [rbp - 0x18], rdx
cmp byte [0x1800c5abc], 0
je 0x18003e96b
cmp byte [0x1800c5abe], 0
je 0x18003e96b
mov qword [rbp + 0x98], SafeArrayGetLBound
xor r15d, r15d
mov qword [rbp + 0x90], r15
mov byte [rbp + 0x80], r15b
lea rcx, str.cloud_app_downloadList:_pre_path_is
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp qword [rdi + 0x18], 0x10
jb 0x18003e0c6
mov rcx, qword [rdi]
jmp 0x18003e0c9
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp dword [0x1800c5924], 6
jb 0x18003e12b
mov r8, rdi
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x10]
call fcn.180002ad0
mov rdx, rax
mov rcx, rdi
call fcn.180019f90
lea rcx, [rbp - 8]
call fcn.180002860
mov qword [rbp + 0x10], SafeArrayGetLBound
mov qword [rbp + 8], r15
mov byte [rbp - 8], 0
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rdi
lea rcx, [rbp - 8]
call fcn.180002490
mov rdx, rsi
lea rcx, [rbp - 8]
call fcn.180043a50
lea rcx, str.cloud_app_downloadList:_afeter_path_is
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp qword [rdi + 0x18], 0x10
jb 0x18003e144
mov rcx, qword [rdi]
jmp 0x18003e147
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov r8, rsi
lea rdx, [rbp + 0x128]
lea rcx, [rbp - 0x10]
call fcn.180002da0
nop
mov r8, rdi
lea rdx, [rbp + 0x108]
lea rcx, [rbp - 0x10]
call fcn.180002da0
nop
xor eax, eax
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x70], SafeArrayGetLBound
mov qword [rbp + 0x68], r15
mov byte [rbp + 0x58], al
lea ecx, [rax + 0x20]
call fcn.18004b210
mov qword [rbp - 8], rax
test rax, rax
je 0x18003e1b7
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.180016ad0
jmp 0x18003e1ba
mov rax, r15
mov qword [rbp + 0x78], rax
lea rax, [rbp + 0x128]
cmp qword [rbp + 0x140], 0x10
cmovae rax, qword [rbp + 0x128]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0x40], SafeArrayGetLBound
mov qword [rbp + 0x38], r15
mov byte [rbp + 0x28], 0
mov r8d, 0xb
lea rdx, str.downloadUrl
lea rcx, [rbp + 0x28]
call fcn.1800025c0
mov byte [rbp + 0x48], 0x2e
lea rax, [rbp + 0x28]
cmp qword [rbp + 0x40], 0x10
cmovae rax, qword [rbp + 0x28]
mov qword [rbp + 0x50], rax
mov cl, 1
call fcn.18004cf28
mov rbx, rax
mov qword [rbp], rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + select]
test rax, rax
je 0x18003e24b
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
nop
lea r9, [rbp - 8]
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x58]
call fcn.180034e00
nop
lea rcx, [rbp + 0x28]
call fcn.180002860
lea rax, [rbp + 0x108]
cmp qword [rbp + 0x120], 0x10
cmovae rax, qword [rbp + 0x108]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0x40], SafeArrayGetLBound
mov qword [rbp + 0x38], r15
mov byte [rbp + 0x28], 0
mov r8d, 9
lea rdx, str.lcoalPath
lea rcx, [rbp + 0x28]
call fcn.1800025c0
mov byte [rbp + 0x48], 0x2e
lea rax, [rbp + 0x28]
cmp qword [rbp + 0x40], 0x10
cmovae rax, qword [rbp + 0x28]
mov qword [rbp + 0x50], rax
mov cl, 1
call fcn.18004cf28
mov rbx, rax
mov qword [rbp], rax
mov rdx, qword [rax]
mov rcx, rax
call qword [rdx + reloc.OLEAUT32.dll_VariantClear]
nop
mov rdx, qword [rbx]
mov rcx, rbx
call qword [rdx + select]
test rax, rax
je 0x18003e2f8
mov r8, qword [rax]
mov edx, 1
mov rcx, rax
call qword [r8]
nop
lea r9, [rbp - 8]
lea r8, [rsp + 0x38]
lea rdx, [rbp + 0x28]
lea rcx, [rbp + 0x58]
call fcn.180034e00
nop
lea rcx, [rbp + 0x28]
call fcn.180002860
xor eax, eax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x40], SafeArrayGetLBound
mov qword [rbp + 0x38], r15
mov byte [rbp + 0x28], al
lea ecx, [rax + 0x20]
call fcn.18004b210
mov qword [rbp - 8], rax
test rax, rax
je 0x18003e35d
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.180016ad0
mov rbx, rax
jmp 0x18003e360
mov rbx, r15
mov qword [rbp + 0x48], rbx
lea r8, [rbp + 0x58]
lea rdx, [0x180087bb0]
lea rcx, [rsp + 0x58]
call fcn.1800345c0
mov r14, rax
mov rdx, qword [rax]
mov qword [rbp - 0x58], SafeArrayGetLBound
mov qword [rbp - 0x60], r15
mov byte [rbp - 0x70], 0
cmp byte [rdx], 0
jne 0x18003e399
mov r8, r15
jmp 0x18003e3aa
or r8, 0xffffffffffffffff
nop dword [rax]
inc r8
cmp byte [rdx + r8], 0
jne 0x18003e3a0
lea rcx, [rbp - 0x70]
call fcn.1800025c0
nop
lea rdx, [r14 + 8]
lea rcx, [rbp - 0x50]
call fcn.180013420
nop
lea rcx, [rbx + 0x11]
lea r8, [rcx - 9]
mov eax, 8
test rcx, rcx
cmove r8, rax
lea r9, [rbp - 0x70]
mov r8, qword [r8]
lea rdx, [rbp - 8]
call fcn.18002aaa0
nop
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x18003e40f
lea rcx, [rbx + 0x11]
call fcn.180026e90
mov rcx, qword [rbx + 8]
call fcn.18004b054
mov edx, 0x20
mov rcx, rbx
call fcn.18004b24c
lea rcx, [rbp - 0x50]
call fcn.180002860
lea rcx, [rbp - 0x70]
call fcn.180002860
nop
mov rbx, qword [rbp - 0x80]
test rbx, rbx
je 0x18003e44a
lea rcx, [rbx + 0x11]
call fcn.180026e90
mov rcx, qword [rbx + 8]
call fcn.18004b054
mov edx, 0x20
mov rcx, rbx
call fcn.18004b24c
lea rcx, [rsp + 0x60]
call fcn.180002860
xor eax, eax
mov qword [rbp + 0xc0], rax
mov qword [rbp + 0xc8], rax
mov qword [rbp + 0xd0], rax
mov qword [rbp + 0xd8], rax
mov qword [rbp + 0xe0], rax
lea rcx, [rbp + 0xc0]
call fcn.1800134b0
nop
mov qword [rbp + 0x10], SafeArrayGetLBound
mov qword [rbp + 8], r15
mov byte [rbp - 8], 0
mov r8d, 9
lea rdx, str.downloads
lea rcx, [rbp - 8]
call fcn.1800025c0
mov byte [rbp + 0x18], 0x2e
lea rax, [rbp - 8]
cmp qword [rbp + 0x10], 0x10
cmovae rax, qword [rbp - 8]
mov qword [rbp + 0x20], rax
lea r8, [rbp + 0x28]
lea rdx, [rbp - 8]
lea rcx, [rbp + 0xc0]
call fcn.1800479c0
nop
lea rcx, [rbp - 8]
call fcn.180002860
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x150]
call fcn.180050fe0
mov edx, 3
lea r8d, [rdx - 2]
lea rcx, [rbp + 0x150]
call fcn.1800373a0
nop
xor r8d, r8d
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x160]
call fcn.180036640
mov qword [rbp + 0x100], SafeArrayGetLBound
mov qword [rbp + 0xf8], r15
mov byte [rbp + 0xe8], 0
mov r8d, 0x2a
lea rdx, str._sgep_v1_clientAgent_cloudApp_downloadList
lea rcx, [rbp + 0xe8]
call fcn.1800025c0
nop
mov qword [rbp + 0xb8], SafeArrayGetLBound
mov qword [rbp + 0xb0], r15
mov byte [rbp + 0xa0], 0
mov r8d, reloc.WS2_32.dll_setsockopt
lea rdx, str.Authorization:_Basic
lea rcx, [rbp + 0xa0]
call fcn.1800025c0
nop
lea rcx, [rbp - 8]
call fcn.180042f50
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.1800031e0
nop
lea rcx, [rbp - 8]
call fcn.180002860
mov r8d, 2
lea rdx, [0x180088480]
lea rcx, [rbp + 0xa0]
call fcn.180003310
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x150]
call fcn.18002fec0
nop
lea rcx, [rbp + 0x80]
mov qword [rsp + 0x28], rcx
lea rcx, [rbp + 0xa0]
mov qword [rsp + 0x20], rcx
mov r9, rax
lea r8, [rbp + 0xe8]
lea rdx, [0x1800c5ae0]
lea rcx, [0x1800c5ac0]
call fcn.1800462d0
test eax, eax
sete r14b
lea rcx, [rbp - 8]
call fcn.180002860
lea r15, vtable.std::ios_base.0
test r14b, r14b
je 0x18003e76e
lea rcx, [rbp + 0x80]
cmp qword [rbp + 0x98], 0x10
cmovae rcx, qword [rbp + 0x80]
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x250]
call fcn.180050fe0
mov r9d, 1
lea r8d, [r9 + 2]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x250]
call fcn.180013750
nop
xor eax, eax
mov qword [rbp - 8], rax
mov qword [rbp], rax
mov qword [rbp + 8], rax
mov qword [rbp + 0x10], rax
mov qword [rbp + 0x18], rax
lea rcx, [rbp - 8]
call fcn.1800134b0
nop
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x250]
call fcn.180010f00
movzx r9d, byte [rsp + 0x30]
mov r8b, 0x2e
lea rdx, str.ActionCode
lea rcx, [rsp + 0x58]
call fcn.180037aa0
nop
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 8]
call fcn.180029dd0
mov rcx, rax
call fcn.180033460
mov ebx, eax
lea rcx, [rsp + 0x58]
call fcn.180002860
cmp ebx, 2
jne 0x18003e712
cmp qword [rdi + 0x18], 0x10
jb 0x18003e6fb
mov rcx, qword [rdi]
jmp 0x18003e6fe
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_DeleteFileA]
lea rcx, str.delete_downloadFile
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
nop
mov rbx, qword [rbp + 0x18]
test rbx, rbx
je 0x18003e743
lea rcx, [rbx + 0x11]
call fcn.180026e90
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.180020370
mov edx, 0x20
mov rcx, rbx
call fcn.18004b24c
lea rcx, [rbp - 8]
call fcn.180002860
nop
lea rcx, [rbp + 0x2e8]
call fcn.1800187f0
nop
mov qword [rbp + 0x2e8], r15
lea rcx, [rbp + 0x2e8]
call fcn.18004d2e0
nop
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x350]
call fcn.180050fe0
lea rdx, str.cloud_app_downloadList__s:_url_is__s__path_is__s
lea rcx, [rbp + 0x350]
call fcn.180012ec0
nop
cmp qword [rdi + 0x18], 0x10
jb 0x18003e7a2
mov rax, qword [rdi]
jmp 0x18003e7a5
mov rax, rdi
mov qword [rbp - 8], rax
cmp qword [rsi + 0x18], 0x10
jb 0x18003e7b5
mov rax, qword [rsi]
jmp 0x18003e7b8
mov rax, rsi
mov qword [rsp + 0x48], rax
lea rcx, str.success
lea rax, str.failed
test r14b, r14b
cmovne rax, rcx
mov qword [rsp + 0x38], rax
lea rdx, [rsp + 0x38]
lea rcx, [rbp + 0x350]
call fcn.18000c430
lea rdx, [rsp + 0x48]
mov rcx, rax
call fcn.18000c430
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.18000c430
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x350]
call fcn.18002f7a0
cmp qword [rax + 0x18], 0x10
jb 0x18003e81b
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, [rbp - 8]
call fcn.180002860
nop
lea rcx, [rbp + 0x350]
call fcn.1800182b0
nop
lea rcx, [rbp + 0xa0]
call fcn.180002860
nop
lea rcx, [rbp + 0xe8]
call fcn.180002860
nop
lea rcx, [rbp + 0x1e8]
call fcn.1800187f0
nop
mov qword [rbp + 0x1e8], r15
lea rcx, [rbp + 0x1e8]
call fcn.18004d2e0
nop
mov rbx, qword [rbp + 0xe0]
test rbx, rbx
je 0x18003e8aa
lea rcx, [rbx + 0x11]
call fcn.180026e90
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.180020370
mov edx, 0x20
mov rcx, rbx
call fcn.18004b24c
lea rcx, [rbp + 0xc0]
call fcn.180002860
nop
mov rbx, qword [rbp + 0x48]
test rbx, rbx
je 0x18003e8e8
lea rcx, [rbx + 0x11]
call fcn.180026e90
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.180020370
mov edx, 0x20
mov rcx, rbx
call fcn.18004b24c
lea rcx, [rbp + 0x28]
call fcn.180002860
nop
mov rbx, qword [rbp + 0x78]
test rbx, rbx
je 0x18003e923
lea rcx, [rbx + 0x11]
call fcn.180026e90
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.180020370
mov edx, 0x20
mov rcx, rbx
call fcn.18004b24c
lea rcx, [rbp + 0x58]
call fcn.180002860
nop
lea rcx, [rbp + 0x108]
call fcn.180002860
nop
lea rcx, [rbp + 0x128]
call fcn.180002860
nop
lea rcx, [rbp + 0x80]
call fcn.180002860
nop
mov rcx, rsi
call fcn.180002860
nop
mov rcx, rdi
call fcn.180002860
movzx eax, r14b
jmp 0x18003e97b
call fcn.180002860
nop
mov rcx, rdi
call fcn.180002860
xor al, al
mov rcx, qword [rbp + 0x460]
xor rcx, rsp
call fcn.18004b0f0
mov rbx, qword [rsp + 0x5b0]
add rsp, 0x570
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret