Function at 0x461510
Capabilities:
Access firewall policy via inetfwpolicy2

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x590865
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.00463880
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 0x5b295c
push 1
push 0
push 0x5b294c
call dword [sym.imp.ole32.dll_CoCreateInstance]
test eax, eax
js 0x46197a
mov esi, dword [ebp - 0x24]
test esi, esi
je 0x46197a
cmp dword [ebp - 0x20], 0
mov eax, dword [esi]
mov edi, dword [eax + 0x48]
je 0x4615c4
push str.m_pObj__NULL
push 0xbd
push str.c:_buildslave_steam_rel_client_hotfix_win32_build_srcpublic_tier1_smartptr.h
call fcn.00476df0
add esp, 0xc
test al, al
jne 0x4615c4
int3
lea eax, [ebp - 0x20]
push eax
push esi
call edi
test eax, eax
jns 0x4615d6
xor bl, bl
jmp 0x46197c
cmp dword [ebp - 0x1c], 0
mov esi, dword [ebp - 0x20]
mov eax, dword [esi]
mov edi, dword [eax + 0x2c]
je 0x461600
push str.m_pObj__NULL
push 0xbd
push str.c:_buildslave_steam_rel_client_hotfix_win32_build_srcpublic_tier1_smartptr.h
call fcn.00476df0
add esp, 0xc
test al, al
jne 0x461600
int3
lea eax, [ebp - 0x1c]
push eax
push esi
call edi
test eax, eax
jns 0x461612
xor bl, bl
jmp 0x46197c
cmp dword [ebp - 0x18], 0
mov esi, dword [ebp - 0x1c]
mov eax, dword [esi]
mov edi, dword [eax]
je 0x46163b
push str.m_pObj__NULL
push 0xbd
push str.c:_buildslave_steam_rel_client_hotfix_win32_build_srcpublic_tier1_smartptr.h
call fcn.00476df0
add esp, 0xc
test al, al
jne 0x46163b
int3
lea eax, [ebp - 0x18]
push eax
push 0x5b3fdc
push esi
call edi
test eax, eax
jns 0x461652
xor bl, bl
jmp 0x46197c
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 0x461962
mov ebx, dword [ebp + 8]
cmp dword [ebp - 0x50], 0
je 0x46195f
mov ecx, dword [ebp - 0x6c]
lea edx, [ebp - 0x14]
push edx
mov dword [ebp - 0x14], 0
push 0x5b291c
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, 0x593534
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 0x461768
push 4
push edi
push edi
push eax
mov byte [ebp - 0x28], 1
call fcn.0046d760
mov esi, eax
push esi
call fcn.0056b44b
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x38]
mov dword [ebp - 0x34], edi
call fcn.0046d760
add esp, 0x24
test ebx, ebx
je 0x461806
test edi, edi
je 0x46180a
push SysReAllocString
push ebx
push edi
call fcn.0046a290
add esp, 0xc
test eax, eax
je 0x4618ac
push ebx
call fcn.00461a00
add esp, 4
mov dword [ebp - 0x58], eax
cmp byte [edi], 0
mov esi, edi
je 0x4617df
push 3
push 0x5b296c
push esi
mov ebx, esi
call fcn.0046a290
add esp, 0xc
test eax, eax
jne 0x4617d9
mov al, byte [esi + 3]
add esi, 3
cmp al, 0x30
jl 0x4617d5
mov cl, al
mov al, cl
cmp cl, 0x39
ja 0x4617d5
mov al, byte [esi + 1]
inc esi
mov cl, al
cmp al, 0x30
jge 0x4617c4
cmp al, 0x5c
je 0x4617e1
inc esi
cmp byte [esi], 0
jne 0x4617a2
xor ebx, ebx
mov eax, dword [ebp - 0x58]
test eax, eax
je 0x461803
test ebx, ebx
je 0x461803
push SysReAllocString
push ebx
push eax
call fcn.0046a290
add esp, 0xc
test eax, eax
je 0x4618ac
mov ebx, dword [ebp + 8]
test edi, edi
jne 0x461838
push 4
push 0
push 0
push dword [ebp - 0x38]
mov byte [ebp - 0x28], 1
call fcn.0046d760
mov esi, eax
push esi
call fcn.0056b44b
push 0
mov edi, eax
push esi
push edi
push dword [ebp - 0x38]
mov dword [ebp - 0x34], edi
call fcn.0046d760
add esp, 0x24
test ebx, ebx
je 0x4618b0
test edi, edi
je 0x4618b0
push 0x34
lea eax, [ebp - 0xa8]
push 0
push eax
call fcn.0056cd70
push 0x34
lea eax, [ebp - 0xdc]
push 0
push eax
call fcn.0056cd70
lea eax, [ebp - 0xa8]
push eax
push ebx
call fcn.00461a60
add esp, 0x20
test al, al
je 0x4618b0
lea eax, [ebp - 0xdc]
push eax
push edi
call fcn.00461a60
add esp, 8
test al, al
je 0x4618b0
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xc0]
jne 0x4618b0
mov eax, dword [ebp - 0x7c]
cmp eax, dword [ebp - 0xb0]
jne 0x4618b0
mov eax, dword [ebp - 0x78]
cmp eax, dword [ebp - 0xac]
jne 0x4618b0
mov bl, 1
jmp 0x4618b2
xor bl, bl
push dword [ebp - 0x3c]
call dword [sym.imp.OLEAUT32.dll_SysStringLen]
test bl, bl
je 0x4618fb
cmp dword [ebp - 0x44], 1
jne 0x4618fb
cmp dword [ebp - 0x48], 1
jne 0x4618fb
mov edx, dword [ebp - 0x4c]
mov eax, edx
and eax, 7
mov byte [ebp - 0xd], 1
cmp al, 7
je 0x4618fb
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 0x461908
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 0x461925
push edi
call fcn.0056b454
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 0x461685
mov ebx, dword [ebp - 0x40]
lea eax, [ebp - 0x74]
push eax
call dword [sym.imp.OLEAUT32.dll_VariantCopy]
cmp byte [ebp - 0xd], 0
je 0x461976
test bl, bl
jne 0x46197a
xor bl, bl
jmp 0x46197c
mov bl, 1
mov esi, dword [ebp - 0x24]
mov byte [ebp - 4], 0x16
test esi, esi
je 0x461994
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 0x4619ac
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 0x4619c4
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 0x4619dc
mov dword [ebp - 0x18], 0
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
lea ecx, [ebp - 0x64]
call fcn.00462090
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