Function at 0x466860
Capabilities:
Check for time delay via gettickcount
Connect network resource

Disassembly:
push ebp
mov ebp, esp
push ecx
mov ecx, 0x74
push 0
push 0
dec ecx
jne 0x466869
push ecx
xchg dword [ebp - 4], ecx
push ebx
push esi
push edi
mov dword [ebp - 4], ecx
mov dword [ebp - 0x10], edx
mov ebx, eax
mov edi, dword [ebp + 8]
mov eax, dword [ebp - 4]
call fcn.004053c4
mov eax, dword [ebp + 0x28]
call fcn.004053c4
mov eax, dword [ebp + 0x24]
call fcn.004053c4
mov eax, dword [ebp + 0x1c]
call fcn.004053c4
mov eax, dword [ebp + 0x18]
call fcn.004053c4
mov eax, dword [ebp + 0x14]
call fcn.004053c4
xor eax, eax
push ebp
push 0x4673e5
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [edi], 0
mov byte [ebp - 0x11], 0
mov dl, 4
mov eax, dword [ebx + 0x68]
call fcn.004629e8
mov dl, 1
mov eax, dword [ebx + 0x68]
call fcn.00462994
mov eax, dword [ebx + 0xa0]
call fcn.00416484
dec eax
jle 0x46694e
lea edx, [ebp - 0x320]
mov eax, dword [ebx + 0x34]
call fcn.00409140
push dword [ebp - 0x320]
push 0x467404
push dword [ebx + 0x10c]
push 0x467404
mov eax, dword [ebx + 0xa0]
call fcn.0046be38
lea edx, [ebp - 0x324]
call fcn.00409140
push dword [ebp - 0x324]
push 0x467410
lea eax, [ebp - 0x31c]
mov edx, 6
call fcn.004052d8
mov edx, dword [ebp - 0x31c]
mov eax, dword [ebx + 0x48]
call fcn.00440004
jmp 0x466958
xor edx, edx
mov eax, dword [ebx + 0x48]
call fcn.00440004
cmp dword [ebp + 0x24], 0
je 0x4669c2
push dword [ebx + 0x7c]
push 0x467404
lea edx, [ebp - 0x32c]
mov esi, dword [ebx + 0x48]
mov eax, esi
call fcn.0043ffd4
push dword [ebp - 0x32c]
lea edx, [ebp - 0x330]
mov eax, dword [ebp + 0x1c]
call fcn.00464668
push dword [ebp - 0x330]
push 0x467404
push dword [ebx + 0x110]
push 0x467404
push dword [ebp + 0x24]
lea eax, [ebp - 0x328]
mov edx, 8
call fcn.004052d8
mov edx, dword [ebp - 0x328]
mov eax, esi
call fcn.00440004
jmp 0x466a35
push dword [ebx + 0x7c]
push 0x467404
lea edx, [ebp - 0x338]
mov esi, dword [ebx + 0x48]
mov eax, esi
call fcn.0043ffd4
push dword [ebp - 0x338]
lea edx, [ebp - 0x33c]
mov eax, dword [ebp + 0x1c]
call fcn.00464668
push dword [ebp - 0x33c]
push 0x467404
push dword [ebx + 0x110]
push 0x467404
lea edx, [ebp - 0x340]
mov eax, dword [ebp + 0x1c]
call fcn.00409a44
push dword [ebp - 0x340]
lea eax, [ebp - 0x334]
mov edx, 8
call fcn.004052d8
mov edx, dword [ebp - 0x334]
mov eax, esi
call fcn.00440004
cmp dword [ebp + 0x24], 0
je 0x466aaf
mov dword [ebp - 0x314], 1
mov eax, 0x467414
mov dword [ebp - 0x308], eax
mov eax, dword [ebp + 0x24]
call fcn.004053d4
mov dword [ebp - 0x304], eax
mov eax, 0x467414
mov dword [ebp - 0x2fc], eax
xor esi, esi
push esi
mov eax, dword [ebp - 4]
call fcn.004053d4
push eax
mov eax, dword [ebp + 0x28]
call fcn.004053d4
push eax
lea eax, [ebp - 0x318]
push eax
call sub.mpr.dll_WNetAddConnection2A
test eax, eax
je 0x466aaf
cmp word [ebx + 0xd2], 0
je 0x467312
mov edx, ebx
mov eax, dword [ebx + 0xd4]
call dword [ebx + 0xd0]
jmp 0x467312
xor eax, eax
mov dword [ebp - 0x24], eax
call sub.kernel32.dll_GetTickCount
mov dword [ebp - 0x28], eax
cmp dword [ebp + 0x24], 0
je 0x466adc
push dword [ebp + 0x24]
push 0x467420
push dword [ebp + 0x1c]
lea eax, [ebp - 8]
mov edx, 3
call fcn.004052d8
jmp 0x466ae7
lea eax, [ebp - 8]
mov edx, dword [ebp + 0x1c]
call fcn.00404fdc
lea edx, [ebp - 0x344]
mov eax, dword [ebp - 8]
call fcn.00408abc
mov edx, dword [ebp - 0x344]
mov eax, 0x46742c
call fcn.00405520
dec eax
jne 0x466b1a
lea eax, [ebp - 8]
mov ecx, 7
mov edx, 1
call fcn.0040547c
cmp dword [ebp + 0x14], 0
je 0x466b2d
lea eax, [ebp - 0xc]
mov edx, dword [ebp + 0x14]
call fcn.00404fdc
jmp 0x466b38
lea edx, [ebp - 0xc]
mov eax, dword [ebp + 0x1c]
call fcn.00464668
lea ecx, [ebp - 0x348]
mov edx, dword [ebp - 0xc]
mov eax, dword [ebp + 0x18]
call fcn.00464b60
mov edx, dword [ebp - 0x348]
lea eax, [ebp - 0xc]
call fcn.00404fdc
lea eax, [ebx + 0x6c]
mov edx, dword [ebp - 0xc]
call fcn.00404f98
lea eax, [ebx + 0x70]
mov edx, dword [ebp + 0x18]
call fcn.00404f98
mov eax, dword [ebp - 8]
mov edx, dword [ebp - 0xc]
call fcn.0040536c
jne 0x466bd1
cmp word [ebx + 0xaa], 0
je 0x466b94
xor ecx, ecx
mov edx, ebx
mov eax, dword [ebx + 0xac]
call dword [ebx + 0xa8]
cmp word [ebx + 0xb2], 0
je 0x467312
lea eax, [ebp - 0x34c]
mov ecx, dword [ebp - 8]
mov edx, 0x46743c
call fcn.0040525c
mov eax, dword [ebp - 0x34c]
push eax
xor ecx, ecx
mov edx, ebx
mov eax, dword [ebx + 0xb4]
call dword [ebx + 0xb0]
jmp 0x467312
mov eax, 0x4000
call fcn.00402eb8
mov dword [ebp - 0x20], eax
xor edx, edx
mov eax, dword [ebp - 8]
call fcn.004094ec
mov esi, eax
mov dword [ebp - 0x1ac], esi
inc esi
jne 0x466c5d
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
cmp word [ebx + 0xaa], 0
je 0x466c1d
mov ecx, 1
mov edx, ebx
mov eax, dword [ebx + 0xac]
call dword [ebx + 0xa8]
cmp word [ebx + 0xb2], 0
je 0x467312
lea eax, [ebp - 0x350]
mov ecx, dword [ebp - 8]
mov edx, 0x467464
call fcn.0040525c
mov eax, dword [ebp - 0x350]
push eax
mov ecx, 1
mov edx, ebx
mov eax, dword [ebx + 0xb4]
call dword [ebx + 0xb0]
jmp 0x467312
cmp byte [ebp + 0x10], 0
jne 0x466c71
cmp word [ebx + 0x152], 0
je 0x466d5c
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0x3c]
push eax
lea eax, [ebp - 0x34]
push eax
mov esi, dword [ebp - 0x1ac]
push esi
call sub.kernel32.dll_GetFileTime
lea eax, [ebp - 0x4c]
push eax
lea eax, [ebp - 0x44]
push eax
call sub.kernel32.dll_FileTimeToLocalFileTime
lea edx, [ebp - 0x58]
lea eax, [ebp - 0x4c]
call fcn.0046459c
cmp word [ebx + 0x152], 0
je 0x466ce9
mov byte [ebp - 0x29], 1
push dword [ebp - 0x54]
push dword [ebp - 0x58]
lea eax, [ebp - 0x29]
push eax
mov ecx, dword [ebp - 0x10]
mov edx, ebx
mov eax, dword [ebx + 0x154]
call dword [ebx + 0x150]
cmp byte [ebp - 0x29], 0
jne 0x466d4e
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
mov eax, esi
call fcn.0040961c
jmp 0x467312
fld qword [ebp - 0x58]
mov eax, dword [ebp + 0xc]
fcomp qword [eax]
wait
fnstsw ax
sahf
ja 0x466d4e
mov byte [edi], 1
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x58]
mov dword [eax], edx
mov edx, dword [ebp - 0x54]
mov dword [eax + 4], edx
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
mov eax, esi
call fcn.0040961c
cmp word [ebx + 0x132], 0
je 0x467312
mov eax, dword [ebp + 0xc]
push dword [eax + 4]
push dword [eax]
push dword [ebp - 0x54]
push dword [ebp - 0x58]
mov ecx, dword [ebp - 8]
mov edx, ebx
mov eax, dword [ebx + 0x134]
call dword [ebx + 0x130]
jmp 0x467312
mov eax, dword [ebp + 0xc]
mov edx, dword [ebp - 0x58]
mov dword [eax], edx
mov edx, dword [ebp - 0x54]
mov dword [eax + 4], edx
mov ecx, 2
xor edx, edx
mov eax, dword [ebp - 0x1ac]
call fcn.004095c0
mov esi, eax
cmp esi, 0xffffffff
jne 0x466dea
mov eax, dword [ebp - 0x1ac]
call fcn.0040961c
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
cmp word [ebx + 0xaa], 0
je 0x466daa
mov ecx, 2
mov edx, ebx
mov eax, dword [ebx + 0xac]
call dword [ebx + 0xa8]
cmp word [ebx + 0xb2], 0
je 0x467312
lea eax, [ebp - 0x354]
mov ecx, dword [ebp - 8]
mov edx, 0x467488
call fcn.0040525c
mov eax, dword [ebp - 0x354]
push eax
mov ecx, 2
mov edx, ebx
mov eax, dword [ebx + 0xb4]
call dword [ebx + 0xb0]
jmp 0x467312
xor ecx, ecx
xor edx, edx
mov eax, dword [ebp - 0x1ac]
call fcn.004095c0
mov eax, dword [ebp - 0xc]
call fcn.00409664
test al, al
je 0x466e70
mov byte [ebp - 0x29], 1
cmp word [ebx + 0xea], 0
je 0x466e28
lea eax, [ebp - 0x29]
push eax
mov ecx, dword [ebp - 0xc]
mov edx, ebx
mov eax, dword [ebx + 0xec]
call dword [ebx + 0xe8]
cmp byte [ebp - 0x29], 0
jne 0x466e4b
mov eax, dword [ebp - 0x1ac]
call fcn.0040961c
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
jmp 0x467312
cmp byte [ebx + 0x178], 0
je 0x466e70
lea edx, [ebp - 0x358]
mov eax, dword [ebp - 0xc]
call fcn.00465bbc
mov edx, dword [ebp - 0x358]
lea eax, [ebp - 0xc]
call fcn.00404fdc
lea edx, [ebp - 0x35c]
mov eax, dword [ebp - 0xc]
call fcn.00409a10
mov eax, dword [ebp - 0x35c]
call fcn.00464c34
mov eax, dword [ebp - 0xc]
call fcn.00409544
mov edi, eax
mov dword [ebp - 0x2f8], edi
test edi, edi
jge 0x466f12
mov eax, dword [ebp - 0x1ac]
call fcn.0040961c
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
cmp word [ebx + 0xaa], 0
je 0x466ed2
mov ecx, 3
mov edx, ebx
mov eax, dword [ebx + 0xac]
call dword [ebx + 0xa8]
cmp word [ebx + 0xb2], 0
je 0x467312
lea eax, [ebp - 0x360]
mov ecx, dword [ebp - 0xc]
mov edx, 0x4674ac
call fcn.0040525c
mov eax, dword [ebp - 0x360]
push eax
mov ecx, 3
mov edx, ebx
mov eax, dword [ebx + 0xb4]
call dword [ebx + 0xb0]
jmp 0x467312
mov byte [ebx + 0x38], 0
mov edi, dword [ebp - 0x20]
mov edx, edi
mov ecx, 0x4000
mov eax, dword [ebp - 0x1ac]
call fcn.00409568
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0
jge 0x466fb8
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
mov eax, dword [ebp - 0x1ac]
call fcn.0040961c
mov eax, dword [ebp - 0x2f8]
call fcn.0040961c
cmp word [ebx + 0xaa], 0
je 0x466f78
mov ecx, 4
mov edx, ebx
mov eax, dword [ebx + 0xac]
call dword [ebx + 0xa8]
cmp word [ebx + 0xb2], 0
je 0x467312
lea eax, [ebp - 0x364]
mov ecx, dword [ebp - 8]
mov edx, 0x4674d0
call fcn.0040525c
mov eax, dword [ebp - 0x364]
push eax
mov ecx, 4
mov edx, ebx
mov eax, dword [ebx + 0xb4]
call dword [ebx + 0xb0]
jmp 0x467312
mov edx, edi
mov ecx, dword [ebp - 0x18]
mov eax, dword [ebp - 0x2f8]
call fcn.00409594
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 0
jge 0x467055
mov eax, dword [ebp - 0x1ac]
call fcn.0040961c
mov eax, dword [ebp - 0x2f8]
call fcn.0040961c
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
cmp word [ebx + 0xaa], 0
je 0x467015
mov ecx, 5
mov edx, ebx
mov eax, dword [ebx + 0xac]
call dword [ebx + 0xa8]
cmp word [ebx + 0xb2], 0
je 0x467312
lea eax, [ebp - 0x368]
mov ecx, dword [ebp - 0xc]
mov edx, 0x4674f4
call fcn.0040525c
mov eax, dword [ebp - 0x368]
push eax
mov ecx, 5
mov edx, ebx
mov eax, dword [ebx + 0xb4]
call dword [ebx + 0xb0]
jmp 0x467312
mov eax, dword [ebp - 0x1c]
add dword [ebp - 0x24], eax
test esi, esi
jle 0x4670a7
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x370], eax
xor eax, eax
mov dword [ebp - 0x36c], eax
fild qword [ebp - 0x370]
fstp qword [ebp - 0x60]
wait
mov dword [ebp - 0x374], esi
fild dword [ebp - 0x374]
fdivr qword [ebp - 0x60]
fstp qword [ebp - 0x60]
wait
fld dword [0x467518]
fmul qword [ebp - 0x60]
call fcn.00403328
mov edx, eax
mov eax, dword [ebx + 0x44]
call fcn.004620b8
jmp 0x4670b4
mov edx, 0x64
mov eax, dword [ebx + 0x44]
call fcn.004620b8
push dword [ebx + 0x80]
push 0x467404
lea edx, [ebp - 0x37c]
mov eax, dword [ebp - 0x24]
call fcn.0046472c
push dword [ebp - 0x37c]
push 0x467404
push dword [ebx + 0x10c]
push 0x467404
lea edx, [ebp - 0x380]
mov eax, esi
call fcn.0046472c
push dword [ebp - 0x380]
lea eax, [ebp - 0x378]
mov edx, 7
call fcn.004052d8
mov edx, dword [ebp - 0x378]
mov eax, dword [ebx + 0x4c]
call fcn.00440004
call sub.kernel32.dll_GetTickCount
sub eax, dword [ebp - 0x28]
inc eax
mov dword [ebp - 0x370], eax
xor eax, eax
mov dword [ebp - 0x36c], eax
fild qword [ebp - 0x370]
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x38c], eax
xor eax, eax
mov dword [ebp - 0x388], eax
fild qword [ebp - 0x38c]
fdivrp st(1)
fmul dword [0x46751c]
call fcn.00403328
lea edx, [ebp - 0x384]
call fcn.00464880
mov edx, dword [ebp - 0x384]
lea eax, [ebx + 0x16c]
call fcn.00404f98
push dword [ebx + 0x84]
push 0x467404
push dword [ebx + 0x16c]
lea eax, [ebp - 0x390]
mov edx, 3
call fcn.004052d8
mov edx, dword [ebp - 0x390]
mov eax, dword [ebx + 0x50]
call fcn.00440004
cmp byte [ebx + 0x11d], 0
je 0x4671f6
push dword [ebx + 0x128]
push 0x467410
mov eax, dword [ebx + 0x44]
call fcn.00461f08
lea edx, [ebp - 0x398]
call fcn.00409140
push dword [ebp - 0x398]
push 0x467528
push dword [ebx + 0x120]
lea eax, [ebp - 0x394]
mov edx, 5
call fcn.004052d8
mov edx, dword [ebp - 0x394]
mov eax, dword [ebx + 0x3c]
call fcn.00440004
lea eax, [ebp - 0x39c]
push eax
call sub.kernel32.dll_GetTickCount
sub eax, dword [ebp - 0x28]
mov ecx, esi
mov edx, dword [ebp - 0x24]
call fcn.004649d4
mov edx, dword [ebp - 0x39c]
lea eax, [ebx + 0x170]
call fcn.00404f98
push dword [ebx + 0x88]
push 0x467404
push dword [ebx + 0x170]
lea eax, [ebp - 0x3a0]
mov edx, 3
call fcn.004052d8
mov edx, dword [ebp - 0x3a0]
mov eax, dword [ebx + 0x54]
call fcn.00440004
lea eax, [ebp - 0x3a4]
push eax
call sub.kernel32.dll_GetTickCount
sub eax, dword [ebp - 0x28]
mov ecx, esi
xor edx, edx
call fcn.004649d4
mov edx, dword [ebp - 0x3a4]
lea eax, [ebx + 0x174]
call fcn.00404f98
push dword [ebx + 0x8c]
push 0x467404
push dword [ebx + 0x174]
lea eax, [ebp - 0x3a8]
mov edx, 3
call fcn.004052d8
mov edx, dword [ebp - 0x3a8]
mov eax, dword [ebx + 0x58]
call fcn.00440004
cmp word [ebx + 0xf2], 0
je 0x4672c7
mov eax, dword [ebp - 0x24]
push eax
push esi
mov ecx, dword [ebx + 0x34]
mov edx, ebx
mov eax, dword [ebx + 0xf4]
call dword [ebx + 0xf0]
mov eax, dword [0x470c2c]
mov eax, dword [eax]
call fcn.0045e748
cmp dword [ebp - 0x18], 0
je 0x4672eb
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x1c]
jne 0x4672eb
cmp byte [ebx + 0x38], 0
je 0x466f16
mov eax, dword [ebp - 0x1ac]
call fcn.0040961c
mov eax, dword [ebp - 0x2f8]
call fcn.0040961c
mov edx, 0x4000
mov eax, dword [ebp - 0x20]
call fcn.00402ed4
mov byte [ebp - 0x11], 1
cmp dword [ebp + 0x24], 0
je 0x46734a
push 0xffffffffffffffff
push 1
mov eax, dword [ebp + 0x24]
call fcn.004053d4
push eax
call sub.mpr.dll_WNetCancelConnection2A
test eax, eax
je 0x46734a
cmp word [ebx + 0xd2], 0
je 0x467346
mov edx, ebx
mov eax, dword [ebx + 0xd4]
call dword [ebx + 0xd0]
mov byte [ebp - 0x11], 0
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x4673ef
lea eax, [ebp - 0x3a8]
mov edx, 7
call fcn.00404f68
lea eax, [ebp - 0x384]
mov edx, 4
call fcn.00404f68
lea eax, [ebp - 0x368]
mov edx, 0xc
call fcn.00404f68
lea eax, [ebp - 0x338]
call fcn.00404f44
lea eax, [ebp - 0x334]
mov edx, 2
call fcn.00404f68
lea eax, [ebp - 0x32c]
call fcn.00404f44
lea eax, [ebp - 0x328]
mov edx, 4
call fcn.00404f68
lea eax, [ebp - 0xc]
mov edx, 3
call fcn.00404f68
lea eax, [ebp + 0x14]
mov edx, 3
call fcn.00404f68
lea eax, [ebp + 0x24]
mov edx, 2
call fcn.00404f68
ret