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

Disassembly:
push rbp
push rbx
push rsi
push rdi
push r14
mov rbp, rsp
sub rsp, 0x60
mov qword [rbp - 0x10], 0xfffffffffffffffe
mov rsi, rdx
mov rbx, rcx
cmp dword [rdx + 0x80], 0
je 0x14000fb40
xor r14d, r14d
mov qword [rbp + 0x40], r14
mov qword [rbp + 0x48], r14
lea rax, [rbp + 0x40]
mov qword [rsp + 0x20], rax
lea r9, [0x14006c9a0]
xor edx, edx
lea r8d, [r14 + 1]
lea rcx, [0x14006c9e0]
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x14000fb40
mov rcx, qword [rbx + 0x10]
mov rax, qword [rcx]
lea rdx, [rbp + 0x48]
call qword [rax + 0x90]
test eax, eax
js 0x14000fb36
cmp qword [rbp + 0x48], r14
je 0x14000fb36
mov rdx, rsi
cmp qword [rsi + 0x18], 8
jb 0x14000f8af
mov rdx, qword [rsi]
lea rcx, [rbp - 0x30]
call fcn.14000dde0
nop
mov rdx, qword [rax]
test rdx, rdx
je 0x14000f8c6
mov rdx, qword [rdx]
jmp 0x14000f8c9
mov rdx, r14
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x60]
nop
mov edi, 0xffffffff
mov rbx, qword [rbp - 0x30]
test rbx, rbx
je 0x14000f923
mov eax, edi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14000f923
test rbx, rbx
je 0x14000f923
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000f904
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14000f916
call fcn.140013ef4
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.140013ee4
lea rdx, [rsi + 0x20]
cmp qword [rdx + 0x18], 8
jb 0x14000f931
mov rdx, qword [rdx]
lea rcx, [rbp - 0x28]
call fcn.14000dde0
nop
mov rdx, qword [rax]
test rdx, rdx
je 0x14000f948
mov rdx, qword [rdx]
jmp 0x14000f94b
mov rdx, r14
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x40]
nop
mov rbx, qword [rbp - 0x28]
test rbx, rbx
je 0x14000f9a0
mov eax, edi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14000f9a0
test rbx, rbx
je 0x14000f9a0
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000f981
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14000f993
call fcn.140013ef4
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.140013ee4
lea rdx, [rsi + 0x40]
cmp qword [rdx + 0x18], 8
jb 0x14000f9ae
mov rdx, qword [rdx]
lea rcx, [rbp - 0x20]
call fcn.14000dde0
nop
mov rdx, qword [rax]
test rdx, rdx
je 0x14000f9c5
mov rdx, qword [rdx]
jmp 0x14000f9c8
mov rdx, r14
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x120]
nop
mov rbx, qword [rbp - 0x20]
test rbx, rbx
je 0x14000fa20
mov eax, edi
lock xadd dword [rbx + 0x10], eax
cmp eax, 1
jne 0x14000fa20
test rbx, rbx
je 0x14000fa20
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000fa01
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14000fa13
call fcn.140013ef4
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.140013ee4
lea rdx, [rsi + 0x60]
cmp qword [rdx + 0x18], 8
jb 0x14000fa2e
mov rdx, qword [rdx]
lea rcx, [rbp - 0x18]
call fcn.14000dde0
nop
mov rdx, qword [rax]
test rdx, rdx
je 0x14000fa45
mov rdx, qword [rdx]
jmp 0x14000fa48
mov rdx, r14
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x50]
nop
mov rbx, qword [rbp - 0x18]
test rbx, rbx
je 0x14000fa9b
lock xadd dword [rbx + 0x10], edi
cmp edi, 1
jne 0x14000fa9b
test rbx, rbx
je 0x14000fa9b
mov rcx, qword [rbx]
test rcx, rcx
je 0x14000fa7c
call qword [sym.imp.OLEAUT32.dll_SysStringLen]
mov qword [rbx], r14
mov rcx, qword [rbx + 8]
test rcx, rcx
je 0x14000fa8e
call fcn.140013ef4
mov qword [rbx + 8], r14
mov edx, 0x18
mov rcx, rbx
call fcn.140013ee4
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
mov edx, dword [rsi + 0x80]
call qword [rax + 0x130]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0x150]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
mov edx, 0x100
call qword [rax + 0x80]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
mov edx, 1
call qword [rax + 0xe0]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x140]
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
xor edx, edx
call qword [rax + 0x110]
mov rcx, qword [rbp + 0x48]
mov rax, qword [rcx]
mov rdx, qword [rbp + 0x40]
call qword [rax + 0x40]
mov ebx, eax
mov rcx, qword [rbp + 0x40]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
mov rcx, qword [rbp + 0x48]
mov rdx, qword [rcx]
call qword [rdx + 0x10]
test ebx, ebx
setns al
add rsp, 0x60
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret
mov rcx, qword [rbp + 0x40]
mov rax, qword [rcx]
call qword [rax + 0x10]
xor al, al
add rsp, 0x60
pop r14
pop rdi
pop rsi
pop rbx
pop rbp
ret