Function at 0x408d00
Capabilities:
Get networking parameters

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
sub esp, 0x54
call fcn.00408570
call fcn.00408860
mov dword [ebp - 0x44], 0
mov esi, dword [sym.imp.iphlpapi.dll_GetNetworkParams]
mov dword [esp + 4], 0
mov dword [esp], 0
call esi
sub esp, 8
cmp eax, 0x32
je 0x409270
mov ebx, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x5e1
xor eax, eax
cmp ebx, 0x57
sete al
mov dword [esp + 8], ebx
lea ebx, [ebp - 0x44]
mov dword [esp + 4], str.GetNetworkParams_returned__ld__expected_ERROR_INVALID_PARAMETER_n
mov dword [esp], eax
call fcn.00402000
mov dword [esp + 4], ebx
mov dword [esp], 0
call esi
sub esp, 8
mov edi, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x5e5
xor eax, eax
cmp edi, 0x6f
sete al
mov dword [esp + 8], edi
mov dword [esp + 4], str.GetNetworkParams_returned__ld__expected_ERROR_BUFFER_OVERFLOW_n
mov dword [esp], eax
call fcn.00402000
cmp edi, 0x6f
je 0x4092f8
mov dword [esp + 4], ebx
mov edi, dword [sym.imp.iphlpapi.dll_GetBestInterface]
mov dword [esp], 0
call edi
sub esp, 8
mov esi, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x5f9
mov dword [esp + 8], esi
mov eax, dword [ebp - 0x44]
mov dword [esp], str.GetBestInterface__0.0.0.0____lu____lu_n
mov dword [esp + 4], eax
call fcn.00401b30
cmp esi, 0x32
je 0x4092d8
mov dword [esp + 4], 0
mov dword [esp], 0x7f000001
call edi
sub esp, 8
mov esi, eax
mov eax, 0x601
call fcn.00401820
xor eax, eax
cmp esi, 0x57
mov dword [esp + 8], esi
sete al
mov dword [esp + 0xc], 0x57
mov dword [esp + 4], str.GetBestInterface__127.0.0.1___NULL__returned__lu__expected__d_n
mov dword [esp], eax
call fcn.00402000
mov dword [esp + 4], ebx
mov dword [esp], 0x7f000001
call edi
sub esp, 8
mov esi, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x606
mov dword [esp + 0x10], 0
mov dword [esp + 0xc], esi
mov eax, dword [ebp - 0x44]
mov dword [esp + 4], str.GetBestInterface__127.0.0.1____lu__returned__lu__expected__d_n
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
sete al
mov dword [esp], eax
call fcn.00402000
xor eax, eax
lea edi, [ebp - 0x48]
mov dword [ebp - 0x48], 0
mov esi, dword [sym.imp.iphlpapi.dll_GetBestInterfaceEx]
mov word [ebp - 0x36], ax
mov eax, 2
mov dword [ebp - 0x42], 0
mov dword [ebp - 0x3e], 0
mov dword [ebp - 0x3a], 0
mov word [ebp - 0x44], ax
mov dword [esp + 4], edi
mov dword [esp], ebx
call esi
sub esp, 8
mov dword [ebp - 0x4c], eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x615
mov eax, dword [ebp - 0x4c]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0x48]
mov dword [esp], str.GetBestInterfaceEx__0.0.0.0____lu____lu_n
mov dword [esp + 4], eax
call fcn.00401b30
cmp dword [ebp - 0x4c], 0x32
je 0x4092b8
mov dword [esp + 4], 0
mov dword [esp], 0
call esi
sub esp, 8
mov dword [ebp - 0x4c], eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x61d
xor eax, eax
mov dword [esp + 0xc], 0x57
mov edx, dword [ebp - 0x4c]
mov dword [esp + 4], str.GetBestInterfaceEx_NULL__NULL__returned__lu__expected__d_n
cmp edx, 0x57
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00402000
mov dword [esp + 4], edi
mov dword [esp], 0
call esi
sub esp, 8
mov dword [ebp - 0x4c], eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x622
mov dword [esp + 0x10], 0x57
mov edx, dword [ebp - 0x4c]
mov dword [esp + 0xc], edx
mov eax, dword [ebp - 0x48]
mov dword [esp + 4], str.GetBestInterfaceEx_NULL___lu__returned__lu__expected__d_n
mov dword [esp + 8], eax
xor eax, eax
cmp edx, 0x57
sete al
mov dword [esp], eax
call fcn.00402000
mov dword [ebp - 0x44], 0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
call esi
sub esp, 8
mov dword [ebp - 0x4c], eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x628
xor eax, eax
mov dword [esp + 0xc], 0x57
mov edx, dword [ebp - 0x4c]
mov dword [esp + 4], str.GetBestInterfaceEx__AF_UNSPEC___NULL__returned__lu__expected__d_n
cmp edx, 0x57
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00402000
mov dword [ebp - 0x44], 0xffffffff
mov dword [ebp - 0x40], 0xffffffff
mov dword [ebp - 0x3c], 0xffffffff
mov dword [ebp - 0x38], 0xffffffff
mov dword [esp + 4], 0
mov dword [esp], ebx
call esi
sub esp, 8
mov dword [ebp - 0x4c], eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x62e
xor eax, eax
mov dword [esp + 0xc], 0x57
mov edx, dword [ebp - 0x4c]
mov dword [esp + 4], str.GetBestInterfaceEx__INVALID___NULL__returned__lu__expected__d_n
cmp edx, 0x57
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00402000
mov edx, 2
xor eax, eax
mov dword [ebp - 0x42], 0
mov word [ebp - 0x44], dx
mov dword [ebp - 0x3e], 0
mov dword [ebp - 0x3a], 0
mov word [ebp - 0x36], ax
mov dword [ebp - 0x40], 0x7f000001
mov dword [esp + 4], 0
mov dword [esp], ebx
call esi
sub esp, 8
mov dword [ebp - 0x4c], eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x636
xor eax, eax
mov dword [esp + 0xc], 0x57
mov edx, dword [ebp - 0x4c]
mov dword [esp + 4], str.GetBestInterfaceEx__127.0.0.1___NULL__returned__lu__expected__d_n
cmp edx, 0x57
mov dword [esp + 8], edx
sete al
mov dword [esp], eax
call fcn.00402000
xor ecx, ecx
mov eax, 2
mov dword [ebp - 0x42], 0
mov dword [ebp - 0x3e], 0
mov word [ebp - 0x36], cx
mov dword [ebp - 0x3a], 0
mov word [ebp - 0x44], ax
mov dword [ebp - 0x40], 0x7f000001
mov dword [esp + 4], edi
mov dword [esp], ebx
call esi
sub esp, 8
mov esi, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x63e
mov dword [esp + 0x10], 0x57
mov dword [esp + 0xc], esi
mov eax, dword [ebp - 0x48]
mov dword [esp + 4], str.GetBestInterfaceEx__127.0.0.1____lu__returned__lu__expected__d_n
mov dword [esp + 8], eax
xor eax, eax
test esi, esi
sete al
mov dword [esp], eax
call fcn.00402000
mov dword [esp + 8], ebx
mov edi, dword [sym.imp.iphlpapi.dll_GetBestRoute]
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
sub esp, 0xc
mov esi, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x649
mov dword [esp + 4], esi
mov dword [esp], str.GetBestRoute__0.0.0.0___0___..._____lu_n
call fcn.00401b30
cmp esi, 0x32
je 0x409290
mov dword [esp + 8], 0
mov dword [esp + 4], 0
mov dword [esp], 0
call edi
sub esp, 0xc
mov esi, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x651
xor eax, eax
cmp esi, 0x57
sete al
mov dword [esp + 8], esi
mov dword [esp + 0xc], 0x57
mov dword [esp + 4], str.GetBestRoute__0.0.0.0___0__NULL__returned__lu__expected__d_n
mov dword [esp], eax
call fcn.00402000
mov dword [esp + 8], ebx
mov dword [esp + 4], 0
mov dword [esp], 0x7f000001
call edi
sub esp, 0xc
mov ebx, eax
call fcn.0040f800
mov dword [eax], 0x4141a7
mov dword [eax + 4], 0x656
xor eax, eax
test ebx, ebx
sete al
mov dword [esp + 8], ebx
mov dword [esp], eax
mov dword [esp + 0xc], 0
mov dword [esp + 4], str.GetBestRoute__127.0.0.1___0__NULL__returned__lu__expected__d_n
call fcn.00402000
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov eax, 0x5de
lea ebx, [ebp - 0x44]
call fcn.00401820
mov dword [esp], str.GetNetworkParams_is_not_supported_n
call fcn.00401b20
jmp 0x408db9
mov eax, 0x64c
call fcn.00401820
mov dword [esp], str.GetBestRoute_is_not_supported_n
call fcn.00401b20
lea esp, [ebp - 0xc]
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret 4
mov eax, 0x618
call fcn.00401820
mov dword [esp], str.GetBestInterfaceEx_not_supported_n
call fcn.00401b20
jmp 0x40916d
mov eax, 0x5fc
call fcn.00401820
mov dword [esp], str.GetBestInterface_is_not_supported_n
call fcn.00401b20
jmp 0x408e95
mov eax, dword [ebp - 0x44]
mov dword [esp], eax
call dword [sym.imp.msvcrt.dll_malloc]
mov dword [esp + 4], ebx
mov edi, eax
mov dword [esp], eax
call esi
sub esp, 8
mov esi, eax
mov eax, 0x5ec
call fcn.00401820
xor eax, eax
test esi, esi
mov dword [esp + 8], esi
sete al
mov dword [esp + 4], str.GetNetworkParams_buf__dwSize__returned__ld__expected_NO_ERROR_n
mov dword [esp], eax
call fcn.00402000
mov dword [esp], edi
call dword [sym.imp.msvcrt.dll_free]
jmp 0x408db9