Function at 0x14001b130
Capabilities:
Create process on windows
Reference http user-agent string

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x510
movaps xmmword [rsp + 0x500], xmm6
mov rax, qword [0x14007f080]
xor rax, rsp
mov qword [rsp + 0x4f0], rax
mov rbx, rcx
mov qword [rsp + 0x40], rcx
mov qword [rsp + 0xc0], rcx
xor r13d, r13d
mov eax, r13d
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x38], eax
mov rcx, qword [0x140082d70]
test rcx, rcx
jne 0x14001b1a7
nop
mov ecx, 0x1f4
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rcx, qword [0x140082d70]
test rcx, rcx
je 0x14001b190
mov edx, 0x3ed
call qword [sym.imp.USER32.dll_GetDlgItem]
mov qword [rsp + 0x350], rax
mov r9d, 0x640000
xor r8d, r8d
mov edx, 0x401
mov rcx, rax
call qword [sym.imp.USER32.dll_SendMessageA]
xor r9d, r9d
mov edx, 0x404
lea r8d, [r9 + 1]
mov rcx, qword [rsp + 0x350]
call qword [sym.imp.USER32.dll_SendMessageA]
xorps xmm0, xmm0
movups xmmword [rsp + 0x378], xmm0
mov qword [rsp + 0x388], r13
mov qword [rsp + 0x390], r13
xor r8d, r8d
lea rdx, [0x14006efa0]
lea rcx, [rsp + 0x378]
call fcn.140007400
nop
lea rdx, str.assets
mov rcx, qword [rbx]
call fcn.1400262e0
mov r9, rax
mov qword [rsp + 0x358], rax
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x360], xmm0
xorps xmm1, xmm1
movdqu xmmword [rsp + 0x368], xmm1
movabs r14, 0x8000000000000000
mov rdi, r14
mov qword [rsp + 0x370], r14
movzx ecx, byte [rax]
cmp ecx, 9
ja case.default.0x14001b282
movsxd rax, ecx
lea r8, [0x140000000]
mov eax, dword [r8 + rax*4 + 0x1bf1c]
add rax, r8
jmp rax
lea r8, [0x140000000]
cmp ecx, 9
ja case.0x14001b29b.3
mov ecx, dword [r8 + rcx*4 + 0x1bf44]
add rcx, r8
jmp rcx
mov rax, qword [r9 + 8]
mov rbx, qword [rax]
mov rbx, qword [rbx]
mov qword [rsp + 0x360], rbx
jmp 0x14001b2ec
mov rsi, qword [r9 + 8]
mov rsi, qword [rsi]
mov qword [rsp + 0x368], rsi
mov rbx, qword [rsp + 0x360]
jmp 0x14001b2f4
mov edi, 1
mov qword [rsp + 0x370], rdi
jmp 0x14001b2e4
mov rdi, r13
mov qword [rsp + 0x370], r13
mov rbx, qword [rsp + 0x360]
mov rsi, qword [rsp + 0x368]
movdqu xmmword [rsp + 0x3a0], xmm0
movdqu xmmword [rsp + 0x3a8], xmm1
movzx edx, byte [r9]
cmp edx, 9
ja case.0x14001b32f.0
movsxd rax, edx
mov ecx, dword [r8 + rax*4 + 0x1bf6c]
add rcx, r8
jmp rcx
cmp edx, 9
ja case.0x14001b32f.0
mov ecx, dword [r8 + rdx*4 + 0x1bf94]
add rcx, r8
jmp rcx
mov r15, qword [r9 + 8]
mov r15, qword [r15]
jmp 0x14001b35b
mov r12, qword [r9 + 8]
mov r12, qword [r12 + 8]
mov r15, qword [rsp + 0x3a0]
jmp 0x14001b363
mov r14d, 1
mov r15, qword [rsp + 0x3a0]
mov r12, qword [rsp + 0x3a8]
movzx eax, byte [r9]
cmp eax, 9
ja case.0x14001b377.0
mov ecx, dword [r8 + rax*4 + 0x1bfbc]
add rcx, r8
jmp rcx
cmp rbx, r15
jmp 0x14001b386
cmp rsi, r12
jmp 0x14001b386
cmp rdi, r14
setne al
test al, al
je 0x14001b72d
lea rcx, [rsp + 0x358]
call fcn.14001e300
mov qword [rsp + 0x50], rax
lea rdx, str.name
mov rcx, rax
call fcn.1400262e0
mov rdx, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x3b8], xmm0
mov rcx, r13
mov qword [rsp + 0x3c8], rcx
mov r9d, 0xf
mov qword [rsp + 0x3d0], r9
mov byte [rsp + 0x3b8], cl
mov eax, dword [rsp + 0x34]
or eax, 2
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x38], eax
cmp byte [rdx], 3
jne 0x14001bdbf
mov rdx, qword [rdx + 8]
lea r8, [rsp + 0x3b8]
cmp r8, rdx
je 0x14001b438
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14001b417
mov rdx, qword [rdx]
lea rcx, [rsp + 0x3b8]
call fcn.140023ba0
mov r9, qword [rsp + 0x3d0]
mov rcx, qword [rsp + 0x3c8]
mov eax, dword [rsp + 0x34]
and eax, 0xfffffffd
or eax, 1
mov dword [rsp + 0x34], eax
lea rdx, [rcx - 4]
xorps xmm0, xmm0
movups xmmword [rsp + 0xc8], xmm0
mov qword [rsp + 0xd8], r13
mov qword [rsp + 0xe0], r13
cmp rcx, rdx
jb 0x14001bdb9
sub rcx, rdx
mov r8, 0xffffffffffffffff
cmp rcx, r8
cmovb r8, rcx
lea rax, [rsp + 0x3b8]
cmp r9, 0x10
cmovae rax, qword [rsp + 0x3b8]
add rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.140007400
or dword [rsp + 0x34], 4
lea rdx, [rsp + 0xc8]
mov r9, qword [rsp + 0xe0]
cmp r9, 0x10
setae r10b
mov r8, qword [rsp + 0xc8]
cmovae rdx, r8
cmp qword [rsp + 0xd8], 4
jne 0x14001b507
mov rcx, r13
lea r11, str..zip
nop
movzx eax, byte [rdx + rcx]
inc rcx
cmp al, byte [r11 + rcx - 1]
jne 0x14001b4f9
cmp rcx, 4
jne 0x14001b4e0
mov eax, r13d
jmp 0x14001b4fe
sbb eax, eax
or eax, 1
test eax, eax
mov byte [rsp + 0x30], 1
je 0x14001b50c
mov byte [rsp + 0x30], 0
test r10b, r10b
je 0x14001b542
lea rdx, [r9 + 1]
mov rax, r8
cmp rdx, 0x1000
jb 0x14001b53a
add rdx, 0x27
mov r8, qword [r8 - 8]
sub rax, r8
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bd55
mov rcx, r8
call fcn.1400380e4
cmp byte [rsp + 0x30], 0
je 0x14001b63d
lea rdx, str.browser_download_url
mov rcx, qword [rsp + 0x50]
call fcn.1400262e0
mov rcx, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0xe8], xmm0
mov qword [rsp + 0xf8], r13
mov qword [rsp + 0x100], 0xf
mov byte [rsp + 0xe8], 0
mov eax, dword [rsp + 0x34]
or eax, 0x10
mov dword [rsp + 0x34], eax
mov dword [rsp + 0x38], eax
cmp byte [rcx], 3
jne 0x14001bd5b
mov rdx, qword [rcx + 8]
lea rcx, [rsp + 0xe8]
cmp rcx, rdx
je 0x14001b5d0
mov r8, qword [rdx + 0x10]
cmp qword [rdx + 0x18], 0x10
jb 0x14001b5bf
mov rdx, qword [rdx]
lea rcx, [rsp + 0xe8]
call fcn.140023ba0
mov eax, dword [rsp + 0x34]
and eax, 0xffffffef
or eax, 8
mov dword [rsp + 0x34], eax
mov rdx, qword [rsp + 0x390]
cmp rdx, 0x10
jb 0x14001b61d
inc rdx
mov rcx, qword [rsp + 0x378]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b618
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bd55
call fcn.1400380e4
movups xmm0, xmmword [rsp + 0xe8]
movups xmmword [rsp + 0x378], xmm0
movups xmm1, xmmword [rsp + 0xf8]
movups xmmword [rsp + 0x388], xmm1
mov rdx, qword [rsp + 0x3d0]
cmp rdx, 0x10
jb 0x14001b680
inc rdx
mov rcx, qword [rsp + 0x3b8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b67b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bdb3
call fcn.1400380e4
mov r9, qword [rsp + 0x358]
movzx eax, byte [r9]
lea r8, [0x140000000]
cmp eax, 9
ja case.0x14001b6a7.0
mov ecx, dword [r8 + rax*4 + 0x1bfe4]
add rcx, r8
jmp rcx
mov rax, rbx
mov rbx, qword [rbx + 0x10]
cmp byte [rbx + 0x19], 0
je 0x14001b6e0
mov rbx, qword [rax + 8]
cmp byte [rbx + 0x19], 0
jne 0x14001b6ff
cmp rax, qword [rbx + 0x10]
jne 0x14001b6ff
mov rax, rbx
mov rbx, qword [rbx + 8]
cmp byte [rbx + 0x19], 0
je 0x14001b6c0
mov qword [rsp + 0x360], rbx
jmp 0x14001b363
mov rcx, qword [rbx]
cmp byte [rcx + 0x19], 0
jne 0x14001b6ff
nop dword [rax]
mov rbx, rcx
mov rax, qword [rcx]
mov rcx, rax
cmp byte [rax + 0x19], 0
je 0x14001b6f0
mov qword [rsp + 0x360], rbx
jmp 0x14001b363
add rsi, 0x10
mov qword [rsp + 0x368], rsi
jmp 0x14001b363
inc rdi
mov qword [rsp + 0x370], rdi
jmp 0x14001b363
lea rcx, [rsp + 0x378]
cmp qword [rsp + 0x390], 0x10
cmovae rcx, qword [rsp + 0x378]
mov r8, qword [rsp + 0x388]
test r8, r8
jne 0x14001b768
lea rdx, [0x14006efa0]
call fcn.14003a730
test eax, eax
je 0x14001be17
mov eax, r13d
mov dword [rsp + 0x38], eax
cmp eax, 4
jge 0x14001bcca
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x358], xmm0
mov qword [rsp + 0x368], rax
lea rax, vtable.std::_Func_impl_no_alloc_class__public:_void___cdecl__int___cdecl_wWinMain_struct_HINSTANCE______ptr64__struct_HINSTANCE______ptr64__wchar_t____ptr64__int_::_27::_lambda_1_::operator___void_const___ptr64::_16::_lambda_1___void__float_.0
mov qword [rsp + 0x110], rax
lea rax, [rsp + 0x350]
mov qword [rsp + 0x118], rax
lea rax, [rsp + 0x110]
mov qword [rsp + 0x148], rax
movups xmmword [rsp + 0x398], xmm0
mov qword [rsp + 0x3a8], r13
mov qword [rsp + 0x3b0], r13
mov r8d, 0x4a
lea rdx, str.Mozilla_5.0__Windows_NT_6.1__WOW64__AppleWebKit_537.36__KHTML__like_Gecko_
lea rcx, [rsp + 0x398]
call fcn.1400072d0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0xa0], xmm0
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], r13
xor r8d, r8d
lea rdx, [0x14006effc]
lea rcx, [rsp + 0xa0]
call fcn.1400072d0
nop
xorps xmm0, xmm0
movups xmmword [rsp + 0x80], xmm0
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x98], r13
xor r8d, r8d
lea rdx, [0x14006effc]
lea rcx, [rsp + 0x80]
call fcn.1400072d0
nop
lea r8, [rsp + 0x378]
cmp qword [rsp + 0x390], 0x10
setae r9b
cmovae r8, qword [rsp + 0x378]
add r8, qword [rsp + 0x388]
lea rdx, [rsp + 0x378]
test r9b, r9b
cmovne rdx, qword [rsp + 0x378]
lea rcx, [rsp + 0x60]
call fcn.1400268a0
nop
mov rdx, rax
lea rcx, [rsp + 0x270]
call fcn.140002e30
nop
lea rcx, [rsp + 0x110]
mov qword [rsp + 0x28], rcx
lea rcx, [rsp + 0x398]
mov qword [rsp + 0x20], rcx
lea r9, [rsp + 0xa0]
lea r8, [rsp + 0x80]
mov rdx, rax
lea rcx, [rsp + 0x358]
call fcn.140004580
nop
lea rcx, [rsp + 0x270]
call fcn.140003550
nop
mov rdx, qword [rsp + 0x78]
cmp rdx, 8
jb 0x14001b936
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b931
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001be9b
call fcn.1400380e4
mov qword [rsp + 0x70], r13
mov qword [rsp + 0x78], 7
mov word [rsp + 0x60], r13w
mov rdx, qword [rsp + 0x98]
cmp rdx, 8
jb 0x14001b992
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x80]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b98d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bea1
call fcn.1400380e4
mov qword [rsp + 0x90], r13
mov qword [rsp + 0x98], 7
mov word [rsp + 0x80], r13w
mov rdx, qword [rsp + 0xb8]
cmp rdx, 8
jb 0x14001b9f7
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xa0]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001b9f2
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bea7
call fcn.1400380e4
mov qword [rsp + 0xb0], r13
mov qword [rsp + 0xb8], 7
mov word [rsp + 0xa0], r13w
mov rdx, qword [rsp + 0x3b0]
cmp rdx, 8
jb 0x14001ba5c
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x398]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001ba57
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bead
call fcn.1400380e4
mov qword [rsp + 0x3a8], r13
mov qword [rsp + 0x3b0], 7
mov word [rsp + 0x398], r13w
mov rcx, qword [rsp + 0x148]
test rcx, rcx
je 0x14001baa2
mov rax, qword [rcx]
lea rdx, [rsp + 0x110]
cmp rcx, rdx
setne dl
call qword [rax + 0x20]
mov qword [rsp + 0x148], r13
xor edx, edx
mov r8d, 0x108
lea rcx, [rsp + 0x3e0]
call fcn.14003a830
mov rax, qword [rsp + 0x40]
mov rdx, qword [rax + 8]
cmp qword [rdx + 0x18], 0x10
jb 0x14001baca
mov rdx, qword [rdx]
mov r8d, 0x22
lea rcx, [rsp + 0x3e0]
call fcn.14001ebe0
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
lea r15, vtable.std::basic_ofstream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x3e0], r15
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x3dc], edx
mov qword [rsp + 0x50], r13
lea rax, [rsp + 0x3e0]
mov qword [rsp + 0x58], rax
movaps xmm6, xmmword [rsp + 0x50]
mov r14, qword [rsp + 0x360]
mov rbx, qword [rsp + 0x358]
movdqa xmm0, xmm6
psrldq xmm0, 8
movq rsi, xmm0
movq rdi, xmm6
nop dword [rax + rax]
cmp rbx, r14
je 0x14001bb75
movzx edx, byte [rbx]
mov rcx, rsi
call fcn.140030670
test rdi, rdi
je 0x14001bb70
mov rdx, rdi
mov rcx, rsi
call fcn.140025a80
inc rbx
jmp 0x14001bb50
movdqa xmmword [rsp + 0x50], xmm6
lea rcx, [rsp + 0x3e8]
call fcn.1400237d0
test rax, rax
jne 0x14001bbcf
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
mov eax, 6
mov edx, 2
cmp qword [rsp + rcx + 0x428], 0
cmovne eax, edx
or eax, dword [rsp + rcx + 0x3f0]
and eax, 0x17
mov dword [rsp + rcx + 0x3f0], eax
mov edx, dword [rsp + rcx + 0x3f4]
and edx, eax
jne 0x14001beb3
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
mov qword [rsp + rcx + 0x3e0], r15
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0xa8]
mov dword [rsp + rcx + 0x3dc], edx
lea rcx, [rsp + 0x3e8]
call fcn.14001f9d0
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
lea rax, vtable.std::basic_ostream_char__struct_std::char_traits_char__.0
mov qword [rsp + rcx + 0x3e0], rax
mov rax, qword [rsp + 0x3e0]
movsxd rcx, dword [rax + 4]
lea edx, [rcx - 0x10]
mov dword [rsp + rcx + 0x3dc], edx
lea rax, vtable.std::ios_base.0
mov qword [rsp + 0x488], rax
lea rcx, [rsp + 0x488]
call fcn.1400368f0
nop
mov rcx, qword [rsp + 0x358]
test rcx, rcx
je 0x14001bcad
mov rdx, qword [rsp + 0x368]
sub rdx, rcx
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001bc94
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf10
call fcn.1400380e4
xorps xmm0, xmm0
movdqu xmmword [rsp + 0x358], xmm0
mov qword [rsp + 0x368], r13
jmp 0x14001bcca
xor edx, edx
mov rcx, qword [0x140082d70]
call qword [sym.imp.USER32.dll_EndDialog]
mov qword [0x140082d70], r13
mov rdx, qword [rsp + 0x390]
cmp rdx, 0x10
jb 0x14001bd23
inc rdx
mov rcx, qword [rsp + 0x378]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001bd1e
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001bf16
call fcn.1400380e4
mov rcx, qword [rsp + 0x4f0]
xor rcx, rsp
call fcn.140038080
lea r11, [rsp + 0x510]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
movaps xmm6, xmmword [r11 - 0x10]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
call fcn.14003fcd4
nop
call fcn.140023390
mov rdx, rax
lea rcx, [rsp + 0x230]
call fcn.1400064b0
nop
mov r8, rax
lea rdx, str.type_must_be_string__but_is
lea rcx, [rsp + 0x250]
call fcn.140025d40
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x188]
call fcn.140026cd0
lea rdx, [0x14007d9d8]
lea rcx, [rsp + 0x188]
call fcn.140039fb4
nop
call fcn.14003fcd4
nop
call fcn.140025810
nop
mov rcx, rdx
call fcn.140023390
mov rdx, rax
lea rcx, [rsp + 0x60]
call fcn.1400064b0
nop
mov r8, rax
lea rdx, str.type_must_be_string__but_is
lea rcx, [rsp + 0x398]
call fcn.140025d40
nop
mov r8, rax
mov edx, 0x12e
lea rcx, [rsp + 0x1c0]
call fcn.140026cd0
lea rdx, [0x14007d9d8]
lea rcx, [rsp + 0x1c0]
call fcn.140039fb4
nop
xor r9d, r9d
lea r8, str.Error_downloading
lea rdx, str.Error_downloading_asset._Make_sure_this_release_has_a_zipfile
xor ecx, ecx
call qword [sym.imp.USER32.dll_MessageBoxA]
lea rdx, str.html_url
mov rax, qword [rsp + 0x40]
mov rcx, qword [rax]
call fcn.1400262e0
lea rdx, [rsp + 0x60]
mov rcx, rax
call fcn.140026420
mov rcx, rax
call fcn.140006440
mov r8, rax
mov dword [rsp + 0x28], 0xa
mov qword [rsp + 0x20], r13
lea r9, [0x14006efa0]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.SHELL32.dll_ShellExecuteA]
lea rcx, [rsp + 0x60]
call fcn.140006450
xor edx, edx
mov rcx, qword [0x140082d70]
call qword [sym.imp.USER32.dll_EndDialog]
xor ecx, ecx
call fcn.140040054
nop
call fcn.14003fcd4
nop
call fcn.14003fcd4
nop
call fcn.14003fcd4
nop
call fcn.14003fcd4
nop
test dl, 4
je 0x14001bec1
lea rbx, str.ios_base::badbit_set
jmp 0x14001bed6
test dl, 2
lea rbx, str.ios_base::failbit_set
lea rax, str.ios_base::eofbit_set
cmove rbx, rax
mov edx, 1
lea rcx, [rsp + 0x150]
call fcn.140001550
mov r8, rax
mov rdx, rbx
lea rcx, [rsp + 0x160]
call fcn.140002280
lea rdx, [0x14007d550]
lea rcx, [rsp + 0x160]
call fcn.140039fb4
nop
call fcn.14003fcd4
nop
call fcn.14003fcd4
int3