Function at 0x14033d940
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 r14, r8
mov rsi, rdx
mov rdi, rcx
mov rax, qword [0x14042f038]
xor rax, rsp
mov qword [rsp + 0xa8], rax
lea r12, [rsp + 0xa0]
mov qword [r12], 0
mov qword [rsp + 0x20], r12
lea rcx, [0x1403a4868]
lea r9, [0x1403dfc50]
xor edx, edx
mov r8d, 0x17
call qword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x14033dc2c
movzx ebp, word [rsp + 0x110]
mov r15, qword [rsp + 0xa0]
movzx eax, byte [r14 + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [r14]
cmovns rax, r14
lea rdx, [rsp + 0x90]
mov qword [rdx], rax
cmovs rcx, qword [r14 + 8]
mov qword [rdx + 8], rcx
lea r14, [rsp + 0x40]
mov rcx, r14
call fcn.1401685a0
mov rdx, qword [r14]
mov rax, qword [r15]
mov rax, qword [rax + 0x40]
mov rcx, r15
call qword [case.0x1402ceac0.0]
mov rcx, r14
call fcn.1401685f0
mov r14, 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 rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.1401685a0
mov rdx, qword [rbx]
mov rax, qword [r14]
mov rax, qword [rax + 0x50]
mov rcx, r14
call qword [case.0x1402ceac0.0]
mov rcx, rbx
call fcn.1401685f0
lea rax, [rdi + 0x18]
movzx ecx, byte [rdi + 0x2f]
mov r8d, ecx
and r8d, 0x7f
test cl, cl
cmovs rax, qword [rdi + 0x18]
mov r14, qword [rsp + 0xa0]
lea rdx, [rsp + 0x70]
mov qword [rdx], rax
cmovs r8, qword [rdi + 0x20]
mov qword [rdx + 8], r8
lea rbx, [rsp + 0x40]
mov rcx, rbx
call fcn.1401685a0
mov rdx, qword [rbx]
mov rax, qword [r14]
mov rax, qword [rax + 0x60]
mov rcx, r14
call qword [case.0x1402ceac0.0]
mov rcx, rbx
call fcn.1401685f0
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x80]
mov edx, 0x11
call qword [case.0x1402ceac0.0]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0xe0]
mov edx, 1
call qword [case.0x1402ceac0.0]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x110]
mov dx, 0xffff
call qword [case.0x1402ceac0.0]
mov r14, qword [rsp + 0xa0]
movzx r8d, bp
lea rdx, [0x1403dfc60]
mov rcx, rbx
call fcn.1400f8bc0
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 r15, [rsp + 0x68]
mov rcx, r15
call fcn.1401685a0
mov rdx, qword [r15]
mov rax, qword [r14]
mov rax, qword [rax + 0x90]
mov rcx, r14
call qword [case.0x1402ceac0.0]
mov rcx, r15
call fcn.1401685f0
cmp byte [rbx + 0x17], 0
jns 0x14033db83
mov rcx, qword [rsp + 0x40]
call fcn.14024ac18
mov rbx, qword [rsp + 0xa0]
movzx eax, byte [rdi + 0x17]
mov ecx, eax
and ecx, 0x7f
test al, al
mov rax, qword [rdi]
cmovns rax, rdi
lea rdx, [rsp + 0x30]
mov qword [rdx], rax
cmovs rcx, qword [rdi + 8]
mov qword [rdx + 8], rcx
lea rdi, [rsp + 0x40]
mov rcx, rdi
call fcn.1401685a0
mov rdx, qword [rdi]
mov rax, qword [rbx]
mov rax, qword [rax + 0x120]
mov rcx, rbx
call qword [case.0x1402ceac0.0]
mov rcx, rdi
call fcn.1401685f0
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x130]
mov edx, 0x7fffffff
call qword [case.0x1402ceac0.0]
mov rcx, qword [rsp + 0xa0]
mov rax, qword [rcx]
mov rax, qword [rax + 0x150]
mov edx, 1
call qword [case.0x1402ceac0.0]
mov qword [rsi], 0
cmp r12, rsi
je 0x14033dc33
mov rax, qword [rsp + 0xa0]
mov qword [rsi], rax
jmp 0x14033dc59
mov qword [rsi], 0
mov rcx, qword [rsp + 0xa0]
test rcx, rcx
je 0x14033dc59
mov qword [rsp + 0xa0], 0
mov rax, qword [rcx]
mov rax, qword [rax + 0x10]
call qword [case.0x1402ceac0.0]
mov rcx, qword [rsp + 0xa8]
xor rcx, rsp
call fcn.14024c3c0
mov rax, rsi
add rsp, 0xb0
pop rbx
pop rbp
pop rdi
pop rsi
pop r12
pop r14
pop r15
ret