Function at 0x462620
Capabilities:
Check for time delay via gettickcount
Resolve dns

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x4db372
mov eax, dword fs:[0]
push eax
sub esp, 0x2b0
mov eax, dword [0x51cca4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, dword [sym.imp.WS2_32.dll_ntohl]
xorps xmm0, xmm0
push 0x12d
movups xmmword [ebp - 0x2b0], xmm0
movups xmmword [ebp - 0x2a0], xmm0
call esi
push 2
mov dword [ebp - 0x2b0], eax
call esi
mov dword [ebp - 0x2ac], eax
lea eax, [ebp - 0x2b0]
push 0x20
push eax
call fcn.0046b7b0
add esp, 8
xor esi, esi
mov edi, 0x51f468
push dword [0x51f464]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
push 0
push 0x4e0600
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x264], 0xf
mov dword [ebp - 0x268], 0
mov byte [ebp - 0x278], 0
call fcn.004642f0
mov eax, dword [0x51f47c]
mov dword [ebp - 4], 0
cmp eax, 0x10
jb 0x46271e
mov ecx, dword [0x51f468]
inc eax
cmp eax, 0x1000
jb 0x462715
test cl, 0x1f
jne 0x462841
mov eax, dword [ecx - 4]
cmp eax, ecx
jae 0x462841
sub ecx, eax
cmp ecx, 4
jb 0x462841
cmp ecx, 0x23
ja 0x462841
mov ecx, eax
push ecx
call fcn.0048966e
add esp, 4
mov ecx, dword [ebp - 0x264]
mov dword [0x51f47c], 0xf
mov dword [0x51f478], 0
mov byte [0x51f468], 0
cmp ecx, 0x10
jae 0x46276c
mov eax, dword [ebp - 0x268]
add eax, 1
je 0x462777
push eax
lea eax, [ebp - 0x278]
push eax
push 0x51f468
call fcn.0048d670
mov ecx, dword [ebp - 0x264]
add esp, 0xc
jmp 0x462777
mov eax, dword [ebp - 0x278]
mov dword [0x51f468], eax
mov eax, dword [ebp - 0x268]
push 0x1f40
push dword [0x51f464]
mov dword [0x51f478], eax
mov dword [0x51f47c], ecx
mov dword [ebp - 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x462ed3
cmp dword [0x51f47c], 0x10
mov ecx, edi
mov edi, dword [0x51f478]
mov edx, 7
cmovae ecx, dword [0x51f468]
cmp edi, edx
cmovb edx, edi
test edx, edx
je 0x462830
mov esi, str.pending
sub edx, 4
jb 0x4627f1
nop dword [eax]
mov eax, dword [ecx]
cmp eax, dword [esi]
jne 0x4627f6
add ecx, 4
add esi, 4
sub edx, 4
jae 0x4627e0
cmp edx, 0xfffffffc
je 0x46282a
mov al, byte [ecx]
cmp al, byte [esi]
jne 0x462823
cmp edx, 0xfffffffd
je 0x46282a
mov al, byte [ecx + 1]
cmp al, byte [esi + 1]
jne 0x462823
cmp edx, 0xfffffffe
je 0x46282a
mov al, byte [ecx + 2]
cmp al, byte [esi + 2]
jne 0x462823
cmp edx, 0xffffffff
je 0x46282a
mov al, byte [ecx + 3]
cmp al, byte [esi + 3]
je 0x46282a
sbb eax, eax
or eax, 1
jmp 0x46282c
xor eax, eax
test eax, eax
jne 0x462846
cmp edi, 7
jb 0x462846
ja 0x462846
mov esi, 1
jmp 0x46268e
call fcn.004960c1
mov esi, 0x51f468
push str.succeed
mov ecx, esi
call fcn.004644e0
test al, al
je 0x462ebd
mov edi, dword [sym.imp.USER32.dll_SendMessageA]
push str.Verifying_DNS...
push str.succeed.
push 0x8195
push dword [0x51f430]
call edi
mov byte [0x51ffe8], 0
call fcn.0049616e
mov esi, eax
mov eax, 0x55555556
imul esi
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
lea ecx, [ecx + ecx*2]
sub esi, ecx
jne 0x4628a6
mov eax, str.time_a.nist.gov
jmp 0x4628c1
cmp esi, 1
jne 0x4628b2
mov eax, str.time_b.nist.gov
jmp 0x4628c1
cmp esi, 2
mov eax, str.time_c.nist.gov
cmovne eax, dword [ebp - 0x2bc]
push eax
call dword [sym.imp.WS2_32.dll_gethostbyname]
mov esi, eax
test esi, esi
jne 0x462969
mov dword [ebp - 0x214], 0xf
mov dword [ebp - 0x218], eax
mov byte [ebp - 0x228], al
mov eax, str.intercepted
mov dword [ebp - 4], 1
mov ecx, str.not_intercepted
cmp dword [0x520818], esi
je 0x462913
cmp byte [0x51ffe8], 0
cmove eax, ecx
push eax
push str.error__s_._Please_turn_off_Google_DNS_and_reconnect
jmp 0x462923
cmp byte [0x51ffe8], 0
cmove eax, ecx
push eax
push str.error__s_._Not_using_Google_DNS.
lea eax, [ebp - 0x228]
push eax
call fcn.004645f0
add esp, 0xc
lea eax, [ebp - 0x228]
cmp dword [ebp - 0x214], 0x10
cmovae eax, dword [ebp - 0x228]
push str.Test_Completed
push eax
push 0x8195
push dword [0x51f430]
call edi
lea ecx, [ebp - 0x228]
call fcn.00460af0
jmp 0x462ef9
push str.Verifying_HTTP_access...
push str.succeed.
push 0x8195
push dword [0x51f430]
call edi
mov dword [ebp - 0x27c], 0xf
mov dword [ebp - 0x280], 0
mov byte [ebp - 0x290], 0
mov dword [ebp - 4], 2
mov dword [ebp - 0x24c], 0xf
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x260], 0
mov dword [ebp - 0x234], 0xf
mov dword [ebp - 0x238], 0
mov byte [ebp - 0x248], 0
push 0xff
lea eax, [ebp - 0x210]
mov byte [ebp - 4], 4
push 0
push eax
call fcn.0048e7f0
add esp, 0xc
mov dword [ebp - 0x2bc], 0xff
cmp dword [0x51f300], 0x10
lea ecx, [ebp - 0x2bc]
mov eax, 0x51f2ec
cmovae eax, dword [0x51f2ec]
push 0
push ecx
lea ecx, [ebp - 0x210]
push ecx
push eax
call dword [sym.imp.SHLWAPI.dll_UrlEscapeA]
lea eax, [ebp - 0x210]
push eax
push dword [0x51f304]
lea eax, [ebp - 0x260]
push 0x20b
push str.http:__v.pdanet.co_a_v2.php_v_dp_dc_s
push eax
call fcn.004645f0
cmp dword [ebp - 0x24c], 0x10
lea ecx, [ebp - 0x290]
lea eax, [ebp - 0x260]
cmovae eax, dword [ebp - 0x260]
push ecx
push eax
call fcn.00471a40
add esp, 0x1c
test eax, eax
je 0x462ad0
cmp dword [ebp - 0x280], 0
je 0x462ad0
push 0
lea ecx, [ebp - 0x290]
call fcn.004643f0
cmp byte [eax], 0x2d
je 0x462ac9
push 0
lea ecx, [ebp - 0x290]
call fcn.004643f0
cmp byte [eax], 0x7e
je 0x462ac9
mov eax, dword [esi + 0xc]
push dword [eax]
call fcn.00476800
push eax
call fcn.00463ac0
add esp, 8
lea ecx, [ebp - 0x228]
test al, al
je 0x462ac2
push str.redirection_error._Echo_detected.
jmp 0x462af9
push str.redirection_error._Echo_not_detected.
jmp 0x462af9
push str.Internet_is_Ready__
jmp 0x462af3
mov eax, dword [esi + 0xc]
push dword [eax]
call fcn.00476800
push eax
call fcn.00463ac0
add esp, 8
test al, al
je 0x462aee
push str.failed._Echo_detected.
jmp 0x462af3
push str.failed._Echo_not_detected.
lea ecx, [ebp - 0x228]
call fcn.00460690
lea eax, [ebp - 0x228]
push eax
lea ecx, [ebp - 0x248]
call fcn.00460d30
lea ecx, [ebp - 0x228]
call fcn.00460af0
cmp dword [0x51f304], 0x1450
jge 0x462b53
cmp dword [ebp - 0x234], 0x10
lea eax, [ebp - 0x248]
push str.Test_Completed
cmovae eax, dword [ebp - 0x248]
push eax
push 0x8195
push dword [0x51f430]
call edi
jmp 0x462e3e
mov eax, dword [0x51f2e0]
cmp eax, 2
jne 0x462b64
mov ecx, str.Local_WiFi__speed_test...
jmp 0x462b74
cmp eax, 1
mov ecx, str.Local_Bluetooth__speed_test...
mov edx, str.Local_USB__speed_test...
cmovne ecx, edx
cmp dword [ebp - 0x234], 0x10
lea eax, [ebp - 0x248]
push ecx
cmovae eax, dword [ebp - 0x248]
push eax
push 0x8195
push dword [0x51f430]
call edi
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
call edi
mov dword [ebp - 0x2b4], eax
xor esi, esi
call edi
sub eax, dword [ebp - 0x2b4]
cmp eax, 0x1388
jae 0x462c49
nop word [eax + eax]
push dword [0x51f464]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
xorps xmm0, xmm0
push 0x12d
movups xmmword [ebp - 0x230], xmm0
movups xmmword [ebp - 0x220], xmm0
call dword [sym.imp.WS2_32.dll_ntohl]
push 3
mov dword [ebp - 0x230], eax
call dword [sym.imp.WS2_32.dll_ntohl]
mov dword [ebp - 0x22c], eax
lea eax, [ebp - 0x230]
push 0x20
push eax
call fcn.0046b7b0
add esp, 8
mov ecx, 0x9c40
cmp dword [0x51f2e0], 1
mov eax, 0x2710
cmove eax, ecx
push eax
push dword [0x51f464]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x462c6e
inc esi
call edi
sub eax, dword [ebp - 0x2b4]
cmp eax, 0x1388
jb 0x462bc0
cmp dword [0x51f2e0], 1
jne 0x462c8f
call edi
mov ecx, eax
xor edx, edx
sub ecx, dword [ebp - 0x2b4]
imul eax, esi, 0x7d0000
div ecx
push eax
push str._d_Kbps
jmp 0x462ca9
mov eax, dword [sym.imp.USER32.dll_SendMessageA]
push str.Test_Completed
push str.failed_or_too_slow
push 0x8195
push dword [0x51f430]
call eax
jmp 0x462e3e
call edi
mov ecx, eax
xor edx, edx
sub ecx, dword [ebp - 0x2b4]
imul eax, esi, 0x1f40
div ecx
push eax
push str._d_Mbps
lea eax, [ebp - 0x110]
push eax
call fcn.004646a0
add esp, 0xc
lea eax, [ebp - 0x110]
push str.Upload_speed_test...
push eax
mov eax, dword [sym.imp.USER32.dll_SendMessageA]
push 0x8195
push dword [0x51f430]
call eax
call edi
xor esi, esi
mov dword [ebp - 0x2b4], eax
mov dword [ebp - 0x2b8], esi
call edi
sub eax, dword [ebp - 0x2b4]
cmp eax, 0x1388
jae 0x462dc7
nop dword [eax]
push dword [0x51f464]
call dword [sym.imp.KERNEL32.dll_ResetEvent]
xor edi, edi
nop
push 0x420
call fcn.00489827
mov esi, eax
add esp, 4
xorps xmm0, xmm0
movups xmmword [esi], xmm0
push 0x12d
movups xmmword [esi + 0x10], xmm0
call dword [sym.imp.WS2_32.dll_ntohl]
xor ecx, ecx
mov dword [esi], eax
cmp edi, 0x3ff
sete cl
add ecx, 4
push ecx
call dword [sym.imp.WS2_32.dll_ntohl]
push 0x400
mov dword [esi + 4], eax
call dword [sym.imp.WS2_32.dll_htonl]
push 0x420
push esi
mov dword [esi + 0xc], eax
call fcn.0046b7b0
push esi
call fcn.00489830
inc edi
add esp, 0xc
cmp edi, 0x400
jl 0x462d10
cmp dword [0x51f2e0], 1
mov ecx, 0x9c40
mov eax, 0x2710
cmove eax, ecx
push eax
push dword [0x51f464]
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
cmp eax, 0x102
je 0x462dec
mov esi, dword [ebp - 0x2b8]
mov edi, dword [sym.imp.KERNEL32.dll_GetTickCount]
inc esi
mov dword [ebp - 0x2b8], esi
call edi
sub eax, dword [ebp - 0x2b4]
cmp eax, 0x1388
jb 0x462d00
cmp dword [0x51f2e0], 1
jne 0x462df8
call edi
mov ecx, eax
xor edx, edx
sub ecx, dword [ebp - 0x2b4]
imul eax, esi, 0x7d0000
div ecx
push eax
push str._d_Kbps
jmp 0x462e12
push str.Test_Completed
push str.failed_or_too_slow
jmp 0x462e2d
call edi
mov ecx, eax
xor edx, edx
sub ecx, dword [ebp - 0x2b4]
imul eax, esi, 0x1f40
div ecx
push eax
push str._d_Mbps
lea eax, [ebp - 0x110]
push eax
call fcn.004646a0
add esp, 0xc
lea eax, [ebp - 0x110]
push str.Test_Completed
push eax
push 0x8195
push dword [0x51f430]
call dword [sym.imp.USER32.dll_SendMessageA]
mov eax, dword [ebp - 0x234]
cmp eax, 0x10
jb 0x462e5c
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00464490
mov eax, dword [ebp - 0x24c]
mov dword [ebp - 0x234], 0xf
mov dword [ebp - 0x238], 0
mov byte [ebp - 0x248], 0
cmp eax, 0x10
jb 0x462e95
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.00464490
lea ecx, [ebp - 0x290]
mov dword [ebp - 0x24c], 0xf
mov dword [ebp - 0x250], 0
mov byte [ebp - 0x260], 0
call fcn.00460af0
jmp 0x462ef9
cmp dword [0x51f47c], 0x10
push str.Test_Completed
cmovae esi, dword [0x51f468]
push esi
jmp 0x462ee8
push str.Test_Completed
test esi, esi
je 0x462ee3
push str.no_Internet_on_Phone
jmp 0x462ee8
push str.no_response_from_Phone
push 0x8195
push dword [0x51f430]
call dword [sym.imp.USER32.dll_SendMessageA]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00489c7b
mov esp, ebp
pop ebp
ret