Function at 0x14029b970
Capabilities:
Access firewall rule properties via inetfwrule

Disassembly:
push r15
push r14
push r12
push rsi
push rdi
push rbp
push rbx
sub rsp, 0xb0
mov rbx, r9
mov rsi, r8
mov r14, rdx
mov r15, rcx
mov rax, qword [0x1403a0028]
xor rax, rsp
mov qword [rsp + 0xa8], rax
lea r12, [rsp + 0xa0]
mov qword [r12], 0
mov qword [rsp + 0x20], r12
lea rcx, [0x1402fe1b8]
lea r9, [0x14037ddc8]
xor edx, edx
mov r8d, 0x17
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x14029bc5b
movzx ebp, word [rsp + 0x110]
mov rdi, qword [rsp + 0xa0]
movzx eax, byte [rsi + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rsi]
cmovns rax, rsi
lea rdx, [rsp + 0x90]
mov qword [rdx], rax
cmovs rcx, qword [rsi + 8]
mov qword [rdx + 8], rcx
lea rsi, [rsp + 0x40]
mov rcx, rsi
call fcn.1400f5720
mov rdx, qword [rsi]
mov rax, qword [rdi]
mov rax, qword [rax + 0x40]
mov rcx, rdi
call qword [0x1403de008]
mov rcx, rsi
call fcn.1400f5770
mov rsi, qword [rsp + 0xa0]
movzx eax, byte [rbx + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rbx]
cmovns rax, rbx
lea rdx, [rsp + 0x80]
mov qword [rdx], rax
cmovs rcx, qword [rbx + 8]
mov qword [rdx + 8], rcx
lea rdi, [rsp + 0x40]
mov rcx, rdi
call fcn.1400f5720
mov rdx, qword [rdi]
mov rax, qword [rsi]
mov rax, qword [rax + 0x50]
mov rcx, rsi
call qword [0x1403de008]
mov rcx, rdi
call fcn.1400f5770
lea rax, [r15 + 0x18]
movzx edx, byte [r15 + 0x2f]
mov ecx, edx
and ecx, 0x7f
test dl, dl
cmovs rax, qword [r15 + 0x18]
mov rsi, qword [rsp + 0xa0]
lea rdx, [rsp + 0x70]
mov qword [rdx], rax
cmovs rcx, qword [r15 + 0x20]
mov qword [rdx + 8], rcx
lea rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.1400f5720
mov rdx, qword [rbx]
mov rax, qword [rsi]
mov rax, qword [rax + 0x60]
mov rcx, rsi
call qword [0x1403de008]
mov rcx, rbx
call fcn.1400f5770
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x80]
mov edx, 0x11
call qword [0x1403de008]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0xe0]
mov edx, 1
call qword [0x1403de008]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x110]
mov dx, 0xffff
call qword [0x1403de008]
mov rsi, qword [rsp + 0xa0]
movzx r8d, bp
lea rdx, [0x14037ddd8]
mov rcx, rbx
call fcn.14007dc90
movzx eax, byte [rbx + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rbx]
cmovns rax, rbx
lea rdx, [rsp + 0x58]
mov qword [rdx], rax
cmovs rcx, qword [rbx + 8]
mov qword [rdx + 8], rcx
lea rdi, [rsp + 0x68]
mov rcx, rdi
call fcn.1400f5720
mov rdx, qword [rdi]
mov rax, qword [rsi]
mov rax, qword [rax + 0x90]
mov rcx, rsi
call qword [0x1403de008]
mov rcx, rdi
call fcn.1400f5770
cmp byte [rbx + 0x17], 0
jns 0x14029bbb1
mov rcx, qword [rsp + 0x40]
call fcn.1401b9ce8
mov rsi, qword [rsp + 0xa0]
movzx eax, byte [r15 + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [r15]
cmovns rax, r15
lea rdx, [rsp + 0x30]
mov qword [rdx], rax
cmovs rcx, qword [r15 + 8]
mov qword [rdx + 8], rcx
lea rdi, [rsp + 0x40]
mov rcx, rdi
call fcn.1400f5720
mov rdx, qword [rdi]
mov rax, qword [rsi]
mov rax, qword [rax + 0x120]
mov rcx, rsi
call qword [0x1403de008]
mov rcx, rdi
call fcn.1400f5770
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x130]
mov edx, 0x7fffffff
call qword [0x1403de008]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x150]
mov edx, 1
call qword [0x1403de008]
mov qword [r14], 0
cmp r12, r14
je 0x14029bc62
mov rax, qword [rsp + 0xa0]
mov qword [r14], rax
jmp 0x14029bc88
mov qword [r14], 0
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x14029bc88
mov qword [rsp + 0xa0], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [0x1403de008]
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.1401bb0d0
mov rax, r14
add rsp, 0xb0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret