Function at 0x180037dc0
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 [0x1800ad0e0]
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 [0x1800b88dc], 0
je 0x180038784
cmp byte [0x1800b88de], 0
je 0x180038784
mov qword [rbp + 0x98], setsockopt
xor r15d, r15d
mov qword [rbp + 0x90], r15
mov byte [rbp + 0x80], r15b
cmp qword [rcx + 0x10], r15
jne 0x180037e58
lea rcx, str.get_ie_cur_url_from_ext
call qword [sym.imp.KERNEL32.dll_OutputDebugStringW]
mov rcx, rsi
call fcn.180031a60
lea rcx, str.cloud_app_downloadList:_pre_path_is
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp qword [rdi + 0x18], 0x10
jb 0x180037e71
mov rcx, qword [rdi]
jmp 0x180037e74
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, str.cloud_app_downloadList:_pre_url_is
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp qword [rsi + 0x18], 0x10
jb 0x180037e93
mov rcx, qword [rsi]
jmp 0x180037e96
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp dword [0x1800b8744], 6
jb 0x180037f1c
mov r8, rdi
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x10]
call fcn.1800029b0
mov rdx, rax
mov rcx, rdi
call fcn.180010330
lea rcx, [rbp - 8]
call fcn.180002740
mov r8, rsi
lea rdx, [rbp - 8]
lea rcx, [rbp - 0x10]
call fcn.180002bd0
mov rdx, rax
mov rcx, rsi
call fcn.180010330
lea rcx, [rbp - 8]
call fcn.180002740
mov qword [rbp + 0x10], setsockopt
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.180002390
mov rdx, rsi
lea rcx, [rbp - 8]
call fcn.18003e7f0
lea rcx, str.cloud_app_downloadList:_afeter_path_is
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp qword [rdi + 0x18], 0x10
jb 0x180037f35
mov rcx, qword [rdi]
jmp 0x180037f38
mov rcx, rdi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, str.cloud_app_downloadList:_afeter_url_is
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
cmp qword [rsi + 0x18], 0x10
jb 0x180037f57
mov rcx, qword [rsi]
jmp 0x180037f5a
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
mov r8, rsi
lea rdx, [rbp + 0x128]
lea rcx, [rbp - 0x10]
call fcn.180002c80
nop
mov r8, rdi
lea rdx, [rbp + 0x108]
lea rcx, [rbp - 0x10]
call fcn.180002c80
nop
xor eax, eax
mov qword [rbp + 0x58], rax
mov qword [rbp + 0x60], rax
mov qword [rbp + 0x78], rax
mov qword [rbp + 0x70], setsockopt
mov qword [rbp + 0x68], r15
mov byte [rbp + 0x58], al
lea ecx, [rax + 0x20]
call fcn.180046b20
mov qword [rbp - 8], rax
test rax, rax
je 0x180037fca
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.18002bc50
jmp 0x180037fcd
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], setsockopt
mov qword [rbp + 0x38], r15
mov byte [rbp + 0x28], 0
mov r8d, 0xb
lea rdx, str.downloadUrl
lea rcx, [rbp + 0x28]
call fcn.1800024c0
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.180048848
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 0x18003805e
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.1800263a0
nop
lea rcx, [rbp + 0x28]
call fcn.180002740
lea rax, [rbp + 0x108]
cmp qword [rbp + 0x120], 0x10
cmovae rax, qword [rbp + 0x108]
mov qword [rsp + 0x38], rax
mov qword [rbp + 0x40], setsockopt
mov qword [rbp + 0x38], r15
mov byte [rbp + 0x28], 0
mov r8d, 9
lea rdx, str.lcoalPath
lea rcx, [rbp + 0x28]
call fcn.1800024c0
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.180048848
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 0x18003810b
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.1800263a0
nop
lea rcx, [rbp + 0x28]
call fcn.180002740
xor eax, eax
mov qword [rbp + 0x28], rax
mov qword [rbp + 0x30], rax
mov qword [rbp + 0x48], rax
mov qword [rbp + 0x40], setsockopt
mov qword [rbp + 0x38], r15
mov byte [rbp + 0x28], al
lea ecx, [rax + 0x20]
call fcn.180046b20
mov qword [rbp - 8], rax
test rax, rax
je 0x180038170
lea r8, [rsp + 0x30]
lea rdx, [rsp + 0x40]
mov rcx, rax
call fcn.18002bc50
mov rbx, rax
jmp 0x180038173
mov rbx, r15
mov qword [rbp + 0x48], rbx
lea r8, [rbp + 0x58]
lea rdx, [0x18007b110]
lea rcx, [rsp + 0x58]
call fcn.1800238e0
mov r14, rax
mov rdx, qword [rax]
mov qword [rbp - 0x58], setsockopt
mov qword [rbp - 0x60], r15
mov byte [rbp - 0x70], 0
cmp byte [rdx], 0
jne 0x1800381ac
mov r8, r15
jmp 0x1800381ba
or r8, 0xffffffffffffffff
inc r8
cmp byte [rdx + r8], 0
jne 0x1800381b0
lea rcx, [rbp - 0x70]
call fcn.1800024c0
nop
lea rdx, [r14 + 8]
lea rcx, [rbp - 0x50]
call fcn.1800291a0
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.18003f9c0
nop
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x18003821f
lea rcx, [rbx + 0x11]
call fcn.18003a3b0
mov rcx, qword [rbx + 8]
call fcn.180046964
mov edx, 0x20
mov rcx, rbx
call fcn.18004736c
lea rcx, [rbp - 0x50]
call fcn.180002740
lea rcx, [rbp - 0x70]
call fcn.180002740
nop
mov rbx, qword [rbp - 0x80]
test rbx, rbx
je 0x180038263
lea rcx, [rbx + 0x11]
call fcn.18003a3b0
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.1800325c0
mov edx, 0x20
mov rcx, rbx
call fcn.18004736c
lea rcx, [rsp + 0x60]
call fcn.180002740
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.180029230
nop
mov qword [rbp + 0x10], setsockopt
mov qword [rbp + 8], r15
mov byte [rbp - 8], 0
mov r8d, 9
lea rdx, str.downloads
lea rcx, [rbp - 8]
call fcn.1800024c0
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.180042700
nop
lea rcx, [rbp - 8]
call fcn.180002740
xor edx, edx
mov r8d, 0xf8
lea rcx, [rbp + 0x150]
call fcn.18004c910
mov edx, 3
lea r8d, [rdx - 2]
lea rcx, [rbp + 0x150]
call fcn.180029700
nop
xor r8d, r8d
lea rdx, [rbp + 0xc0]
lea rcx, [rbp + 0x160]
call fcn.1800281f0
mov qword [rbp + 0x100], setsockopt
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.1800024c0
nop
mov qword [rbp + 0xb8], setsockopt
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.1800024c0
nop
lea rcx, [rbp - 8]
call fcn.18003dbb0
nop
or r9, 0xffffffffffffffff
xor r8d, r8d
mov rdx, rax
lea rcx, [rbp + 0xa0]
call fcn.1800030c0
nop
lea rcx, [rbp - 8]
call fcn.180002740
mov r8d, 2
lea rdx, [0x18007c924]
lea rcx, [rbp + 0xa0]
call fcn.1800031f0
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x150]
call fcn.180045c00
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, [0x1800b8900]
lea rcx, [0x1800b88e0]
call fcn.180040ef0
test eax, eax
sete r14b
lea rcx, [rbp - 8]
call fcn.180002740
lea r15, vtable.std::ios_base.0
test r14b, r14b
je 0x180038587
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.18004c910
mov r9d, 1
lea r8d, [r9 + 2]
lea rdx, [rbp + 0x80]
lea rcx, [rbp + 0x250]
call fcn.180029650
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.180029230
nop
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x250]
call fcn.1800268f0
movzx r9d, byte [rsp + 0x30]
mov r8b, 0x2e
lea rdx, str.ActionCode
lea rcx, [rsp + 0x58]
call fcn.18002c090
nop
lea rdx, [rsp + 0x58]
lea rcx, [rbp - 8]
call fcn.18003e4b0
mov rcx, rax
call fcn.1800223b0
mov ebx, eax
lea rcx, [rsp + 0x58]
call fcn.180002740
cmp ebx, 2
jne 0x18003852b
cmp qword [rdi + 0x18], 0x10
jb 0x180038514
mov rcx, qword [rdi]
jmp 0x180038517
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 0x18003855c
lea rcx, [rbx + 0x11]
call fcn.18003a3b0
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.1800325c0
mov edx, 0x20
mov rcx, rbx
call fcn.18004736c
lea rcx, [rbp - 8]
call fcn.180002740
nop
lea rcx, [rbp + 0x2e8]
call fcn.18002ce80
nop
mov qword [rbp + 0x2e8], r15
lea rcx, [rbp + 0x2e8]
call fcn.180048c00
nop
xor edx, edx
mov r8d, 0x108
lea rcx, [rbp + 0x350]
call fcn.18004c910
lea rdx, str.cloud_app_downloadList__s:_url_is__s__path_is__s
lea rcx, [rbp + 0x350]
call fcn.18000cdd0
nop
cmp qword [rdi + 0x18], 0x10
jb 0x1800385bb
mov rax, qword [rdi]
jmp 0x1800385be
mov rax, rdi
mov qword [rbp - 8], rax
cmp qword [rsi + 0x18], 0x10
jb 0x1800385ce
mov rax, qword [rsi]
jmp 0x1800385d1
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.1800221f0
lea rdx, [rsp + 0x48]
mov rcx, rax
call fcn.1800221f0
lea rdx, [rbp - 8]
mov rcx, rax
call fcn.1800221f0
lea rdx, [rbp - 8]
lea rcx, [rbp + 0x350]
call fcn.18001d5a0
cmp qword [rax + 0x18], 0x10
jb 0x180038634
mov rax, qword [rax]
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_OutputDebugStringA]
lea rcx, [rbp - 8]
call fcn.180002740
nop
lea rcx, [rbp + 0x350]
call fcn.18000f5f0
nop
lea rcx, [rbp + 0xa0]
call fcn.180002740
nop
lea rcx, [rbp + 0xe8]
call fcn.180002740
nop
lea rcx, [rbp + 0x1e8]
call fcn.18002ce80
nop
mov qword [rbp + 0x1e8], r15
lea rcx, [rbp + 0x1e8]
call fcn.180048c00
nop
mov rbx, qword [rbp + 0xe0]
test rbx, rbx
je 0x1800386c3
lea rcx, [rbx + 0x11]
call fcn.18003a3b0
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.1800325c0
mov edx, 0x20
mov rcx, rbx
call fcn.18004736c
lea rcx, [rbp + 0xc0]
call fcn.180002740
nop
mov rbx, qword [rbp + 0x48]
test rbx, rbx
je 0x180038701
lea rcx, [rbx + 0x11]
call fcn.18003a3b0
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.1800325c0
mov edx, 0x20
mov rcx, rbx
call fcn.18004736c
lea rcx, [rbp + 0x28]
call fcn.180002740
nop
mov rbx, qword [rbp + 0x78]
test rbx, rbx
je 0x18003873c
lea rcx, [rbx + 0x11]
call fcn.18003a3b0
mov edx, 1
lea r8d, [rdx + 0x6f]
mov rcx, qword [rbx + 8]
call fcn.1800325c0
mov edx, 0x20
mov rcx, rbx
call fcn.18004736c
lea rcx, [rbp + 0x58]
call fcn.180002740
nop
lea rcx, [rbp + 0x108]
call fcn.180002740
nop
lea rcx, [rbp + 0x128]
call fcn.180002740
nop
lea rcx, [rbp + 0x80]
call fcn.180002740
nop
mov rcx, rsi
call fcn.180002740
nop
mov rcx, rdi
call fcn.180002740
movzx eax, r14b
jmp 0x180038794
call fcn.180002740
nop
mov rcx, rdi
call fcn.180002740
xor al, al
mov rcx, qword [rbp + 0x460]
xor rcx, rsp
call fcn.180046a00
mov rbx, qword [rsp + 0x5b0]
add rsp, 0x570
pop r15
pop r14
pop rdi
pop rsi
pop rbp
ret