Function at 0x461850
Capabilities:
Access firewall policy via inetfwpolicy2

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x591035
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0xd0
push ebx
push esi
push edi
lea ecx, [ebp - 0x64]
mov dword [ebp - 0x60], 1
mov byte [ebp - 0x64], 0
mov dword [ebp - 0x5c], 0
call fcn.00463a30
mov dword [ebp - 4], 0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x24], 0
lea eax, [ebp - 0x24]
mov byte [ebp - 4], 4
push eax
push 0x5b2a88
push 1
push 0
push 0x5b2a78
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x461c71
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x461c71
cmp dword [ebp - 0x20], 0
mov eax, dword [esi]
mov edi, dword [eax + 0x48]
je 0x461904
push 0x5b2abc
push 0xc0
push str.C:_buildworker_steam_rel_client_win32_build_srcpublic_tier1_smartptr.h
call fcn.004774e0
add esp, 0xc
test al, al
jne 0x461904
int3
lea eax, [ebp - 0x20]
push eax
push esi
call edi
test eax, eax
jns 0x461916
xor bl, bl
jmp 0x461c73
cmp dword [ebp - 0x1c], 0
mov esi, dword [ebp - 0x20]
mov eax, dword [esi]
mov edi, dword [eax + 0x2c]
je 0x461940
push 0x5b2abc
push 0xc0
push str.C:_buildworker_steam_rel_client_win32_build_srcpublic_tier1_smartptr.h
call fcn.004774e0
add esp, 0xc
test al, al
jne 0x461940
int3
lea eax, [ebp - 0x1c]
push eax
push esi
call edi
test eax, eax
jns 0x461952
xor bl, bl
jmp 0x461c73
cmp dword [ebp - 0x18], 0
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi]
mov edi, dword [eax]
je 0x46197b
push 0x5b2abc
push 0xc0
push str.C:_buildworker_steam_rel_client_win32_build_srcpublic_tier1_smartptr.h
call fcn.004774e0
add esp, 0xc
test al, al
jne 0x46197b
int3
lea eax, [ebp - 0x18]
push eax
push 0x5b40f8
push esi
call edi
test eax, eax
jns 0x461992
xor bl, bl
jmp 0x461c73
lea eax, [ebp - 0x74]
mov byte [ebp - 0xe], 0
mov ebx, 1
push eax
mov dword [ebp - 0x3c], ebx
call dword [sym.imp.OLEAUT32.dll_VariantClear]
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x50]
push edx
lea edx, [ebp - 0x74]
push edx
mov ecx, dword [eax]
push ebx
push eax
call dword [ecx + 0xc]
test eax, eax
js 0x461c59
mov ebx, dword [ebp + 8]
cmp dword [ebp - 0x50], 0
je 0x461c56
mov ecx, dword [ebp - 0x6c]
lea edx, [ebp - 0x14]
push edx
mov dword [ebp - 0x14], 0
push 0x5b2a34
mov eax, dword [ecx]
push ecx
call dword [eax]
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x54]
mov dword [ebp - 0x54], 0
mov dword [ebp - 0x44], 3
mov dword [ebp - 0x48], 2
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x38], 0
mov eax, dword [ecx]
push edx
push ecx
call dword [eax + 0x84]
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x44]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x6c]
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x48]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0xa4]
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x4c]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x94]
mov ecx, dword [ebp - 0x14]
lea edx, [ebp - 0x38]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov esi, dword [ebp - 0x38]
xor eax, eax
test esi, esi
mov dword [ebp - 0x2c], eax
mov edi, 0x593544
mov dword [ebp - 0x28], 0x4000000
cmovne edi, eax
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x34], edi
mov byte [ebp - 4], 0x15
test edi, edi
jne 0x461aa9
push 4
push edi
push edi
push esi
mov byte [ebp - 0x28], 1
call fcn.0046db10
mov esi, eax
push esi
call fcn.0056baeb
push 0
mov edi, eax
push esi
mov esi, dword [ebp - 0x40]
push edi
push esi
mov dword [ebp - 0x34], edi
call fcn.0046db10
add esp, 0x24
test ebx, ebx
je 0x461afc
test edi, edi
je 0x461b00
push SysReAllocString
push ebx
push edi
call fcn.0046a540
add esp, 0xc
test eax, eax
je 0x461ba0
push ebx
call fcn.00461cf0
push edi
mov dword [ebp - 0x58], eax
call fcn.00461cf0
mov ecx, dword [ebp - 0x58]
add esp, 8
test ecx, ecx
je 0x461afc
test eax, eax
je 0x461afc
push SysReAllocString
push eax
push ecx
call fcn.0046a540
add esp, 0xc
test eax, eax
je 0x461ba0
test edi, edi
jne 0x461b2c
push 4
push 0
push 0
push esi
mov byte [ebp - 0x28], 1
call fcn.0046db10
mov esi, eax
push esi
call fcn.0056baeb
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x40]
mov dword [ebp - 0x34], edi
call fcn.0046db10
add esp, 0x24
test ebx, ebx
je 0x461ba6
test edi, edi
je 0x461ba6
push 0x34
lea eax, [ebp - 0xa8]
push 0
push eax
call fcn.0056d4c0
push 0x34
lea eax, [ebp - 0xdc]
push 0
push eax
call fcn.0056d4c0
lea eax, [ebp - 0xa8]
push eax
push ebx
call fcn.00461d50
add esp, 0x20
test al, al
je 0x461ba6
lea eax, [ebp - 0xdc]
push eax
push edi
call fcn.00461d50
add esp, 8
test al, al
je 0x461ba6
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xc0]
jne 0x461ba6
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0xb0]
jne 0x461ba6
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xac]
jne 0x461ba6
mov byte [ebp - 0xd], 1
jmp 0x461baa
mov byte [ebp - 0xd], 0
push dword [ebp - 0x38]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
cmp byte [ebp - 0xd], 0
je 0x461bf5
cmp dword [ebp - 0x44], 1
jne 0x461bf5
cmp dword [ebp - 0x48], 1
jne 0x461bf5
mov edx, dword [ebp - 0x4c]
mov eax, edx
and eax, 7
mov byte [ebp - 0xe], 1
cmp al, 7
je 0x461bf5
mov ecx, dword [ebp - 0x14]
or edx, 7
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, dword [ebp - 0x3c]
xor edx, edx
test eax, eax
movzx ecx, cl
cmovs ecx, edx
mov dword [ebp - 0x3c], ecx
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x461c02
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp byte [ebp - 0x28], 0
mov byte [ebp - 4], 4
je 0x461c1f
push edi
call fcn.0056baf4
add esp, 4
mov eax, dword [ebp - 0x18]
lea edx, [ebp - 0x50]
push edx
lea edx, [ebp - 0x74]
mov dword [ebp - 0x34], 0
push edx
mov ecx, dword [eax]
push 1
push eax
mov dword [ebp - 0x30], 0
mov dword [ebp - 0x2c], 0
mov dword [ebp - 0x28], 0x4000000
call dword [ecx + 0xc]
test eax, eax
jns 0x4619c5
mov ebx, dword [ebp - 0x3c]
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp byte [ebp - 0xe], 0
je 0x461c6d
test bl, bl
jne 0x461c71
xor bl, bl
jmp 0x461c73
mov bl, 1
mov esi, dword [ebp - 0x24]
mov byte [ebp - 4], 0x16
test esi, esi
je 0x461c8b
mov dword [ebp - 0x24], 0
mov eax, dword [esi]
push esi
call dword [eax + 8]
mov ecx, dword [ebp - 0x1c]
mov byte [ebp - 4], 0x17
test ecx, ecx
je 0x461ca3
mov dword [ebp - 0x1c], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov ecx, dword [ebp - 0x20]
mov byte [ebp - 4], 0x18
test ecx, ecx
je 0x461cbb
mov dword [ebp - 0x20], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
mov eax, dword [ebp - 0x18]
mov byte [ebp - 4], 0x19
test eax, eax
je 0x461cd3
mov dword [ebp - 0x18], 0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x64]
call fcn.00462320
mov ecx, dword [ebp - 0xc]
mov al, bl
pop edi
pop esi
pop ebx
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret