Function at 0x140023bb0
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
mov qword [rsp + 0x10], rdx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x40
mov rsi, qword [rcx + 8]
xor ebx, ebx
and dword [rsp + 0x98], ebx
xor r14d, r14d
and dword [rsp + 0x34], ebx
xor r12d, r12d
xor r15d, r15d
mov dword [rsp + 0x80], r14d
xor r13d, r13d
mov rdi, r8
mov rbp, rcx
test rsi, rsi
je 0x140023c74
mov rcx, qword [rsi]
mov r14, qword [rsi + 8]
call fcn.140024cf8
test eax, eax
je 0x140023c56
mov rcx, qword [rsi]
mov ebx, 0x80004005
inc r12d
call fcn.140025138
test rax, rax
je 0x140023c2b
mov rcx, qword [rsi]
call fcn.140025138
mov r9, rax
jmp 0x140023c32
lea r9, [0x140042350]
mov rax, qword [rsi]
lea r8, [0x140042350]
lea rdx, str.___A_download_will_be_required_for_component__S_from_URL__S._r_n
mov ecx, 4
cmp qword [rax + 0x30], r13
cmovne r8, qword [rax + 0x30]
call fcn.1400168a8
mov rax, qword [rsi]
xor ecx, ecx
mov rsi, r14
cmp dword [rax + 0x10], ecx
setne cl
add dword [rbp + 0x18], ecx
test r14, r14
jne 0x140023bf9
mov r14d, dword [rsp + 0x80]
test rdi, rdi
je 0x140023cea
mov rdx, qword [rdi]
test rdx, rdx
je 0x140023c86
mov rax, rdx
jmp 0x140023c8e
mov rcx, rdi
call fcn.14002a0c0
test rax, rax
je 0x140023cea
test rdx, rdx
jne 0x140023ca3
mov rcx, rdi
call fcn.14002a0c0
mov rdx, rax
mov rcx, rdx
call fcn.140026dec
test eax, eax
je 0x140023cea
mov rdx, qword [rdi]
xor r14d, r14d
test r12d, r12d
sete r14b
mov dword [rsp + 0x80], r14d
test rdx, rdx
jne 0x140023cd4
mov rcx, rdi
call fcn.14002a0c0
mov rdx, rax
xor ecx, ecx
cmp qword [rdx + 0x48], rcx
setne cl
cmp qword [rdx + 0x50], r13
lea eax, [rcx + 1]
cmove eax, ecx
add r12d, eax
test r12d, r12d
je 0x140023f6d
test r14d, r14d
jne 0x140023e63
mov rsi, qword [rbp + 8]
mov ecx, r12d
call fcn.140015c44
lea ecx, [r14 + 4]
call fcn.140015974
mov dword [rsp + 0x88], r13d
cmp dword [rbp + 0x27c], r13d
jne 0x140023e42
test rsi, rsi
je 0x140023e32
mov rcx, qword [rsi]
mov r13, qword [rsi + 8]
call fcn.140024cf8
test eax, eax
je 0x140023e11
lea r14, [rbp + 0x2a0]
cmp qword [r14], 0
jne 0x140023d64
xor edx, edx
mov rcx, r14
call fcn.140035c14
mov ebx, eax
test eax, eax
js 0x140023e22
mov rcx, qword [rsi]
call fcn.1400251a4
mov r8, rax
lea rdx, str.__Beginning_download_of_component__S._r_n
mov ecx, 4
call fcn.14001699c
mov eax, dword [rsp + 0x88]
inc eax
mov ecx, eax
mov dword [rsp + 0x88], eax
call fcn.140015d00
mov rcx, qword [rsi]
call fcn.1400251a4
mov rcx, rax
call fcn.140015da8
mov rax, qword [rsi]
mov rcx, qword [rax + 0x90]
test rcx, rcx
jne 0x140023dbd
mov ebx, 0x80004005
jmp 0x140023dc4
call fcn.14001ef50
mov ebx, eax
mov rcx, qword [r14]
lea rdx, [rsp + 0x30]
and dword [rsp + 0x30], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x50]
call qword [0x14003f118]
test eax, eax
js 0x140023def
mov eax, dword [rsp + 0x30]
and eax, 1
mov dword [rbp + 0x270], eax
test ebx, ebx
jns 0x140023e0e
mov rcx, qword [rsi]
cmp dword [rcx + 0x60], 9
jge 0x140023e2b
mov dword [rsp + 0x34], ebx
xor edx, edx
mov ebx, 1
call fcn.140024d5c
jmp 0x140023e11
inc r15d
cmp dword [rbp + 0x27c], 0
mov rsi, r13
jne 0x140023e32
jmp 0x140023d26
mov dword [rsp + 0x98], eax
jmp 0x140023e32
mov dword [rsp + 0x98], ebx
mov r14d, dword [rsp + 0x80]
mov r13d, dword [rsp + 0x88]
mov rcx, qword [rbp + 0x2a0]
test rcx, rcx
je 0x140023e5b
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x14003f118]
and qword [rbp + 0x2a0], 0
test rdi, rdi
je 0x140023fc0
mov rdx, qword [rdi]
test rdx, rdx
je 0x140023e79
mov rax, rdx
jmp 0x140023e81
mov rcx, rdi
call fcn.14002a0c0
test rax, rax
je 0x140023fc0
test rdx, rdx
jne 0x140023e9a
mov rcx, rdi
call fcn.14002a0c0
mov rdx, rax
mov rcx, rdx
call fcn.140026dec
test eax, eax
je 0x140023fc0
mov rax, qword [rdi]
test rax, rax
jne 0x140023eba
mov rcx, rdi
call fcn.14002a0c0
xor edx, edx
lea rbp, [0x14003f4a0]
cmp qword [rax + 0x48], rdx
setne dl
cmp qword [rax + 0x50], 0
lea esi, [rdx + 1]
cmove esi, edx
test esi, esi
je 0x140023f2c
test r14d, r14d
je 0x140023ef0
mov ecx, r12d
call fcn.140015c44
mov ecx, 4
call fcn.140015974
inc r13d
mov ecx, r13d
call fcn.140015d00
mov rax, qword [rdi]
test rax, rax
jne 0x140023f0b
mov rcx, rdi
call fcn.14002a0c0
cmp qword [rax + 0x18], 0
mov rcx, rbp
cmovne rcx, qword [rax + 0x18]
call fcn.140015da8
mov rcx, rdi
call fcn.14002bd24
test eax, eax
jne 0x140023f2c
inc r15d
cmp esi, 1
jbe 0x140023fc0
lea ecx, [r13 + 1]
call fcn.140015d00
mov rax, qword [rdi]
test rax, rax
jne 0x140023f4e
mov rcx, rdi
call fcn.14002a0c0
cmp qword [rax + 0x18], 0
cmovne rbp, qword [rax + 0x18]
mov rcx, rbp
call fcn.140015da8
mov rcx, rdi
call fcn.14002bff4
inc r15d
jmp 0x140023fc0
mov rcx, qword [0x140050310]
cmp rcx, 0xffffffffffffffff
jne 0x140023f8f
lea edx, [rcx + 5]
call fcn.140016188
mov rcx, qword [0x140050310]
cmp rcx, 0xffffffffffffffff
je 0x140023fc0
cmp dword [0x1400516e0], 4
jl 0x140023fc0
and dword [rsp + 0x88], r13d
lea r9, [rsp + 0x88]
and qword [rsp + 0x20], r13
lea rdx, str.__No_downloads_required._r_n
mov r8d, 0x1a
call qword [sym.imp.KERNEL32.dll_WriteFile]
test ebx, ebx
cmovns ebx, dword [rsp + 0x98]
test ebx, ebx
js 0x140023fe0
cmp r15d, r12d
jae 0x140023fe0
test r15d, r15d
mov ebx, 1
cmove ebx, dword [rsp + 0x34]
mov eax, ebx
mov rbx, qword [rsp + 0x90]
add rsp, 0x40
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret