Function at 0x541790
Capabilities:
Get networking parameters

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x63cc06
mov eax, dword fs:[0]
push eax
push ecx
push ebx
sub esp, 0xf0
mov eax, dword [0x6a6040]
xor eax, ebp
mov dword [ebp - 0x1c], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x10], esp
mov byte [ebp - 0xf1], cl
mov esi, dword [0x6ac16c]
push 0xffffffffffffffff
push dword [esi]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x80
jne 0x5417fb
mov dword [esi + 8], 0
jmp 0x5417ff
test eax, eax
jne 0x541808
inc dword [esi + 0xc]
inc dword [esi + 8]
inc dword [esi + 4]
mov dword [ebp - 4], 1
xor esi, esi
push 0x648
push 0x40
mov dword [ebp - 0x44], esi
mov dword [ebp - 0x40], esi
mov dword [ebp - 0x3c], esi
mov dword [ebp - 0x38], esi
mov dword [ebp - 0x34], esi
mov dword [ebp - 0x30], esi
mov dword [ebp - 0x2c], esi
mov dword [ebp - 0x28], esi
mov dword [ebp - 0x24], esi
mov dword [ebp - 0x20], esi
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, eax
mov dword [ebp - 0x100], 0x648
lea eax, [ebp - 0x100]
mov dword [ebp - 0x104], edi
push eax
push edi
call dword [sym.imp.IPHLPAPI.DLL_GetNetworkParams]
cmp eax, 0x6f
jne 0x54188a
push edi
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov eax, dword [ebp - 0x100]
add eax, 0x400
push eax
push 0x40
mov dword [ebp - 0x100], eax
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov edi, eax
mov dword [ebp - 0x104], eax
lea eax, [ebp - 0x100]
push eax
push edi
call dword [sym.imp.IPHLPAPI.DLL_GetNetworkParams]
test eax, eax
je 0x5418c1
cmp byte [ebp - 0xf1], 0
je 0x541c3f
push eax
push str.Cant_get_DNS_IP_addresses_list:_call_to_GetNetworkParams___failed._Return_Value:__08x_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
jmp 0x541ab8
cmp byte [ebp - 0xf1], 0
je 0x5418f6
push edi
push str.Host_Name:__s_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
lea eax, [edi + 0x84]
push eax
push str.Domain_Name:__s_n
push 0x6a6e70
call fcn.0042abc0
add esp, 0xc
lea ecx, [edi + 0x110]
xor esi, esi
test ecx, ecx
je 0x541933
lea edx, [ebp - 0x44]
call fcn.005d2570
mov edi, dword [edi + 0x10c]
lea edx, [ebp - 0x40]
mov esi, 1
test edi, edi
je 0x541933
lea ecx, [edi + 4]
test ecx, ecx
je 0x541933
call fcn.005d2570
mov edi, dword [edi]
inc esi
add edx, 4
cmp esi, 0xa
jl 0x541918
push 0x28
lea edx, [ebp - 0x44]
mov ecx, 0x6ac630
call fcn.004250e0
add esp, 4
test al, al
je 0x541951
cmp dword [0x6ac658], esi
je 0x54197e
movups xmm0, xmmword [ebp - 0x44]
mov dword [0x6ac658], esi
mov al, 1
movups xmmword [0x6ac630], xmm0
movups xmm0, xmmword [ebp - 0x34]
movups xmmword [0x6ac640], xmm0
movq xmm0, qword [ebp - 0x24]
movq qword [0x6ac650], xmm0
jmp 0x541984
mov al, byte [ebp - 0xf1]
test esi, esi
jne 0x5419af
cmp dword [0x6ac62c], esi
jne 0x5419af
test al, al
je 0x541c3f
push str.There_are_no_DNS_servers_known_by_system._n
push 0x6a6e70
call fcn.0042abc0
add esp, 8
jmp 0x541ab8
test al, al
je 0x541c3f
call fcn.005a45d0
mov dword [ebp - 0xf8], eax
mov byte [ebp - 4], 2
test eax, eax
je 0x5419ee
push str.DNS_Servers:
mov ecx, eax
call fcn.005a5480
mov dword [ebp - 0xfc], eax
test eax, eax
je 0x5419f8
cmp dword [eax + 0xc], 0
jne 0x5419f8
push ecx
mov ecx, eax
call fcn.005a47b0
mov dword [ebp - 0xfc], 0
xor edi, edi
mov byte [ebp - 4], 3
test esi, esi
jle 0x541a2d
nop dword [eax]
nop word [eax + eax]
push dword [ebp + edi*4 - 0x44]
lea eax, [ebp - 0xfc]
push 0x669e7c
push eax
call fcn.005ac0f0
inc edi
add esp, 0xc
cmp edi, esi
jl 0x541a10
xor edi, edi
cmp dword [0x6ac62c], edi
jle 0x541a6f
mov eax, 0x6adb98
mov dword [ebp - 0xf8], eax
push eax
lea eax, [ebp - 0xfc]
push 0x669e80
push eax
call fcn.005ac0f0
mov eax, dword [ebp - 0xf8]
inc edi
add eax, 0x10
add esp, 0xc
mov dword [ebp - 0xf8], eax
cmp edi, dword [0x6ac62c]
jl 0x541a42
push 1
push 0x651cf8
lea ecx, [ebp - 0xfc]
call fcn.005a6b10
lea eax, [ebp - 0xfc]
push eax
push 0x653384
push 0x6a6e70
call fcn.0042abc0
mov byte [ebp - 4], 1
add esp, 0xc
mov ecx, dword [ebp - 0xfc]
test ecx, ecx
je 0x541ab8
or eax, 0xffffffff
lock xadd dword [ecx], eax
dec eax
jne 0x541ab8
push ecx
call fcn.005a47b0
lea ecx, [ebp - 0xf0]
call fcn.004705b0
xor edi, edi
mov byte [ebp - 4], 4
mov dword [ebp - 0xac], 7
test esi, esi
jle 0x541b1f
mov edx, 0x658e10
nop dword [eax]
lea ecx, [edi*4]
cmp edi, 4
jae 0x541af7
mov eax, dword [ebp + ecx - 0x44]
mov dword [ebp + ecx - 0x9c], eax
push dword [ebp + ecx - 0x44]
test edi, edi
mov eax, str.___I
cmove eax, edx
push eax
lea eax, [ebp - 0xa4]
push eax
call fcn.005ac0f0
inc edi
add esp, 0xc
mov edx, 0x658e10
cmp edi, esi
jl 0x541ae0
xor eax, eax
mov dword [ebp - 0xf8], eax
cmp dword [0x6ac62c], eax
jle 0x541ba6
xor edi, edi
lea edx, [edi + 0x6adb98]
cmp eax, 4
jge 0x541b6c
mov eax, dword [edx]
mov ecx, dword [edx + 4]
mov dword [ebp + edi - 0x8c], eax
mov eax, dword [edi + 0x6adba0]
mov dword [ebp + edi - 0x88], ecx
mov ecx, dword [edi + 0x6adba4]
mov dword [ebp + edi - 0x84], eax
mov eax, dword [ebp - 0xf8]
mov dword [ebp + edi - 0x80], ecx
add eax, esi
mov ecx, str.___J
test eax, eax
mov eax, 0x65f694
push edx
cmovle ecx, eax
lea eax, [ebp - 0xa4]
push ecx
push eax
call fcn.005ac0f0
mov eax, dword [ebp - 0xf8]
add esp, 0xc
inc eax
add edi, 0x10
mov dword [ebp - 0xf8], eax
cmp eax, dword [0x6ac62c]
jl 0x541b31
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
cmp eax, ecx
je 0x541be7
test eax, eax
je 0x541bc9
lock inc dword [eax]
mov eax, dword [ebp - 0xa4]
mov ecx, dword [ebp - 0xa8]
or esi, 0xffffffff
mov dword [ebp - 0xa8], eax
test ecx, ecx
je 0x541bea
mov eax, esi
lock xadd dword [ecx], eax
dec eax
jne 0x541bea
push ecx
call fcn.005a47b0
jmp 0x541bea
or esi, 0xffffffff
lea eax, [ebp - 0xf0]
push eax
call fcn.00423a80
mov ecx, dword [ebp - 0xa0]
test ecx, ecx
je 0x541c0f
mov eax, esi
lock xadd dword [ecx], eax
dec eax
jne 0x541c0f
push ecx
call fcn.005a47b0
mov ecx, dword [ebp - 0xa4]
test ecx, ecx
je 0x541c28
mov eax, esi
lock xadd dword [ecx], eax
dec eax
jne 0x541c28
push ecx
call fcn.005a47b0
mov ecx, dword [ebp - 0xa8]
test ecx, ecx
je 0x541c3f
lock xadd dword [ecx], esi
dec esi
jne 0x541c3f
push ecx
call fcn.005a47b0
push dword [ebp - 0x104]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov ebx, dword [ebp - 0x14]
mov esi, dword [0x6ac16c]
mov edi, dword [esi + 0xc]
push dword [esi]
dec dword [esi + 4]
dec edi
dec dword [esi + 8]
mov dword [esi + 0xc], edi
call dword [sym.imp.KERNEL32.dll_ReleaseMutex]
test eax, eax
jne 0x541c92
inc dword [esi + 0xc]
inc dword [esi + 8]
inc dword [esi + 4]
jmp 0x541ca9
test edi, edi
jne 0x541ca9
push dword [esi]
call dword [sym.imp.KERNEL32.dll_CloseHandle]
push 0x10
push esi
call fcn.00606a78
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x1c]
xor ecx, ebp
call fcn.00606a47
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret