Function at 0x460190
Capabilities:
Check for time delay via gettickcount
Check http status code

Disassembly:
sub esp, 0x3c
push ebx
push ebp
push edi
mov edi, dword [esp + 0x4c]
mov ebx, dword [edi]
xor ebp, ebp
mov dword [esp + 0x3c], ebp
mov eax, dword [ebx + 0x19c]
cmp eax, ebp
mov dword [esp + 0x30], eax
jne 0x4601b8
mov dword [esp + 0x30], 0x36ee80
mov eax, dword [esp + 0x50]
cmp dword [edi + eax*4 + 0x484], 2
mov ecx, dword [edi + eax*4 + 0x130]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x40], ebp
mov dword [esp + 0x44], ebp
mov dword [esp + 0x28], ebp
mov dword [esp + 0x38], ebp
mov dword [esp + 0x2c], ebp
jne 0x4601ee
pop edi
pop ebp
xor eax, eax
pop ebx
add esp, 0x3c
ret
mov dword [edi + 0x1f8], ebp
push esi
jmp 0x460200
cmp dword [edi + eax*4 + 0x484], ebp
jne 0x460420
movzx esi, word [esp + 0x5c]
mov edx, dword [esp + 0x58]
push esi
push edx
push str.Establish_HTTP_proxy_tunnel_to__s:_hu_n
push ebx
call fcn.00447fa0
mov eax, dword [ebx + 0xd4]
add esp, 0x10
cmp eax, ebp
je 0x46023f
push eax
call fcn.0048b6e6
add esp, 4
mov dword [ebx + 0xd4], ebp
call fcn.0045b060
mov ebp, eax
test ebp, ebp
mov dword [esp + 0x28], ebp
je 0x460a35
mov eax, dword [esp + 0x58]
push esi
push eax
push str._s:_hu
call fcn.0044b8d0
mov edi, eax
add esp, 0xc
test edi, edi
je 0x4609f2
mov ecx, dword [esp + 0x50]
push 1
push edi
push str.CONNECT
push ecx
call fcn.0045ac90
push edi
mov esi, eax
call fcn.0048b6e6
add esp, 0x14
test esi, esi
jne 0x4609c4
mov esi, dword [esp + 0x50]
cmp dword [esi + 0x114], 1
mov ebp, 0x4c8d54
mov dword [esp + 0x24], ebp
mov dword [esp + 0x20], ebp
mov dword [esp + 0x18], 0x4ca944
je 0x4602be
mov dword [esp + 0x18], 0x4ba8a0
mov eax, dword [esi + 0x1b8]
test eax, eax
mov edx, 0x4b5ba4
jne 0x460537
mov edx, ebp
mov eax, ebp
movzx ecx, word [esp + 0x5c]
push ecx
push edx
mov edx, dword [esp + 0x60]
push edx
push eax
push str._s_s_s:_hu
call fcn.0044b8d0
mov edi, eax
add esp, 0x14
test edi, edi
je 0x460a08
push str.Host:
push ebx
call fcn.0045a750
add esp, 8
test eax, eax
jne 0x460323
push edi
push str.Host:__s_r_n
call fcn.0044b8d0
mov ebp, eax
add esp, 8
test ebp, ebp
je 0x460a22
push str.Proxy_Connection:
push ebx
call fcn.0045a750
add esp, 8
test eax, eax
jne 0x46033d
mov dword [esp + 0x24], str.Proxy_Connection:_Keep_Alive_r_n
push str.User_Agent:
push ebx
call fcn.0045a750
add esp, 8
test eax, eax
jne 0x460361
cmp dword [ebx + 0x3a4], eax
je 0x460361
mov eax, dword [esi + 0x22c]
mov dword [esp + 0x20], eax
mov eax, dword [esi + 0x228]
test eax, eax
jne 0x460370
mov eax, 0x4c8d54
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x20]
push ecx
mov ecx, dword [esp + 0x2c]
push edx
push eax
mov eax, dword [esp + 0x24]
push ebp
push eax
push edi
push str.CONNECT__s_HTTP__s_r_n_s_s_s_s
push ecx
call fcn.0045b8d0
add esp, 0x20
test ebp, ebp
mov esi, eax
je 0x4603a9
cmp byte [ebp], 0
je 0x4603a9
push ebp
call fcn.0048b6e6
add esp, 4
push edi
call fcn.0048b6e6
add esp, 4
test esi, esi
jne 0x4609ac
mov ebp, dword [esp + 0x28]
mov edi, dword [esp + 0x50]
push ebp
push edi
call fcn.0045b9b0
mov esi, eax
add esp, 8
test esi, esi
jne 0x4609ac
push 0x4b5ed0
push ebp
call fcn.0045b8d0
mov esi, eax
add esp, 8
test esi, esi
jne 0x4609ac
mov ebp, dword [esp + 0x54]
push ebp
push eax
mov eax, dword [esp + 0x30]
lea edx, [ebx + 0x86c4]
push edx
push edi
push eax
call fcn.0045b070
mov esi, eax
add esp, 0x14
test esi, esi
jne 0x4609ac
mov dword [edi + ebp*4 + 0x484], 1
xor ebp, ebp
mov ecx, dword [edi + 0x124]
mov edx, dword [edi + 0x120]
push ecx
push edx
call fcn.0044d0d0
push edx
push eax
call fcn.0044d100
mov ecx, dword [esp + 0x44]
sub ecx, eax
add esp, 0x10
test ecx, ecx
jle 0x460a42
cmp dword [ebx + 0x540], 2
jne 0x46046e
mov edx, dword [esp + 0x38]
push ebp
push 0xffffffffffffffff
push 0xffffffffffffffff
push edx
call fcn.0045e340
add esp, 0x10
test eax, eax
je 0x460b20
lea esi, [ebx + 0x55c]
mov dword [esp + 0x18], esi
mov dword [esp + 0x28], ebp
mov dword [esp + 0x24], ebp
mov dword [esp + 0x14], 1
jmp 0x460490
cmp dword [esp + 0x14], ebp
je 0x46094c
cmp dword [esp + 0x30], ebp
jne 0x460acb
mov eax, dword [edi + 0x124]
mov ecx, dword [edi + 0x120]
push eax
push ecx
call fcn.0044d0d0
push edx
push eax
call fcn.0044d100
mov ecx, dword [esp + 0x44]
sub ecx, eax
add esp, 0x10
cmp ecx, ebp
jle 0x4609d7
cmp ecx, 0x3e8
jl 0x4604dc
mov ecx, 0x3e8
mov edx, dword [esp + 0x38]
push ecx
push 0xffffffffffffffff
push 0xffffffffffffffff
push edx
call fcn.0045e340
add esp, 0x10
cmp eax, 0xffffffff
je 0x460917
cmp eax, ebp
je 0x46092d
mov edx, dword [esp + 0x18]
lea eax, [esp + 0x1c]
push eax
mov eax, dword [esp + 0x3c]
mov ecx, 0x4000
sub ecx, dword [esp + 0x2c]
push ecx
push edx
push eax
push edi
call fcn.00447d10
add esp, 0x14
cmp eax, 0x51
je 0x46093e
cmp eax, ebp
je 0x460541
mov dword [esp + 0x14], ebp
jmp 0x46092d
mov eax, 0x4b5b88
jmp 0x4602d5
mov eax, dword [esp + 0x1c]
cmp eax, ebp
jg 0x460576
cmp dword [ebx + 0x118], ebp
mov dword [esp + 0x14], ebp
je 0x46056c
cmp dword [ebx + 0x85fc], ebp
je 0x46056c
mov dword [edi + 0x1f8], 1
jmp 0x46092d
push str.Proxy_CONNECT_aborted
jmp 0x46091c
add dword [esp + 0x28], eax
mov edx, 1
cmp dword [esp + 0x14], edx
jle 0x460616
lea ecx, [ebx + 0x55c]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x44]
or ecx, dword [esp + 0x48]
mov dword [esp + 0x28], ebp
je 0x4605cd
cdq
sub dword [esp + 0x44], eax
mov eax, dword [esp + 0x48]
sbb eax, edx
cmp eax, ebp
mov dword [esp + 0x48], eax
jg 0x46092d
jl 0x4605c4
cmp dword [esp + 0x44], ebp
ja 0x46092d
mov dword [esp + 0x14], ebp
jmp 0x46092d
lea edx, [esp + 0x20]
push edx
push eax
mov eax, dword [esp + 0x20]
push eax
push edi
mov dword [esp + 0x30], ebp
call fcn.00461f60
add esp, 0x10
cmp eax, 0xffffffff
jne 0x4605fe
push str.chunk_reading_DONE_n
push ebx
call fcn.00447fa0
mov dword [esp + 0x1c], ebp
jmp 0x46092a
mov ecx, dword [esp + 0x20]
push ecx
push str.Read__zd_bytes_of_chunk__continue_n
push ebx
call fcn.00447fa0
add esp, 0xc
jmp 0x46092d
cmp eax, ebp
mov dword [esp + 0x20], ebp
jle 0x46092d
mov ecx, dword [esp + 0x18]
add dword [esp + 0x24], edx
cmp byte [ecx], 0xa
jne 0x4607ec
cmp dword [ebx + 0x2e4], ebp
je 0x46064d
mov edx, dword [esp + 0x24]
push edi
push edx
push esi
push 1
push ebx
call fcn.00447eb0
add esp, 0x14
cmp dword [ebx + 0x2c8], ebp
mov eax, 2
je 0x46065f
mov eax, 3
mov ecx, dword [esp + 0x24]
push ecx
push esi
push eax
push edi
call fcn.00448310
add esp, 0x10
cmp eax, ebp
jne 0x460b22
mov al, byte [esi]
cmp al, 0xd
je 0x460807
cmp al, 0xa
je 0x460807
mov eax, dword [esp + 0x24]
mov dl, byte [eax + esi]
push 0x11
push esi
push str.WWW_Authenticate:
mov byte [esp + 0x1f], dl
mov byte [eax + esi], 0
call fcn.00460cd0
add esp, 0xc
test eax, eax
je 0x4606b9
mov eax, dword [ebx + 0x90]
cmp eax, 0x191
je 0x4606da
push 0x13
push esi
push str.Proxy_authenticate:
call fcn.00460cd0
add esp, 0xc
test eax, eax
je 0x4606f2
mov eax, dword [ebx + 0x90]
cmp eax, 0x197
jne 0x4606f2
push esi
push eax
push edi
call fcn.0045ada0
add esp, 0xc
cmp eax, ebp
jne 0x460b22
jmp 0x4607c3
push 0xf
push esi
push str.Content_Length:
call fcn.00460cd0
add esp, 0xc
test eax, eax
je 0x460722
push 0xa
lea eax, [esi + 0xf]
push ebp
push eax
call fcn.004935c5
add esp, 0xc
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edx
jmp 0x4607c3
push str.close
push str.Connection:
push esi
call fcn.0045b300
add esp, 0xc
test eax, eax
je 0x460746
mov dword [esp + 0x2c], 1
jmp 0x4607c3
push str.chunked
push str.Transfer_Encoding:
push esi
call fcn.0045b300
add esp, 0xc
test eax, eax
je 0x46077b
push str.CONNECT_responded_chunked_n
push ebx
call fcn.00447fa0
push edi
mov dword [esp + 0x48], 1
call fcn.00461f40
add esp, 0xc
jmp 0x4607c3
push str.close
push str.Proxy_Connection:
push esi
call fcn.0045b300
add esp, 0xc
test eax, eax
je 0x46079c
mov dword [esp + 0x2c], 1
jmp 0x4607c3
lea edi, [ebx + 0x90]
push edi
lea ecx, [esp + 0x44]
push ecx
push str.HTTP_1._d__d
push esi
call fcn.00492771
add esp, 0x10
cmp eax, 2
jne 0x4607c3
mov edx, dword [edi]
mov dword [ebx + 0x86b0], edx
mov al, byte [esp + 0x13]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x18]
mov edi, dword [esp + 0x50]
mov byte [ecx + esi], al
mov eax, dword [esp + 0x1c]
lea esi, [edx + 1]
mov dword [esp + 0x24], 0
xor ebp, ebp
mov edx, 1
mov ecx, dword [esp + 0x20]
add dword [esp + 0x18], edx
add ecx, edx
cmp ecx, eax
mov dword [esp + 0x20], ecx
jl 0x460622
jmp 0x46092d
cmp dword [ebx + 0x90], 0x197
lea eax, [ebx + 0x55c]
mov dword [esp + 0x28], ebp
mov dword [esp + 0x18], eax
jne 0x4608e7
cmp dword [ebx + 0x860c], ebp
jne 0x4608e7
mov eax, dword [esp + 0x44]
or eax, dword [esp + 0x48]
mov dword [esp + 0x14], 2
je 0x460868
mov ecx, dword [esp + 0x48]
mov edx, dword [esp + 0x44]
push ecx
push edx
push str.Ignore__lld_bytes_of_response_body_n
push ebx
call fcn.00447fa0
mov eax, dword [esp + 0x2c]
add esp, 0x10
sub eax, dword [esp + 0x20]
jmp 0x4605a1
cmp dword [esp + 0x3c], ebp
je 0x4605c4
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x20]
mov dword [ebx + 0xc8], 1
push eax
push str._zd_bytes_of_chunk_left_n
push ebx
call fcn.00447fa0
add esp, 0xc
cmp byte [esi + 1], 0xa
jne 0x4608a1
add esi, 1
add dword [esp + 0x20], 1
mov edx, dword [esp + 0x1c]
sub edx, dword [esp + 0x20]
lea ecx, [esp + 0x1c]
push ecx
push edx
lea eax, [esi + 1]
push eax
push edi
call fcn.00461f60
add esp, 0x10
cmp eax, 0xffffffff
jne 0x4608d2
push str.chunk_reading_DONE_n
push ebx
call fcn.00447fa0
mov dword [esp + 0x1c], ebp
jmp 0x46092a
mov ecx, dword [esp + 0x1c]
push ecx
push str.Read__zd_bytes_of_chunk__continue_n
push ebx
call fcn.00447fa0
add esp, 0xc
jmp 0x46092d
cmp dword [ebx + 0x86b0], 0xc8
mov dword [esp + 0x14], ebp
jne 0x46092d
mov eax, dword [esp + 0x1c]
sub eax, dword [esp + 0x20]
add eax, 0xffffffff
cmp eax, ebp
je 0x46092d
push eax
push str.Proxy_CONNECT_followed_by__zd_bytes_of_opaque_data._Data_ignored__known_bug_39_
push ebx
call fcn.00448030
add esp, 0xc
jmp 0x46092d
push str.Proxy_CONNECT_aborted_due_to_select_poll_error
push ebx
mov dword [esp + 0x38], 1
call fcn.00448030
add esp, 8
push edi
call fcn.0045fa60
add esp, 4
test eax, eax
jne 0x460a5d
cmp dword [esp + 0x28], 0x4000
jb 0x460490
cmp dword [esp + 0x30], ebp
jne 0x460acb
cmp dword [ebx + 0x86b0], 0xc8
je 0x460985
push edi
call fcn.0045b700
add esp, 4
cmp eax, ebp
jne 0x460b22
cmp dword [edi + 0x1a0], ebp
je 0x460985
mov dword [esp + 0x2c], 1
jmp 0x46098b
cmp dword [esp + 0x2c], ebp
je 0x460997
cmp dword [ebx + 0xd4], ebp
jne 0x460a6a
cmp dword [ebx + 0xd4], ebp
je 0x460a8c
mov eax, dword [esp + 0x54]
jmp 0x460200
push str.Failed_sending_CONNECT_to_proxy
push ebx
call fcn.00448030
add esp, 8
mov eax, esi
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x3c
ret
push ebp
call fcn.0048b6e6
add esp, 4
mov eax, esi
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x3c
ret
push str.Proxy_CONNECT_aborted_due_to_timeout
push ebx
call fcn.00448030
add esp, 8
pop esi
pop edi
pop ebp
mov eax, 0x38
pop ebx
add esp, 0x3c
ret
push ebp
call fcn.0048b6e6
add esp, 4
pop esi
pop edi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x3c
ret
mov edx, dword [esp + 0x28]
push edx
call fcn.0048b6e6
add esp, 4
pop esi
pop edi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x3c
ret
push edi
call fcn.0048b6e6
mov eax, dword [esp + 0x2c]
push eax
call fcn.0048b6e6
add esp, 8
pop esi
pop edi
pop ebp
mov eax, 0x1b
pop ebx
add esp, 0x3c
ret
push str.Proxy_CONNECT_aborted_due_to_timeout
push ebx
call fcn.00448030
add esp, 8
pop esi
pop edi
pop ebp
mov eax, 0x38
pop ebx
add esp, 0x3c
ret
pop esi
pop edi
pop ebp
mov eax, 0x2a
pop ebx
add esp, 0x3c
ret
mov esi, dword [esp + 0x54]
mov ecx, dword [edi + esi*4 + 0x130]
push ecx
push edi
call fcn.00448d50
add esp, 8
mov dword [edi + esi*4 + 0x130], 0xffffffff
jmp 0x460a90
mov esi, dword [esp + 0x54]
mov eax, dword [ebx + 0x90]
cmp eax, 0xc8
je 0x460ad8
push eax
push str.Received_HTTP_code__d_from_proxy_after_CONNECT
push ebx
call fcn.00448030
add esp, 0xc
cmp dword [esp + 0x2c], ebp
je 0x460ac4
cmp dword [ebx + 0xd4], ebp
je 0x460ac4
mov dword [edi + 0x1f8], 1
mov dword [edi + esi*4 + 0x484], ebp
pop esi
pop edi
pop ebp
mov eax, 0x38
pop ebx
add esp, 0x3c
ret
mov dword [edi + esi*4 + 0x484], 2
mov eax, dword [edi + 0x228]
cmp eax, ebp
je 0x460afc
push eax
call fcn.0048b6e6
add esp, 4
mov dword [edi + 0x228], ebp
push 0x4bb530
mov dword [edi + 0x228], ebp
push ebx
mov dword [ebx + 0x8600], 1
call fcn.00447fa0
add esp, 8
mov dword [ebx + 0xc8], ebp
xor eax, eax
pop esi
pop edi
pop ebp
pop ebx
add esp, 0x3c
ret