Function at 0x100505d0
Capabilities:
Check os version

Disassembly:
sub esp, 0x434
mov eax, dword [0x1017455c]
xor eax, esp
mov dword [esp + 0x430], eax
push ebx
xor ebx, ebx
push esi
push edi
mov edi, 1
xor esi, esi
mov dword [esp + 0xc], ebx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x20], ebx
cmp dword [0x1019e748], ebx
jne 0x100506d9
mov dword [0x1019e748], edi
call dword [sym.imp.KERNEL32.dll_GetVersion]
test eax, eax
js 0x100506d9
cmp al, 6
jb 0x100506d9
mov dword [0x1019e74c], edi
lea eax, [esp + 0x24]
push eax
push str.WFPForceDisable
mov ecx, 0x101482cc
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
cmp dword [esp + 0x24], ebx
jne 0x100506e5
mov dword [esp + 0xc], edi
call fcn.1004c7c0
cmp eax, 2
jle 0x1005082b
lea ecx, [esp + 0x10]
push ecx
push str.WFPOnlySMB445
mov ecx, 0x101482cc
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
test al, al
jne 0x10050707
lea edx, [esp + 0x14]
push edx
push str.enablesecuritysignature
mov ecx, str.SystemCurrentControlSetServicesLanmanServerParameters
mov edx, reloc.OLEAUT32.dll_SysReAllocString
mov dword [esp + 0x24], ebx
mov dword [esp + 0x1c], ebx
call fcn.10031670
lea eax, [esp + 0x1c]
push eax
push str.requiresecuritysignature
mov ecx, str.SystemCurrentControlSetServicesLanmanServerParameters
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
cmp dword [esp + 0x14], ebx
jne 0x100506ff
cmp dword [esp + 0x1c], ebx
jne 0x100506ff
mov eax, edi
mov dword [esp + 0x10], eax
jmp 0x10050759
cmp dword [0x1019e74c], ebx
jne 0x10050636
pop edi
pop esi
xor eax, eax
pop ebx
mov ecx, dword [esp + 0x430]
xor ecx, esp
call fcn.1010d699
add esp, 0x434
ret
xor eax, eax
mov dword [esp + 0x10], eax
jmp 0x10050759
cmp dword [esp + 0x10], edi
jne 0x1005076a
lea ecx, [esp + 0x1c]
push ecx
push str.enablesecuritysignature
mov ecx, str.SystemCurrentControlSetServicesLanmanServerParameters
mov edx, reloc.OLEAUT32.dll_SysReAllocString
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x24], ebx
call fcn.10031670
lea edx, [esp + 0x14]
push edx
push str.requiresecuritysignature
mov ecx, str.SystemCurrentControlSetServicesLanmanServerParameters
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
cmp dword [esp + 0x1c], ebx
jne 0x10050753
cmp dword [esp + 0x14], ebx
je 0x1005076a
mov dword [esp + 0x10], ebx
xor eax, eax
mov edi, str.WFPOnlySMB445
mov ebx, 0x101482cc
call fcn.10031430
xor ebx, ebx
lea eax, [esp + 0x18]
push eax
push str.WFPEnabledOnServer
mov ecx, 0x101482cc
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
test al, al
je 0x10050793
cmp dword [esp + 0x10], ebx
jne 0x100507af
cmp dword [esp + 0x18], ebx
je 0x100507b5
mov dword [esp + 0x18], ebx
xor eax, eax
mov edi, str.WFPEnabledOnServer
mov ebx, 0x101482cc
mov esi, 1
call fcn.10031430
xor ebx, ebx
cmp dword [esp + 0x18], ebx
jne 0x1005082b
lea ecx, [esp + 0x14]
push ecx
push str.WFPModSet
mov ecx, 0x101482cc
mov edx, reloc.OLEAUT32.dll_SysReAllocString
mov dword [esp + 0x1c], ebx
call fcn.10031670
test al, al
je 0x100507e5
mov eax, dword [esp + 0x14]
cmp eax, 2
jb 0x100507e5
mov dword [esp + 0x20], eax
jmp 0x10050819
mov eax, 2
mov edi, str.WFPModSet
mov ebx, 0x101482cc
mov dword [esp + 0x14], eax
call fcn.10031430
cmp dword [esp + 0x10], 0
je 0x10050817
mov eax, 1
mov edi, str.WFPEnabledOnServer
mov dword [esp + 0x18], eax
call fcn.10031430
xor ebx, ebx
cmp dword [esp + 0x18], ebx
jne 0x1005082b
mov dword [esp + 0xc], ebx
mov dword [esp + 0x28], 1
push ebp
mov ebp, dword [esp + 0x448]
cmp ebp, 2
jae 0x100508c7
lea edx, [esp + 0x10]
push edx
push str.WFPEnabled
mov ecx, 0x101482cc
mov edx, reloc.OLEAUT32.dll_SysReAllocString
call fcn.10031670
test al, al
jne 0x1005086e
mov eax, dword [esp + 0x10]
mov edi, str.WFPEnabled
mov ebx, 0x101482cc
call fcn.10031430
xor ebx, ebx
call fcn.1004c7c0
cmp eax, 2
jle 0x100508c7
cmp dword [esp + 0x24], 2
jb 0x10050883
cmp esi, ebx
je 0x100508b7
cmp dword [esp + 0x10], ebx
jne 0x1005089a
cmp dword [esp + 0x14], ebx
je 0x100508c7
mov eax, 1
mov dword [esp + 0x10], eax
jmp 0x100508a6
cmp dword [esp + 0x14], ebx
jne 0x100508b7
mov dword [esp + 0x10], ebx
xor eax, eax
mov edi, str.WFPEnabled
mov ebx, 0x101482cc
call fcn.10031430
xor ebx, ebx
cmp dword [esp + 0x10], ebx
je 0x100508c7
cmp dword [esp + 0x2c], ebx
je 0x100508c7
mov dword [esp + 0x10], ebx
cmp ebp, 1
jne 0x10050908
call fcn.1004c7c0
cmp eax, 2
jle 0x100508f5
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x1c]
mov edx, dword [esp + 0x10]
push eax
push ecx
push edx
push str._WFP__WFPEnabled___d__Server_OS__WFPEnabledOnServer_u__WFPOnlySMB445_u_
push ebx
call fcn.10053700
add esp, 0x14
jmp 0x10050908
mov eax, dword [esp + 0x10]
push eax
push str._WFP__WFPEnabled___d__WorkStation_OS_
push ebx
call fcn.10053700
add esp, 0xc
cmp dword [esp + 0x10], ebx
je 0x10050b10
push 0x103
lea ecx, [esp + 0x35]
push ebx
push ecx
mov byte [esp + 0x3c], bl
call fcn.10116880
push 0x103
lea edx, [esp + 0x249]
push ebx
push edx
mov byte [esp + 0x250], bl
call fcn.10116880
push 0x103
lea eax, [esp + 0x151]
push ebx
push eax
mov byte [esp + 0x158], bl
call fcn.10116880
push 0x103
lea ecx, [esp + 0x365]
push ebx
push ecx
mov byte [esp + 0x36c], bl
call fcn.10116880
add esp, 0x30
lea edi, [esp + 0x30]
call fcn.10039e30
cmp eax, 1
je 0x1005098c
mov ecx, edi
call fcn.10039fe0
call fcn.1004f190
mov esi, dword [sym.imp.KERNEL32.dll_lstrcpyA]
lea edx, [esp + 0x30]
test eax, eax
push edx
lea eax, [esp + 0x23c]
push eax
je 0x10050a17
call esi
lea ecx, [esp + 0x238]
call fcn.10049c40
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.ESWfpx.DLL
lea ecx, [esp + 0x23c]
push ecx
call edi
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x340]
push eax
call esi
lea ecx, [esp + 0x33c]
call fcn.10049c40
push str.UrlFiltx.DLL
lea ecx, [esp + 0x340]
push ecx
call edi
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x138]
push eax
call esi
lea ecx, [esp + 0x134]
call fcn.10049c40
push str.ESWfp64.SYS
jmp 0x10050a84
call esi
lea ecx, [esp + 0x238]
call fcn.10049c40
mov edi, dword [sym.imp.KERNEL32.dll_lstrcatA]
push str.ESWfp.DLL
lea ecx, [esp + 0x23c]
push ecx
call edi
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x340]
push eax
call esi
lea ecx, [esp + 0x33c]
call fcn.10049c40
push str.UrlFilt.DLL
lea ecx, [esp + 0x340]
push ecx
call edi
lea edx, [esp + 0x30]
push edx
lea eax, [esp + 0x138]
push eax
call esi
lea ecx, [esp + 0x134]
call fcn.10049c40
push str.ESWfp32.SYS
lea ecx, [esp + 0x138]
push ecx
call edi
push ebx
push ebx
xor edx, edx
lea ecx, [esp + 0x240]
call fcn.10044660
add esp, 8
test eax, eax
je 0x10050ab4
cmp ebp, 1
jne 0x10050b0c
lea edx, [esp + 0x238]
push edx
jmp 0x10050afe
push ebx
push ebx
xor edx, edx
lea ecx, [esp + 0x13c]
call fcn.10044660
add esp, 8
test eax, eax
je 0x10050ada
cmp ebp, 1
jne 0x10050b0c
lea eax, [esp + 0x134]
push eax
jmp 0x10050afe
push ebx
push ebx
xor edx, edx
lea ecx, [esp + 0x344]
call fcn.10044660
add esp, 8
test eax, eax
je 0x10050b10
cmp ebp, 1
jne 0x10050b0c
lea ecx, [esp + 0x33c]
push ecx
push str._WFP___s_Missing_
push ebx
call fcn.10053700
add esp, 0xc
mov dword [esp + 0x10], ebx
mov ecx, dword [esp + 0x440]
mov eax, dword [esp + 0x10]
pop ebp
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.1010d699
add esp, 0x434
ret