Function at 0x14001d250
Capabilities:
Check http status code
Connect to http server
Create http request
Create thread
Get http content length
Parse url
Terminate thread
Write file on windows

Disassembly:
mov qword [rsp + 0x10], rdx
push rbx
push rsi
push rdi
push r12
push r13
push r14
push r15
mov eax, 0x1800
call fcn.140055900
sub rsp, rax
mov rdi, rdx
mov rsi, rcx
xor ebx, ebx
mov dword [rsp + 0x88], ebx
xorps xmm0, xmm0
movdqa xmmword [rsp + 0x1b0], xmm0
xorps xmm1, xmm1
movdqa xmmword [rsp + 0x1c0], xmm1
mov qword [rsp + 0x1d0], rbx
mov byte [rsp + 0x1d8], bl
mov qword [rsp + 0x1e0], r8
lea edx, [rbx + 1]
lea rcx, [rsp + 0x1e8]
call fcn.14001ba80
nop
lea rcx, [rsp + 0x2d0]
call fcn.14001eee0
nop
mov dword [rsp + 0x20], ebx
xor r9d, r9d
xor r8d, r8d
xor edx, edx
lea rcx, str.MATLAB_App_Installer_1.0
call qword [sym.imp.WININET.dll_InternetOpenW]
mov qword [rsp + 0x1c8], rax
mov qword [rsp + 0xd8], rbx
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0xf0], 7
mov word [rsp + 0xd8], bx
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x140], xmm0
movups xmmword [rsp + 0x150], xmm0
movups xmmword [rsp + 0x160], xmm0
movups xmmword [rsp + 0x170], xmm0
movups xmmword [rsp + 0x180], xmm0
movups xmmword [rsp + 0x190], xmm0
mov qword [rsp + 0x1a0], rax
mov dword [rsp + 0x140], 0x68
mov dword [rsp + 0x190], 1
mov dword [rsp + 0x160], 1
lea rcx, [rsp + 0xb8]
call fcn.1400137d0
nop
mov rcx, qword [rsp + 0x1c8]
test rcx, rcx
je 0x14001e15f
mov dword [rsp + 0x40], 0x493e0
mov r9d, 4
lea r8, [rsp + 0x40]
lea edx, [r9 + 2]
call qword [sym.imp.WININET.dll_InternetSetOptionW]
test eax, eax
je 0x14001e184
mov edx, 0x104
lea rcx, [rsp + 0x5f0]
lea rax, [rsp + 0x5f0]
sub rdi, rax
nop dword [rax]
lea rax, [rdx + 0x7ffffefa]
test rax, rax
je 0x14001d3f2
movzx eax, word [rcx + rdi]
test ax, ax
je 0x14001d3f2
mov word [rcx], ax
add rcx, 2
sub rdx, 1
jne 0x14001d3d0
lea rax, [rcx - 2]
test rdx, rdx
cmovne rax, rcx
mov word [rax], bx
je 0x14001d414
lea rcx, [rsp + 0x5f0]
call qword [sym.imp.SHLWAPI.dll_PathRemoveFileSpecW]
test eax, eax
jne 0x14001d41c
mov word [rsp + 0x5f0], bx
call qword [sym.imp.USER32.dll_GetDesktopWindow]
mov rdi, rax
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_GetModuleHandleW]
lea rcx, [rsp + 0x5f0]
mov qword [rsp + 0x20], rcx
xor r9d, r9d
mov r8, rdi
mov rdx, rax
lea rcx, [rsp + 0x2d0]
call fcn.14001f3a0
mov rdx, 0xffffffffffffffff
nop word [rax + rax]
inc rdx
cmp word [rsi + rdx*2], 0
jne 0x14001d460
lea r9, [rsp + 0x140]
xor r8d, r8d
mov rcx, rsi
call qword [sym.imp.WININET.dll_InternetCrackUrlW]
test eax, eax
je 0x14001e1a9
mov ecx, dword [rsp + 0x160]
lea eax, [rcx + 1]
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x110], xmm0
mov r12, rbx
mov qword [rsp + 0x120], rbx
test eax, eax
je 0x14001d528
lea rdi, [rax + rax]
cmp rdi, 0x1000
jb 0x14001d4e1
lea rcx, [rdi + 0x27]
cmp rcx, rdi
jbe 0x14001e1ce
call fcn.14005541c
test rax, rax
je 0x14001e1d3
lea rsi, [rax + 0x27]
and rsi, 0xffffffffffffffe0
mov qword [rsi - 8], rax
jmp 0x14001d4f6
test rdi, rdi
je 0x14001d4f3
mov rcx, rdi
call fcn.14005541c
mov rsi, rax
jmp 0x14001d4f6
mov rsi, rbx
mov qword [rsp + 0x110], rsi
lea r12, [rdi + rsi]
mov qword [rsp + 0x120], r12
mov r8, rdi
xor edx, edx
mov rcx, rsi
call fcn.140058540
mov qword [rsp + 0x118], r12
mov ecx, dword [rsp + 0x160]
jmp 0x14001d530
mov rsi, qword [rsp + 0x110]
mov r8d, ecx
lea eax, [rcx + 1]
mov ecx, eax
dec rax
cmp rax, 0x7ffffffe
ja 0x14001e5c2
cmp r8, 0x7ffffffe
ja 0x14001e5c7
mov rdi, qword [rsp + 0x158]
mov rdx, rsi
sub r8, rcx
lea rax, [rcx + r8]
test rax, rax
je 0x14001d584
movzx eax, word [rdi]
test ax, ax
je 0x14001d584
add rdi, 2
mov word [rdx], ax
add rdx, 2
sub rcx, 1
jne 0x14001d562
lea rax, [rdx - 2]
test rcx, rcx
cmovne rax, rdx
mov word [rax], bx
je 0x14001e5ca
mov r8d, 0x1bb
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], ebx
mov dword [rsp + 0x28], 3
mov qword [rsp + 0x20], rbx
xor r9d, r9d
mov rdx, rsi
mov rcx, qword [rsp + 0x1c8]
call qword [sym.imp.WININET.dll_InternetConnectW]
mov qword [rsp + 0x1c0], rax
test rax, rax
je 0x14001e1d9
mov qword [rsp + 0x38], rbx
mov dword [rsp + 0x30], 0xc00000
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rbx
xor r9d, r9d
mov r8, qword [rsp + 0x188]
xor edx, edx
mov rcx, rax
call qword [sym.imp.WININET.dll_HttpOpenRequestW]
mov qword [rsp + 0x1b8], rax
test rax, rax
je 0x14001e1fe
xor edx, edx
lea rcx, [rsp + 0x2d0]
call fcn.14001f370
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x128], rax
lea rcx, [rsp + 0x2d0]
call fcn.14001f240
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x128]
lea r8, [0x14001c9b0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x1d0], rax
test rax, rax
je 0x14001e223
nop
lea rcx, [rsp + 0x2d0]
call fcn.14001f360
test al, al
jne 0x14001e28e
lea rcx, [rsp + 0x2d0]
call fcn.14001fe10
xor edx, edx
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x14001d680
lea rdx, [rsp + 0xf8]
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x14001e2cb
mov edi, dword [rsp + 0xf8]
test edi, edi
jne 0x14001e336
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x1d0], rbx
lea r9, [rsp + 0x1858]
xor r8d, r8d
lea edx, [r8 + 0x2b]
mov rcx, qword [rsp + 0x1b8]
call qword [sym.imp.WININET.dll_InternetQueryOptionW]
mov eax, dword [rsp + 0x1858]
cmp eax, 2
jbe 0x14001d7af
mov edx, eax
shr rdx, 1
lea r8, [rsp + 0x1850]
lea rcx, [rsp + 0x90]
call fcn.14001bbb0
nop
lea r9, [rsp + 0x1858]
mov r8, qword [rsp + 0x90]
mov edx, PathMakeUniqueName
mov rcx, qword [rsp + 0x1b8]
call qword [sym.imp.WININET.dll_InternetQueryOptionW]
nop
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x14001d7af
mov rax, qword [rsp + 0xa0]
sub rax, rcx
sar rax, 1
lea rdx, [rax + rax]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d7a9
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e35e
call fcn.140055458
nop
lea r9, [rsp + 0x1858]
xor r8d, r8d
lea edx, [r8 + 0x2c]
mov rcx, qword [rsp + 0x1b8]
call qword [sym.imp.WININET.dll_InternetQueryOptionW]
mov eax, dword [rsp + 0x1858]
cmp eax, 2
jbe 0x14001d865
mov edx, eax
shr rdx, 1
lea r8, [rsp + 0x1850]
lea rcx, [rsp + 0x90]
call fcn.14001bbb0
nop
lea r9, [rsp + 0x1858]
mov r8, qword [rsp + 0x90]
mov edx, PathMakeUniqueName
mov rcx, qword [rsp + 0x1b8]
call qword [sym.imp.WININET.dll_InternetQueryOptionW]
nop
mov rcx, qword [rsp + 0x90]
test rcx, rcx
je 0x14001d865
mov rax, qword [rsp + 0xa0]
sub rax, rcx
sar rax, 1
lea rdx, [rax + rax]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d85f
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e364
call fcn.140055458
nop
mov dword [rsp + 0xb0], 4
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0x40]
mov edx, 0x20000013
mov rcx, qword [rsp + 0x1b8]
call qword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x14001e36a
mov edi, dword [rsp + 0x40]
cmp edi, 0xc8
jne 0x14001e38f
mov qword [rsp + 0x20], rbx
lea r9, [rsp + 0xb0]
lea r8, [rsp + 0x40]
mov edx, 0x20000005
mov rcx, qword [rsp + 0x1b8]
call qword [sym.imp.WININET.dll_HttpQueryInfoW]
test eax, eax
je 0x14001e3b7
mov r8d, 0x36
mov rdx, qword [rsp + 0x1b8]
lea rcx, [rsp + 0x68]
call fcn.14001c780
lea rcx, [rsp + 0xd8]
cmp rcx, rax
je 0x14001d925
movups xmm0, xmmword [rax]
movups xmmword [rsp + 0xd8], xmm0
movups xmm1, xmmword [rax + 0x10]
movups xmmword [rsp + 0xe8], xmm1
mov qword [rax + 0x10], rbx
mov qword [rax + 0x18], 7
mov word [rax], bx
mov rdx, qword [rsp + 0x80]
cmp rdx, 8
jb 0x14001d96b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x68]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001d965
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e3dc
call fcn.140055458
nop
lea rcx, [rsp + 0x48]
call fcn.1400140f0
nop
or dword [rsp + 0x88], 1
cmp qword [rax + 0x10], 0
jbe 0x14001daf1
lea rax, [rsp + 0x90]
mov qword [rsp + 0x1850], rax
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa8], rbx
lea r14, [rsp + 0xd8]
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x100], rax
cmp qword [rsp + 0xf0], 8
cmovae r14, rax
mov r15, qword [rsp + 0xe8]
movabs r13, 0x7ffffffffffffffe
cmp r15, 8
jae 0x14001da01
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x90], xmm0
mov edi, 7
jmp 0x14001da3b
mov rdi, r15
or rdi, 7
cmp rdi, r13
cmova rdi, r13
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x90]
call fcn.14000aef0
mov qword [rsp + 0x90], rax
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140057e90
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xa8], rdi
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbx
mov r15, qword [rsp + 0xc8]
lea r14, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae r14, qword [rsp + 0xb8]
cmp r15, 8
jae 0x14001da95
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x68], xmm0
mov edi, 7
jmp 0x14001dac9
mov rdi, r15
or rdi, 7
cmp rdi, r13
cmova rdi, r13
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x68]
call fcn.14000aef0
mov qword [rsp + 0x68], rax
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140057e90
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x80], rdi
lea rdx, [rsp + 0x90]
lea rcx, [rsp + 0x68]
call fcn.140019ab0
test al, al
je 0x14001db01
mov dil, 1
jmp 0x14001db04
mov rax, qword [rsp + 0xd8]
mov qword [rsp + 0x100], rax
xor dil, dil
mov eax, dword [rsp + 0x88]
test al, 1
je 0x14001db52
mov rdx, qword [rsp + 0x60]
cmp rdx, 8
jb 0x14001db52
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x48]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001db4c
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e3e2
call fcn.140055458
nop
test dil, dil
je 0x14001dc76
test rsi, rsi
je 0x14001db98
sub r12, rsi
sar r12, 1
lea rdx, [r12 + r12]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14001db8f
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e3e8
mov rcx, rsi
call fcn.140055458
nop
mov rdx, qword [rsp + 0xd0]
cmp rdx, 8
jb 0x14001dbe1
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dbdb
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e3ee
call fcn.140055458
nop
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], 7
mov word [rsp + 0xb8], bx
mov rax, qword [rsp + 0xf0]
cmp rax, 8
jb 0x14001dc46
lea rdx, [rax*2 + 2]
mov rcx, qword [rsp + 0xd8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001dc40
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e3f4
call fcn.140055458
nop
mov qword [rsp + 0xe8], rbx
mov qword [rsp + 0xf0], 7
mov word [rsp + 0xd8], bx
lea rcx, [rsp + 0x1b0]
call fcn.14001bf30
mov al, 1
jmp 0x14001e14c
mov r15, qword [rsp + 0xc8]
mov r13, qword [0x1400ee460]
movabs rcx, 0x7ffffffffffffffe
mov rax, rcx
sub rax, r15
cmp rax, r13
jb 0x14001e3fa
lea rax, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae rax, qword [rsp + 0xb8]
mov qword [rsp + 0x1850], rax
lea rax, [0x1400ee450]
cmp qword [0x1400ee468], 8
cmovae rax, qword [0x1400ee450]
mov qword [rsp + 0x88], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbx
lea rax, [r15 + r13]
mov edi, 7
lea r14, [rsp + 0x68]
cmp rax, rdi
jbe 0x14001dd3b
mov rdi, rax
or rdi, 7
cmp rdi, rcx
jbe 0x14001dd15
mov rdi, rcx
jmp 0x14001dd21
mov eax, 0xa
cmp rdi, rax
cmovb rdi, rax
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x68]
call fcn.14000aef0
mov r14, rax
mov qword [rsp + 0x68], rax
lea rax, [r15 + r13]
mov qword [rsp + 0x78], rax
mov qword [rsp + 0x80], rdi
lea rdi, [r15 + r15]
mov r8, rdi
mov rdx, qword [rsp + 0x1850]
mov rcx, r14
call fcn.140057e90
lea rcx, [r14 + rdi]
lea r8, [r13*2]
mov rdx, qword [rsp + 0x88]
call fcn.140057e90
lea rax, [r15 + r13]
mov word [r14 + rax*2], bx
lea rcx, [rsp + 0x68]
call fcn.1400241b0
lea rdx, [0x1400c4880]
mov rdi, qword [rsp + 0x1848]
mov rcx, rdi
call fcn.14008379c
mov qword [rsp + 0x1b0], rax
test rax, rax
je 0x14001e3ff
nop dword [rax]
nop word [rax + rax]
mov rax, qword [rsp + 0x1b8]
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x800]
mov qword [rsp + 0x98], rax
lea rax, [rsp + 0x1850]
mov qword [rsp + 0xa0], rax
mov qword [rsp + 0x28], rbx
mov dword [rsp + 0x20], ebx
lea r9, [rsp + 0x90]
lea r8, [0x14001ca20]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov qword [rsp + 0x1d0], rax
test rax, rax
je 0x14001e462
lea rcx, [rsp + 0x2d0]
call fcn.14001f360
test al, al
jne 0x14001e4cd
lea rcx, [rsp + 0x2d0]
call fcn.14001fe10
xor edx, edx
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_WaitForSingleObject]
test eax, eax
jne 0x14001de23
lea rdx, [rsp + 0x88]
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_GetExitCodeThread]
test eax, eax
je 0x14001e50a
mov edi, dword [rsp + 0x88]
test edi, edi
jne 0x14001e52f
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_CloseHandle]
mov qword [rsp + 0x1d0], rbx
mov eax, dword [rsp + 0x1850]
test eax, eax
jne 0x14001e04b
lea rax, [rsp + 0x68]
mov qword [rsp + 0x1850], rax
mov qword [rsp + 0x68], rbx
mov qword [rsp + 0x78], rbx
mov qword [rsp + 0x80], rbx
lea r14, [rsp + 0xd8]
cmp qword [rsp + 0xf0], 8
cmovae r14, qword [rsp + 0xd8]
mov r15, qword [rsp + 0xe8]
movabs r13, 0x7ffffffffffffffe
cmp r15, 8
jae 0x14001df0c
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x68], xmm0
mov edi, 7
jmp 0x14001df40
mov rdi, r15
or rdi, 7
cmp rdi, r13
cmova rdi, r13
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x68]
call fcn.14000aef0
mov qword [rsp + 0x68], rax
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140057e90
mov qword [rsp + 0x78], r15
mov qword [rsp + 0x80], rdi
mov qword [rsp + 0x90], rbx
mov qword [rsp + 0xa0], rbx
mov qword [rsp + 0xa8], rbx
mov r15, qword [rsp + 0xc8]
lea r14, [rsp + 0xb8]
cmp qword [rsp + 0xd0], 8
cmovae r14, qword [rsp + 0xb8]
cmp r15, 8
jae 0x14001dfa0
movups xmm0, xmmword [r14]
movups xmmword [rsp + 0x90], xmm0
mov edi, 7
jmp 0x14001dfda
mov rdi, r15
or rdi, 7
cmp rdi, r13
cmova rdi, r13
lea rdx, [rdi + 1]
lea rcx, [rsp + 0x90]
call fcn.14000aef0
mov qword [rsp + 0x90], rax
lea r8, [r15*2 + 2]
mov rdx, r14
mov rcx, rax
call fcn.140057e90
mov qword [rsp + 0xa0], r15
mov qword [rsp + 0xa8], rdi
lea rdx, [rsp + 0x68]
lea rcx, [rsp + 0x90]
call fcn.14001a980
mov byte [rsp + 0x1d8], 1
test rsi, rsi
je 0x14001e041
sub r12, rsi
sar r12, 1
lea rdx, [r12 + r12]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14001e038
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e557
mov rcx, rsi
call fcn.140055458
nop
mov rsi, qword [rsp + 0x100]
jmp 0x14001e08a
mov r8, rax
mov r9, qword [rsp + 0x1b0]
mov edx, 1
lea rcx, [rsp + 0x800]
call fcn.1400829ac
mov rdi, rax
mov eax, dword [rsp + 0x1850]
cmp rdi, rax
jne 0x14001e55d
jmp 0x14001ddc0
movzx edi, byte [rsp + 0x1d8]
mov rdx, qword [rsp + 0xd0]
cmp rdx, 8
jb 0x14001e0db
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xb8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001e0d5
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e5ef
call fcn.140055458
nop
mov qword [rsp + 0xc8], rbx
mov qword [rsp + 0xd0], 7
mov word [rsp + 0xb8], bx
mov rax, qword [rsp + 0xf0]
cmp rax, 8
jb 0x14001e13b
lea rdx, [rax*2 + 2]
mov rax, rsi
cmp rdx, 0x1000
jb 0x14001e132
add rdx, 0x27
mov rsi, qword [rsi - 8]
sub rax, rsi
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001e5f5
mov rcx, rsi
call fcn.140055458
nop
lea rcx, [rsp + 0x1b0]
call fcn.14001bf30
movzx eax, dil
add rsp, 0x1800
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbx
ret
lea rdx, str.InternetOpen_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
lea rdx, str.InternetSetOption_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
lea rdx, str.InternetCrackUrl_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
call fcn.14000ab60
call fcn.140065fb8
nop
lea rdx, str.InternetConnect_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
lea rdx, str.HttpOpenRequest_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
lea edx, [rax + 1]
lea rcx, [rsp + 0x500]
call fcn.14001ba80
nop
lea rdx, str.Internal_Error__CreateThread_failed:
lea rcx, [rsp + 0x500]
call fcn.140004120
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rdi
call fcn.14001c0b0
lea rdx, str._._Please_rerun_the_installer.
mov rcx, rax
call fcn.140004120
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x500]
call fcn.14001eb70
nop
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
xor edx, edx
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov byte [rsp + 0x1d8], 0
lea rdx, str.User_cancelled
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
lea edx, [rax + 1]
lea rcx, [rsp + 0x500]
call fcn.14001ba80
nop
lea rdx, str.Internal_Error__GetExitCodeThread_failed:
lea rcx, [rsp + 0x500]
call fcn.140004120
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rdi
call fcn.14001c0b0
lea rdx, str._._Please_rerun_the_installer.
mov rcx, rax
call fcn.140004120
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x500]
call fcn.14001eb70
nop
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
lea rdx, str.HTTP_error_code
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
mov r8d, edi
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed80
nop
call fcn.140065fb8
nop
call fcn.140065fb8
nop
lea rdx, str.HttpQueryInfo_failed_to_retrieve_status_code
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
lea rdx, str.HTTP_error_code
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
mov r8d, edi
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed80
nop
lea rdx, str.HttpQueryInfo_failed_to_retrieve_content_length
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
call fcn.140065fb8
nop
call fcn.140065fb8
nop
call fcn.140065fb8
nop
call fcn.140065fb8
nop
call fcn.140065fb8
nop
call fcn.14000ae50
lea edx, [rax + 1]
lea rcx, [rsp + 0x500]
call fcn.14001ba80
nop
lea rdx, str.Could_not_open
lea rcx, [rsp + 0x500]
call fcn.140004120
mov rdx, rdi
mov rcx, rax
call fcn.14001c280
lea rdx, str.._Please_rerun_the_installer.
mov rcx, rax
call fcn.140004120
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x500]
call fcn.14001eb70
nop
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
lea edx, [rax + 1]
lea rcx, [rsp + 0x500]
call fcn.14001ba80
nop
lea rdx, str.Internal_error._CreateThread_failed:
lea rcx, [rsp + 0x500]
call fcn.140004120
mov rdi, rax
call qword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, eax
mov rcx, rdi
call fcn.14001c0b0
lea rdx, str.._Please_rerun_the_installer.
mov rcx, rax
call fcn.140004120
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x500]
call fcn.14001eb70
nop
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
xor edx, edx
mov rcx, qword [rsp + 0x1d0]
call qword [sym.imp.KERNEL32.dll_TerminateThread]
mov byte [rsp + 0x1d8], 0
lea rdx, str.User_cancelled
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
lea rdx, str.GetExitCodeThread_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed50
nop
lea rdx, str.InternetReadFile_failed
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
mov r8d, edi
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ed80
nop
call fcn.140065fb8
nop
mov edx, 1
lea rcx, [rsp + 0x500]
call fcn.14001ba80
nop
lea rdx, str.Internal_error._fwrite_failed_
lea rcx, [rsp + 0x500]
call fcn.140004120
mov rdx, rdi
mov rcx, rax
call fcn.14001c450
lea rdx, str._._Please_rerun_the_installer.
mov rcx, rax
call fcn.140004120
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x500]
call fcn.14001eb70
nop
mov rdx, rax
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
test rcx, rcx
je 0x14001e5ca
mov word [rsi], bx
lea rdx, str.Failed_to_get_host_name
lea rcx, [rsp + 0x48]
call fcn.140005db0
nop
lea rdx, [rsp + 0x48]
lea rcx, [rsp + 0x1b0]
call fcn.14001ee10
nop
call fcn.140065fb8
nop
call fcn.140065fb8
int3