Function at 0x453330
Capabilities:
Set socket configuration

Disassembly:
sub esp, 0x3c0
mov eax, dword [0x481630]
xor eax, esp
mov dword [esp + 0x3bc], eax
mov eax, dword [esp + 0x3c4]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x3c8]
push edi
mov dword [esp + 0xc], eax
mov dword [eax], 0
xor eax, eax
mov ecx, 0x25
lea edi, [esp + 0x14]
rep stosd dword es:[edi], eax
lea ecx, [esp + 0x14]
push ecx
mov dword [esp + 0x18], 0x94
call dword [0x471344]
test eax, eax
je 0x45338d
mov eax, dword [esp + 0x24]
test eax, eax
jne 0x4533a5
xor eax, eax
pop edi
mov ecx, dword [esp + 0x3bc]
xor ecx, esp
call fcn.0045856e
add esp, 0x3c0
ret
push 0x208
lea edx, [esp + 0x1bc]
push edx
call dword [0x47112c]
cmp dword [esp + 0x24], 1
jne 0x4533ce
push str.hosts
lea eax, [esp + eax + 0x1bc]
push eax
jmp 0x4533db
push str._system32driversetchosts
lea ecx, [esp + eax + 0x1bc]
push ecx
call dword [0x471310]
push ebx
lea edx, [esp + 0x1bc]
push 0x476bbc
push edx
call fcn.0045a5a1
mov ebx, eax
add esp, 8
test ebx, ebx
mov dword [esp + 0xc], ebx
jne 0x453418
pop ebx
pop edi
mov ecx, dword [esp + 0x3bc]
xor ecx, esp
call fcn.0045856e
add esp, 0x3c0
ret
push ebp
push esi
mov esi, 0x400
push esi
mov dword [esp + 0x14], esi
call fcn.00458fcb
add esp, 4
mov ebp, eax
test ebp, ebp
push ebx
jne 0x453442
call fcn.0045a4f4
add esp, 4
xor eax, eax
jmp 0x453637
xor eax, eax
push 0x400
mov ecx, 0x100
mov edi, ebp
push ebp
rep stosd dword es:[edi], eax
call fcn.0045ab90
add esp, 0xc
test eax, eax
je 0x453623
mov al, byte [esi + ebp - 2]
xor ebx, ebx
test al, al
je 0x4534cc
jmp 0x453473
mov esi, dword [esp + 0x10]
cmp al, 0xa
je 0x4534cc
add esi, 0x400
push esi
push ebp
mov dword [esp + 0x18], esi
call fcn.00459794
add esp, 8
test eax, eax
je 0x4534cc
mov ebp, eax
inc ebx
sub eax, ebx
lea esi, [eax + esi - 0x400]
xor eax, eax
mov ecx, 0x100
lea edi, [esi + ebx]
rep stosd dword es:[edi], eax
mov eax, dword [esp + 0x14]
push eax
push 0x400
push esi
call fcn.0045ab90
add esp, 0xc
test eax, eax
je 0x4534c8
mov al, byte [esi + 0x3fe]
test al, al
jne 0x45346f
mov esi, dword [esp + 0x10]
cmp byte [ebp], 0x23
je 0x453608
push 0x476bb8
push ebp
call fcn.0045ab50
add esp, 8
test eax, eax
je 0x4534eb
mov byte [eax], 0
movsx ecx, byte [ebp]
push ecx
mov edi, ebp
call fcn.0045a379
add esp, 4
test eax, eax
je 0x453512
mov edi, edi
movsx edx, byte [edi + 1]
inc edi
push edx
call fcn.0045a379
add esp, 4
test eax, eax
jne 0x453500
push 0x4724f4
push edi
call fcn.0045ab50
mov esi, eax
add esp, 8
test esi, esi
je 0x45352a
mov byte [esi], 0
inc esi
mov ebx, dword [0x471314]
push edi
call ebx
test eax, eax
jle 0x453604
cmp eax, 0xf
jg 0x453604
push edi
call fcn.0046c900
cmp eax, 0xffffffff
je 0x453604
test eax, eax
jne 0x45356f
push 0xf
push str.255.255.255.255
push edi
call fcn.0045ab10
add esp, 0xc
test eax, eax
jne 0x453604
push edi
lea eax, [esp + 0xb8]
push eax
call dword [0x471310]
test esi, esi
je 0x453604
mov al, byte [esi]
test al, al
je 0x453604
movsx ecx, al
push ecx
call fcn.0045a379
add esp, 4
test eax, eax
je 0x4535b2
lea esp, [esp]
movsx edx, byte [esi + 1]
inc esi
push edx
call fcn.0045a379
add esp, 4
test eax, eax
jne 0x4535a0
push 0x4724f4
push esi
mov edi, esi
call fcn.0045ab50
mov esi, eax
add esp, 8
test esi, esi
je 0x4535cc
mov byte [esi], 0
inc esi
push edi
call ebx
test eax, eax
jle 0x453600
cmp eax, 0xff
jg 0x453600
push edi
lea eax, [esp + 0xc8]
push eax
call dword [0x471310]
lea ecx, [esp + 0xb4]
push ecx
mov ecx, dword [esp + 0x20]
call fcn.004532f0
mov eax, dword [esp + 0x18]
inc dword [eax]
test esi, esi
jne 0x453586
mov esi, dword [esp + 0x10]
mov edx, dword [esp + 0x14]
push edx
push esi
push ebp
call fcn.0045ab90
add esp, 0xc
test eax, eax
jne 0x453463
mov ebx, dword [esp + 0x14]
push ebp
call fcn.0045877a
push ebx
call fcn.0045a4f4
add esp, 8
mov eax, 1
mov ecx, dword [esp + 0x3cc]
pop esi
pop ebp
pop ebx
pop edi
xor ecx, esp
call fcn.0045856e
add esp, 0x3c0
ret