Function at 0x461530
Capabilities:
Access firewall policy via inetfwpolicy2

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x591ca5
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.004638a0
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 0x5b385c
push 1
push 0
push 0x5b384c
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x46199a
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x46199a
cmp dword [ebp - 0x20], 0
mov eax, dword [esi]
mov edi, dword [eax + 0x48]
je 0x4615e4
push str.m_pObj__NULL
push 0xbd
push str.c:_buildslave_steam_rel_client_win32_build_srcpublic_tier1_smartptr.h
call fcn.00476df0
add esp, 0xc
test al, al
jne 0x4615e4
int3
lea eax, [ebp - 0x20]
push eax
push esi
call edi
test eax, eax
jns 0x4615f6
xor bl, bl
jmp 0x46199c
cmp dword [ebp - 0x1c], 0
mov esi, dword [ebp - 0x20]
mov eax, dword [esi]
mov edi, dword [eax + 0x2c]
je 0x461620
push str.m_pObj__NULL
push 0xbd
push str.c:_buildslave_steam_rel_client_win32_build_srcpublic_tier1_smartptr.h
call fcn.00476df0
add esp, 0xc
test al, al
jne 0x461620
int3
lea eax, [ebp - 0x1c]
push eax
push esi
call edi
test eax, eax
jns 0x461632
xor bl, bl
jmp 0x46199c
cmp dword [ebp - 0x18], 0
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi]
mov edi, dword [eax]
je 0x46165b
push str.m_pObj__NULL
push 0xbd
push str.c:_buildslave_steam_rel_client_win32_build_srcpublic_tier1_smartptr.h
call fcn.00476df0
add esp, 0xc
test al, al
jne 0x46165b
int3
lea eax, [ebp - 0x18]
push eax
push 0x5b4ec4
push esi
call edi
test eax, eax
jns 0x461672
xor bl, bl
jmp 0x46199c
lea eax, [ebp - 0x74]
mov byte [ebp - 0xd], 0
mov ebx, 1
push eax
mov dword [ebp - 0x40], 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 0x461982
mov ebx, dword [ebp + 8]
cmp dword [ebp - 0x50], 0
je 0x46197f
mov ecx, dword [ebp - 0x6c]
lea edx, [ebp - 0x14]
push edx
mov dword [ebp - 0x14], 0
push 0x5b381c
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 - 0x3c], 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 - 0x3c]
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x2c]
mov eax, dword [ebp - 0x3c]
xor ecx, ecx
test eax, eax
mov dword [ebp - 0x2c], ecx
mov edi, 0x594544
mov dword [ebp - 0x28], 0x4000000
cmovne edi, ecx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x34], edi
mov byte [ebp - 4], 0x15
test edi, edi
jne 0x461788
push 4
push edi
push edi
push eax
mov byte [ebp - 0x28], 1
call fcn.0046d770
mov esi, eax
push esi
call fcn.0056b23b
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x38]
mov dword [ebp - 0x34], edi
call fcn.0046d770
add esp, 0x24
test ebx, ebx
je 0x461826
test edi, edi
je 0x46182a
push SysReAllocString
push ebx
push edi
call fcn.0046a2a0
add esp, 0xc
test eax, eax
je 0x4618cc
push ebx
call fcn.00461a20
add esp, 4
mov dword [ebp - 0x58], eax
cmp byte [edi], 0
mov esi, edi
je 0x4617ff
push 3
push 0x5b386c
push esi
mov ebx, esi
call fcn.0046a2a0
add esp, 0xc
test eax, eax
jne 0x4617f9
mov al, byte [esi + 3]
add esi, 3
cmp al, 0x30
jl 0x4617f5
mov cl, al
mov al, cl
cmp cl, 0x39
ja 0x4617f5
mov al, byte [esi + 1]
inc esi
mov cl, al
cmp al, 0x30
jge 0x4617e4
cmp al, 0x5c
je 0x461801
inc esi
cmp byte [esi], 0
jne 0x4617c2
xor ebx, ebx
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x461823
test ebx, ebx
je 0x461823
push SysReAllocString
push ebx
push eax
call fcn.0046a2a0
add esp, 0xc
test eax, eax
je 0x4618cc
mov ebx, dword [ebp + 8]
test edi, edi
jne 0x461858
push 4
push 0
push 0
push dword [ebp - 0x38]
mov byte [ebp - 0x28], 1
call fcn.0046d770
mov esi, eax
push esi
call fcn.0056b23b
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x38]
mov dword [ebp - 0x34], edi
call fcn.0046d770
add esp, 0x24
test ebx, ebx
je 0x4618d0
test edi, edi
je 0x4618d0
push 0x34
lea eax, [ebp - 0xa8]
push 0
push eax
call fcn.0056cb60
push 0x34
lea eax, [ebp - 0xdc]
push 0
push eax
call fcn.0056cb60
lea eax, [ebp - 0xa8]
push eax
push ebx
call fcn.00461a80
add esp, 0x20
test al, al
je 0x4618d0
lea eax, [ebp - 0xdc]
push eax
push edi
call fcn.00461a80
add esp, 8
test al, al
je 0x4618d0
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xc0]
jne 0x4618d0
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0xb0]
jne 0x4618d0
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xac]
jne 0x4618d0
mov bl, 1
jmp 0x4618d2
xor bl, bl
push dword [ebp - 0x3c]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test bl, bl
je 0x46191b
cmp dword [ebp - 0x44], 1
jne 0x46191b
cmp dword [ebp - 0x48], 1
jne 0x46191b
mov edx, dword [ebp - 0x4c]
mov eax, edx
and eax, 7
mov byte [ebp - 0xd], 1
cmp al, 7
je 0x46191b
mov ecx, dword [ebp - 0x14]
or edx, 7
push edx
push ecx
mov eax, dword [ecx]
call dword [eax + 0x98]
mov ecx, dword [ebp - 0x40]
xor edx, edx
test eax, eax
movzx ecx, cl
cmovs ecx, edx
mov dword [ebp - 0x40], ecx
mov ecx, dword [ebp - 0x14]
test ecx, ecx
je 0x461928
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 0x461945
push edi
call fcn.0056b244
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]
mov ebx, dword [ebp + 8]
test eax, eax
jns 0x4616a5
mov ebx, dword [ebp - 0x40]
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp byte [ebp - 0xd], 0
je 0x461996
test bl, bl
jne 0x46199a
xor bl, bl
jmp 0x46199c
mov bl, 1
mov esi, dword [ebp - 0x24]
mov byte [ebp - 4], 0x16
test esi, esi
je 0x4619b4
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 0x4619cc
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 0x4619e4
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 0x4619fc
mov dword [ebp - 0x18], 0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x64]
call fcn.004620b0
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