Function at 0x438240
Capabilities:
Check for time delay via gettickcount

Disassembly:
push ebp
mov ebp, esp
mov eax, dword fs:[0x2c]
sub esp, 0xb4
mov ecx, dword [0x4e21e8]
push ebx
push esi
mov esi, dword [eax + ecx*4]
mov eax, dword [0x4e0484]
push edi
cmp eax, dword [esi + 4]
jg 0x43875f
mov eax, dword [0x4e04a8]
mov ebx, 0x4e0490
cmp eax, dword [esi + 4]
jg 0x438799
call sub.KERNEL32.dll_GetTickCount
mov ecx, ebx
mov esi, eax
call fcn.00468cd2
cmp byte [ebp + 0xc], 0
jne 0x4382d8
mov ecx, dword [0x4e0488]
test ecx, ecx
je 0x4382d8
push esi
push ecx
call fcn.00459389
pop ecx
pop ecx
cmp eax, 0x36ee80
jae 0x4382d8
mov esi, dword [ebp + 8]
mov ecx, esi
mov eax, dword [esi]
call dword [eax + 0x18]
mov eax, dword [esi]
mov edi, 0x4d247c
push edi
mov ecx, esi
call dword [eax + 0xc]
mov ecx, ebx
call fcn.00469116
mov al, byte [0x4e048c]
jmp 0x43875a
xor ebx, ebx
mov dword [0x4e0488], esi
lea ecx, [ebp - 0xb4]
mov byte [0x4e048c], bl
call fcn.004081b3
lea ecx, [ebp - 0x10]
call fcn.00428cde
mov edi, 0x20009
lea ecx, [ebp - 0xb4]
push edi
push 0x40
push str.SystemCurrentControlSetServicesVxDMSTCP
mov esi, reloc.OLEAUT32.dll_SysReAllocString
push esi
call fcn.0045ea6e
test eax, eax
je 0x43839a
push ebx
push 0x49dd3d
push str.EnableDNS
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045e263
push 0x4a56d0
lea ecx, [ebp - 0x1c]
call fcn.004275fb
test al, al
je 0x438387
push ebx
push 0x49dd3d
push str.NameServer
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045e263
push eax
lea ecx, [ebp - 0x10]
call fcn.0042406c
lea ecx, [ebp - 0x2c]
call fcn.00426615
push 1
lea eax, [ebp + 0xc]
mov byte [ebp + 0xc], 0x20
push eax
push ebx
push dword [ebp - 0xc]
lea ecx, [ebp - 0x10]
call fcn.0042d5ca
lea ecx, [ebp - 0xb4]
call fcn.0045d37f
lea ecx, [ebp - 0x1c]
call fcn.00426615
push edi
push 0x40
push str.SystemCurrentControlSetServicesVxDDHCPDhcpInfo00
push esi
lea ecx, [ebp - 0xb4]
call fcn.0045ea6e
test eax, eax
je 0x4384c7
push ebx
push 0x49dd3d
push str.OptionInfo
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045e263
lea ecx, [ebp - 0xb4]
call fcn.0045d37f
mov esi, ebx
cmp dword [ebp - 0x18], ebx
jle 0x4384ba
push esi
lea ecx, [ebp - 0x1c]
inc esi
call fcn.00424eea
movsx edi, al
test al, al
je 0x4384aa
push esi
inc esi
lea ecx, [ebp - 0x1c]
mov dword [ebp - 0x30], esi
call fcn.00424eea
movzx ebx, al
mov dword [ebp - 0x20], ebx
cmp ebx, 0x100
jae 0x4384b3
cmp edi, 6
jne 0x4384a8
push 4
push ebx
call fcn.0048a12c
mov dword [ebp + 0xc], eax
pop ecx
pop ecx
test edx, edx
jne 0x4384a8
xor edi, edi
mov ebx, esi
test eax, eax
jle 0x4384a5
mov esi, eax
push ebx
lea ecx, [ebp - 0x1c]
call fcn.0042b974
test eax, eax
je 0x4384a2
xor ecx, ecx
mov dword [ebp - 4], ecx
lea ecx, [ebp - 4]
push dword [eax]
call fcn.0046acd2
lea ecx, [ebp - 4]
call fcn.00439649
test al, al
jne 0x43849a
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 4]
call fcn.0046a96d
push eax
lea ecx, [ebp - 0x10]
call fcn.0042406c
lea ecx, [ebp - 0x2c]
call fcn.00426615
push 1
lea eax, [ebp + 0xc]
mov byte [ebp + 0xc], 0x20
push eax
push 0
push dword [ebp - 0xc]
lea ecx, [ebp - 0x10]
call fcn.0042d5ca
add ebx, 4
inc edi
cmp edi, esi
jl 0x43843e
mov esi, dword [ebp - 0x30]
mov ebx, dword [ebp - 0x20]
add esi, ebx
cmp esi, dword [ebp - 0x18]
jl 0x4383e6
xor ebx, ebx
mov edi, 0x20009
lea ecx, [ebp - 0x1c]
call fcn.00426615
mov esi, reloc.OLEAUT32.dll_SysReAllocString
push edi
push 0x40
push str.SystemCurrentControlSetServicesTcpipParameters
push esi
lea ecx, [ebp - 0xb4]
call fcn.0045ea6e
test eax, eax
je 0x43852b
push ebx
push 0x49dd3d
push str.DhcpNameServer
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045e263
push eax
lea ecx, [ebp - 0x10]
call fcn.0042406c
lea ecx, [ebp - 0x2c]
call fcn.00426615
push 1
lea eax, [ebp + 0xc]
mov byte [ebp + 0xc], 0x20
push eax
push ebx
push dword [ebp - 0xc]
lea ecx, [ebp - 0x10]
call fcn.0042d5ca
lea ecx, [ebp - 0xb4]
call fcn.0045d37f
lea ecx, [ebp - 0x10]
call fcn.0040b4a8
mov esi, 0x49db64
test al, al
je 0x43866e
push edi
push 0x40
push str.SystemCurrentControlSetServicesTcpipParametersInterfaces
push reloc.OLEAUT32.dll_SysReAllocString
lea ecx, [ebp - 0xb4]
call fcn.0045ea6e
test eax, eax
je 0x43866e
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x54], ebx
mov dword [ebp - 0x58], esi
call fcn.00406a2c
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045de55
test eax, eax
je 0x438658
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x70]
call fcn.00402541
jmp 0x438648
mov eax, dword [ebp - 0x5c]
mov ecx, 0x49cb70
push edi
push 0x40
cmp dword [eax], 0
cmovne ecx, dword [eax]
push ecx
lea ecx, [ebp - 0xb4]
call fcn.0045ed1e
test eax, eax
je 0x438648
push ebx
push 0x49dd3d
push str.NameServer
lea eax, [ebp - 0x2c]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045e263
push eax
lea ecx, [ebp - 0x10]
call fcn.0042406c
lea ecx, [ebp - 0x2c]
call fcn.00426615
push 1
lea eax, [ebp + 0xc]
mov byte [ebp + 0xc], 0x20
push eax
push ebx
push dword [ebp - 0xc]
lea ecx, [ebp - 0x10]
call fcn.0042d5ca
push ebx
push 0x49dd3d
push str.DhcpNameServer
lea eax, [ebp - 0x1c]
push eax
lea ecx, [ebp - 0xb4]
call fcn.0045e263
push eax
lea ecx, [ebp - 0x10]
call fcn.0042406c
lea ecx, [ebp - 0x1c]
call fcn.00426615
push 1
lea eax, [ebp + 0xc]
mov byte [ebp + 0xc], 0x20
push eax
push ebx
push dword [ebp - 0xc]
lea ecx, [ebp - 0x10]
call fcn.0042d5ca
lea ecx, [ebp - 0xb4]
call fcn.0045d37f
lea ecx, [ebp - 0x70]
call fcn.004025a6
test al, al
jne 0x438596
lea ecx, [ebp - 0xb4]
call fcn.0045d37f
lea ecx, [ebp - 0x58]
mov dword [ebp - 0x58], esi
call fcn.0040ab81
lea ecx, [ebp - 0x10]
call fcn.00431a43
lea ecx, [ebp - 0x10]
call fcn.00431a2b
and dword [ebp - 0x40], 0
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x44], esi
call fcn.00406a2c
push 8
push str.____r_n
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x10]
call fcn.00427992
lea eax, [ebp - 0x44]
push eax
call fcn.00436f87
pop ecx
lea eax, [ebp - 0x44]
push eax
lea ecx, [ebp - 0x70]
call fcn.00402541
lea ecx, [ebp - 0x70]
call fcn.004025a6
mov esi, dword [ebp + 8]
jmp 0x438708
mov eax, dword [esi]
mov ecx, esi
push 0
call dword [eax + 4]
mov ecx, dword [ebp - 0x5c]
mov edx, 0x49cb70
mov edi, eax
push 0
cmp dword [ecx], 0
cmovne edx, dword [ecx]
mov ecx, edi
push edx
call fcn.0046abc7
test al, al
je 0x4386f9
mov ecx, edi
call fcn.00439649
test al, al
jne 0x4386f9
mov bl, 1
jmp 0x438700
mov eax, dword [esi]
mov ecx, esi
call dword [eax + 0x2c]
lea ecx, [ebp - 0x70]
call fcn.004025a6
test al, al
jne 0x4386c3
mov eax, dword [0x4d247c]
mov edi, 0x4d247c
mov ecx, edi
call dword [eax + 0x18]
mov eax, dword [0x4d247c]
mov ecx, edi
push esi
call dword [eax + 0xc]
mov ecx, 0x4e0490
mov byte [0x4e048c], bl
call fcn.00469116
lea ecx, [ebp - 0x44]
mov dword [ebp - 0x44], 0x49db64
call fcn.0040ab81
lea ecx, [ebp - 0x10]
call fcn.00426615
lea ecx, [ebp - 0xb4]
call fcn.00408581
mov al, bl
pop edi
pop esi
pop ebx
leave
ret
mov edi, 0x4e0484
push edi
call fcn.0046c939
cmp dword [0x4e0484], 0xffffffff
pop ecx
jne 0x43826c
mov ecx, 0x4d247c
call fcn.004073c2
push 0x49b63c
call fcn.0046c724
push edi
call fcn.0046c8ef
pop ecx
pop ecx
jmp 0x43826c
mov esi, 0x4e04a8
push esi
call fcn.0046c939
cmp dword [0x4e04a8], 0xffffffff
pop ecx
jne 0x438282
mov ecx, ebx
call fcn.004683b3
push 0x49b628
call fcn.0046c724
push esi
call fcn.0046c8ef
pop ecx
pop ecx
jmp 0x438282