Function at 0x47f290
Capabilities:
Check http status code
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0xec
mov eax, dword [0x70e00c]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov esi, edx
mov dword [ebp - 0xd4], eax
mov edx, dword [ebp + 0xc]
mov dword [ebp - 0xe4], esi
add esi, 0x6a
push edi
mov edi, ecx
mov dword [ebp - 0xdc], edx
mov dword [ebp - 0xb8], edi
mov dword [ebp - 0xb4], 0
mov byte [ebp - 0xb9], 0
mov ebx, dword [edi]
lea ecx, [edi + esi*4]
mov esi, dword [edi + 0x55c]
mov dword [ebp - 0xd8], ecx
mov ecx, dword [ecx]
mov dword [ebp - 0xc8], ebx
mov dword [ebp - 0xe8], ecx
test esi, esi
je 0x47f30c
cmp dword [esi + 0x401c], 2
je 0x480193
mov byte [edi + 0x2b6], 0
cmp dword [esi + 0x401c], 0
jne 0x47f5f7
push edx
push eax
push str.Establish_HTTP_proxy_tunnel_to__s:_hu_n
push ebx
call fcn.0046c560
push dword [ebx + 0x140]
call dword [0x725400]
add esp, 0x14
mov dword [ebx + 0x140], 0
push 0xc
push 1
call dword [0x725408]
mov edi, eax
add esp, 8
mov dword [ebp - 0xc0], edi
test edi, edi
je 0x48000e
push dword [ebp - 0xdc]
push dword [ebp - 0xd4]
push str._s:_hu
call sym.hrkill.exe_curl_maprintf
add esp, 0xc
mov dword [ebp - 0xcc], eax
test eax, eax
je 0x480007
mov ecx, dword [ebp - 0xb8]
mov edx, str.CONNECT
push 1
push eax
call fcn.00482c60
push dword [ebp - 0xcc]
mov edi, eax
call dword [0x725400]
add esp, 0xc
test edi, edi
jne 0x47f5be
mov edx, dword [ebp - 0xb8]
mov ecx, 0x6f6df8
mov eax, 0x6f6df4
mov dword [ebp - 0xcc], edi
mov dword [ebp - 0xd0], 0x6e9c8d
cmp dword [edx + 0xf0], 1
cmovne eax, ecx
mov cl, byte [edx + 0x2a6]
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0xd4]
cmp eax, dword [edx + 0xa0]
je 0x47f40a
push 0x3a
push eax
call fcn.005fa980
add esp, 8
test eax, eax
setne cl
push dword [ebp - 0xdc]
test cl, cl
mov edx, 0x6e9c8d
mov eax, 0x6e9d08
cmove eax, edx
push eax
push dword [ebp - 0xd4]
mov eax, str.___:w
cmove eax, edx
push eax
push str._s_s_s:_hu
call sym.hrkill.exe_curl_maprintf
add esp, 0x14
mov dword [ebp - 0xc4], eax
test eax, eax
je 0x47ffd3
mov ecx, dword [ebp - 0xb8]
mov edx, str.Host:
call fcn.004824a0
test eax, eax
jne 0x47f481
push dword [ebp - 0xc4]
push str.Host:__s_r_n
call sym.hrkill.exe_curl_maprintf
mov edi, eax
add esp, 8
mov dword [ebp - 0xcc], edi
test edi, edi
je 0x47ffc4
mov ecx, dword [ebp - 0xb8]
mov edx, str.Proxy_Connection:
call fcn.004824a0
test eax, eax
mov ecx, 0x6e9c8d
mov eax, str.Proxy_Connection:_Keep_Alive_r_n
mov edx, str.User_Agent:
cmove ecx, eax
mov dword [ebp - 0xe0], ecx
mov ecx, dword [ebp - 0xb8]
call fcn.004824a0
test eax, eax
jne 0x47f4d4
cmp dword [ebx + 0x450], eax
je 0x47f4d4
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax + 0x2f8]
mov dword [ebp - 0xd0], eax
mov eax, dword [ebp - 0xb8]
mov edx, 0x6e9c8d
push dword [ebp - 0xe0]
mov ecx, edx
push dword [ebp - 0xd0]
mov eax, dword [eax + 0x2f4]
test eax, eax
cmovne ecx, eax
mov eax, edx
push ecx
test edi, edi
cmovne eax, edi
push eax
push dword [ebp - 0xac]
push dword [ebp - 0xc4]
push str.CONNECT__s_HTTP__s_r_n_s_s_s_s
push dword [ebp - 0xc0]
call fcn.00483490
mov edi, eax
add esp, 0x20
mov eax, dword [ebp - 0xcc]
test eax, eax
je 0x47f536
push eax
call dword [0x725400]
add esp, 4
push dword [ebp - 0xc4]
call dword [0x725400]
add esp, 4
test edi, edi
jne 0x47f5a2
push dword [ebp - 0xc0]
mov ecx, dword [ebp - 0xb8]
mov dl, 1
call fcn.00483a90
mov edi, eax
add esp, 4
test edi, edi
jne 0x47f5a2
push 0x6f5d0c
push dword [ebp - 0xc0]
call fcn.00483490
mov edi, eax
add esp, 8
test edi, edi
jne 0x47f5a2
push dword [ebp - 0xe4]
mov edx, dword [ebp - 0xb8]
mov ecx, dword [ebp - 0xc0]
push eax
lea eax, [ebx + 0x4a30]
push eax
call fcn.00483170
add esp, 0xc
mov edi, eax
xor eax, eax
mov dword [ebp - 0xc0], eax
test edi, edi
je 0x47f5d5
push str.Failed_sending_CONNECT_to_proxy
push ebx
call fcn.0046c5e0
add esp, 8
jmp 0x47f5cf
mov eax, dword [ebp - 0xc0]
push dword [eax]
call dword [0x725400]
add esp, 4
mov eax, dword [ebp - 0xc0]
push eax
call dword [0x725400]
add esp, 4
test edi, edi
jne 0x47fff4
mov dword [esi + 0x401c], 1
mov dword [esi + 0x4000], edi
mov edx, dword [ebx + 0x208]
xor ecx, ecx
mov eax, dword [ebx + 0x20c]
test edx, edx
mov dword [ebp - 0xc0], 0x493e0
setg cl
mov dword [ebp - 0xc4], 0
test eax, eax
jle 0x47f625
or ecx, 2
sub ecx, 1
je 0x47f63b
sub ecx, 1
je 0x47f63d
sub ecx, 1
jne 0x47f64a
cmp edx, eax
cmovl eax, edx
jmp 0x47f63d
mov eax, edx
cdq
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc4], edx
call dword [sym.imp.KERNEL32.DLL_GetTickCount]
movups xmm1, xmmword [ebx + 0x5c8]
mov edi, eax
mov eax, 0x10624dd3
mul edi
movaps xmm0, xmm1
psrldq xmm0, 8
push 0
mov eax, edx
shr eax, 6
imul ecx, eax, 0x3e8
mov dword [ebp - 0xac], eax
movd eax, xmm0
push 0x3e8
sub edi, ecx
imul ecx, edi, 0x3e8
movd edi, xmm1
psrldq xmm1, 4
sub ecx, eax
mov eax, 0x10624dd3
imul ecx
movd ecx, xmm1
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
sub edi, dword [ebp - 0xac]
cdq
sbb ecx, 0
mov dword [ebp - 0xe0], edx
push ecx
push edi
mov ebx, eax
call fcn.0065e4b0
mov ecx, eax
sub ecx, ebx
sbb edx, dword [ebp - 0xe0]
add ecx, dword [ebp - 0xc0]
mov eax, ecx
adc edx, dword [ebp - 0xc4]
or eax, edx
je 0x4801a6
test edx, edx
jl 0x4801a6
jg 0x47f6f7
test ecx, ecx
je 0x4801a6
mov ebx, dword [ebp - 0xb8]
mov ecx, ebx
mov edx, dword [ebp - 0xe4]
call fcn.0046eb10
test al, al
je 0x480193
cmp dword [esi + 0x4004], 0
mov dword [ebp - 0xd0], 0
je 0x47fe80
mov edi, dword [ebp - 0xc8]
lea edx, [esi + 0x4000]
nop word [eax + eax]
mov eax, dword [esi + 0x400c]
cmp eax, edx
jae 0x48003a
mov edx, dword [ebp - 0xe8]
lea ecx, [ebp - 0xb0]
push ecx
push 1
push eax
mov ecx, ebx
call fcn.0046cde0
mov ebx, eax
add esp, 0xc
cmp ebx, 0x51
je 0x480193
mov ecx, dword [ebp - 0xb8]
call fcn.00481340
test eax, eax
jne 0x480024
test ebx, ebx
jne 0x47fe76
cmp dword [ebp - 0xb0], ebx
jle 0x47fed7
cmp dword [esi + 0x4004], 1
jle 0x47f84e
mov ecx, dword [esi + 0x4010]
mov eax, ecx
mov edx, dword [esi + 0x4014]
or eax, edx
mov dword [esi + 0x400c], esi
je 0x47f800
sub ecx, 1
mov dword [esi + 0x4010], ecx
sbb edx, ebx
mov dword [esi + 0x4014], edx
test edx, edx
jl 0x47fe6c
jg 0x47f7e2
test ecx, ecx
jbe 0x47fe6c
mov ebx, dword [ebp - 0xb8]
lea edx, [esi + 0x4000]
cmp dword [esi + 0x4004], 0
jne 0x47f740
jmp 0x47fe80
mov ebx, dword [ebp - 0xb8]
lea eax, [ebp - 0xac]
push eax
push 1
mov edx, esi
mov dword [ebp - 0xac], 0
mov ecx, ebx
call fcn.004a2ab0
add esp, 8
cmp eax, 0xffffffff
jne 0x47f7e8
push str.chunk_reading_DONE_n
push edi
call fcn.0046c560
add esp, 8
mov dword [esi + 0x4004], 0
mov dword [esi + 0x401c], 2
jmp 0x47f7e8
mov eax, dword [esi + 0x400c]
lea edx, [esi + 0x4000]
inc dword [edx]
mov ecx, dword [edx]
mov dword [ebp - 0xc4], ecx
cmp byte [eax], 0xa
je 0x47f87b
mov ebx, dword [ebp - 0xb8]
inc eax
mov dword [esi + 0x400c], eax
jmp 0x47f7ee
mov ebx, dword [ebp - 0xc8]
cmp byte [ebx + 0x390], 0
je 0x47f9a0
cmp byte [ebx + 0x378], 0
mov edi, dword [esi + 0x4008]
mov dword [ebp - 0xcc], edi
je 0x47f953
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax + 0xa4]
test eax, eax
je 0x47f953
push eax
push str.from
push str.Header
push str.__s__s__s_
lea eax, [ebp - 0xa8]
push 0xa0
push eax
call sym.hrkill.exe_curl_msnprintf
lea edi, [ebp - 0xa8]
add esp, 0x18
lea ecx, [edi + 1]
mov al, byte [edi]
inc edi
test al, al
jne 0x47f8e8
mov eax, dword [ebx + 0x1d0]
sub edi, ecx
test eax, eax
je 0x47f91b
push dword [ebx + 0x15c]
lea ecx, [ebp - 0xa8]
push edi
push ecx
push 0
push ebx
call eax
add esp, 0x14
test eax, eax
jne 0x47f99a
jmp 0x47f947
push dword [ebx + 0x158]
push 1
push 2
push 0x6e782c
call fcn.0061981f
push dword [ebx + 0x158]
lea eax, [ebp - 0xa8]
push 1
push edi
push eax
call fcn.0061981f
add esp, 0x20
mov ecx, dword [ebp - 0xc4]
mov edi, dword [ebp - 0xcc]
mov eax, dword [ebx + 0x1d0]
test eax, eax
je 0x47f96f
push dword [ebx + 0x15c]
push ecx
push edi
push 1
push ebx
call eax
add esp, 0x14
jmp 0x47f99a
push dword [ebx + 0x158]
push 1
push 2
push 0x6e782f
call fcn.0061981f
push dword [ebx + 0x158]
push 1
push dword [ebp - 0xc4]
push edi
call fcn.0061981f
add esp, 0x20
lea edx, [esi + 0x4000]
cmp byte [ebx + 0x4f4], 0
jne 0x47fa98
mov ecx, dword [esi + 0x4000]
xor edx, edx
cmp byte [ebx + 0x385], dl
mov edi, dword [esi + 0x4008]
setne dl
add edx, 2
test ecx, ecx
jne 0x47f9e3
mov ecx, edi
lea eax, [ecx + 1]
mov dword [ebp - 0xac], eax
mov al, byte [ecx]
inc ecx
test al, al
jne 0x47f9d6
sub ecx, dword [ebp - 0xac]
push ecx
push edi
mov edi, dword [ebp - 0xb8]
mov ecx, edi
call fcn.0046cc00
add esp, 8
test eax, eax
jne 0x4801bf
lea edx, [esi + 0x4000]
mov eax, dword [edx]
add dword [ebx + 0x4a2c], eax
mov eax, dword [edx]
add dword [ebx + 0xa0], eax
mov ecx, dword [esi + 0x4008]
mov al, byte [ecx]
cmp al, 0xd
je 0x47fd5a
cmp al, 0xa
je 0x47fd5a
mov eax, dword [edx]
mov edi, str.WWW_Authenticate:
mov byte [ecx + eax], 0
mov eax, 0x11
mov ecx, dword [esi + 0x4008]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc4], ecx
nop dword [eax]
mov cl, byte [ecx]
test cl, cl
je 0x47faa3
test eax, eax
je 0x47fad2
mov dl, byte [edi]
mov al, dl
sub al, 0x61
cmp al, 0x19
ja 0x47fa67
sub dl, 0x20
mov al, cl
sub al, 0x61
cmp al, 0x19
ja 0x47fa72
sub cl, 0x20
mov eax, dword [ebp - 0xc0]
cmp dl, cl
mov ecx, dword [ebp - 0xc4]
jne 0x47faa9
inc edi
dec eax
inc ecx
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc4], ecx
cmp byte [edi], 0
jne 0x47fa50
jmp 0x47faa9
mov edi, dword [ebp - 0xb8]
jmp 0x47fa03
mov ecx, dword [ebp - 0xc4]
test eax, eax
je 0x47fad2
mov dl, byte [edi]
mov al, dl
sub al, 0x61
cmp al, 0x19
ja 0x47faba
sub dl, 0x20
mov cl, byte [ecx]
mov al, cl
sub al, 0x61
cmp al, 0x19
ja 0x47fac7
sub cl, 0x20
xor eax, eax
cmp dl, cl
sete al
test eax, eax
je 0x47fae4
mov edi, dword [ebx + 0xf8]
cmp edi, 0x191
je 0x47fcf0
mov ecx, dword [esi + 0x4008]
mov eax, 0x13
mov dword [ebp - 0xc0], eax
mov edi, str.Proxy_authenticate:
mov dword [ebp - 0xc4], ecx
mov cl, byte [ecx]
test cl, cl
je 0x47fb48
test eax, eax
je 0x47fb77
mov dl, byte [edi]
mov al, dl
sub al, 0x61
cmp al, 0x19
ja 0x47fb17
sub dl, 0x20
mov al, cl
sub al, 0x61
cmp al, 0x19
ja 0x47fb22
sub cl, 0x20
mov eax, dword [ebp - 0xc0]
cmp dl, cl
mov ecx, dword [ebp - 0xc4]
jne 0x47fb4e
inc edi
dec eax
inc ecx
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0xc4], ecx
cmp byte [edi], 0
jne 0x47fb00
jmp 0x47fb4e
mov ecx, dword [ebp - 0xc4]
test eax, eax
je 0x47fb77
mov dl, byte [edi]
mov al, dl
sub al, 0x61
cmp al, 0x19
ja 0x47fb5f
sub dl, 0x20
mov cl, byte [ecx]
mov al, cl
sub al, 0x61
cmp al, 0x19
ja 0x47fb6c
sub cl, 0x20
xor eax, eax
cmp dl, cl
sete al
test eax, eax
je 0x47fb89
mov edi, dword [ebx + 0xf8]
cmp edi, 0x197
je 0x47fcf0
mov edi, dword [esi + 0x4008]
mov ecx, str.Content_Length:
push 0xf
mov edx, edi
call fcn.0049a620
add esp, 4
test eax, eax
je 0x47fbea
mov ecx, dword [ebx + 0xf8]
lea eax, [ecx - 0xc8]
cmp eax, 0x64
jae 0x47fbc9
push ecx
push str.Ignoring_Content_Length_in_CONNECT__03d_response_n
push ebx
call fcn.0046c560
add esp, 0xc
jmp 0x47fd31
push 0xa
lea eax, [edi + 0xf]
push 0
push eax
call fcn.00611911
add esp, 0xc
mov dword [esi + 0x4010], eax
mov dword [esi + 0x4014], edx
jmp 0x47fd31
push str.close
mov edx, str.Connection:
mov ecx, edi
call fcn.004835f0
add esp, 4
test al, al
je 0x47fc0e
mov byte [ebp - 0xb9], 1
jmp 0x47fd31
mov edi, dword [esi + 0x4008]
mov ecx, str.Transfer_Encoding:
push 0x12
mov edx, edi
call fcn.0049a620
add esp, 4
test eax, eax
je 0x47fc9f
mov ecx, dword [ebx + 0xf8]
lea eax, [ecx - 0xc8]
cmp eax, 0x64
jae 0x47fc4e
push ecx
push str.Ignoring_Transfer_Encoding_in_CONNECT__03d_response_n
push ebx
call fcn.0046c560
add esp, 0xc
jmp 0x47fd31
push str.chunked
mov edx, str.Transfer_Encoding:
mov ecx, edi
call fcn.004835f0
add esp, 4
test al, al
je 0x47fd31
push str.CONNECT_responded_chunked_n
push ebx
call fcn.0046c560
mov ebx, dword [ebp - 0xb8]
add esp, 8
mov byte [esi + 0x4018], 1
mov dword [ebx + 0x24], 0
mov dword [ebx + 0x38], 0
mov dword [ebx + 0x28], 0
jmp 0x47fd37
push str.close
mov edx, str.Proxy_Connection:
mov ecx, edi
call fcn.004835f0
add esp, 4
test al, al
je 0x47fcc0
mov byte [ebp - 0xb9], 1
jmp 0x47fd31
lea edi, [ebx + 0xf8]
push edi
lea eax, [ebp - 0xb4]
push eax
push str.HTTP_1._d__d
push dword [esi + 0x4008]
call fcn.004316f0
add esp, 0x10
cmp eax, 2
jne 0x47fd31
mov eax, dword [edi]
mov dword [ebx + 0x4a1c], eax
jmp 0x47fd31
mov ecx, dword [esi + 0x4008]
call fcn.00482570
mov ebx, eax
test ebx, ebx
je 0x48000e
mov ecx, dword [ebp - 0xb8]
cmp edi, 0x197
push ebx
sete dl
call fcn.00482d60
add esp, 4
mov edi, eax
push ebx
call dword [0x725400]
add esp, 4
test edi, edi
jne 0x47fff4
mov ebx, dword [ebp - 0xb8]
mov edi, dword [ebp - 0xc8]
lea edx, [esi + 0x4000]
mov dword [edx], 0
mov dword [esi + 0x400c], esi
mov dword [esi + 0x4008], esi
jmp 0x47f7ee
mov dword [esi + 0x400c], esi
cmp dword [ebx + 0xf8], 0x197
jne 0x47fe5d
cmp byte [ebx + 0x47ac], 0
jne 0x47fe5d
mov edx, dword [esi + 0x4010]
mov eax, edx
mov ecx, dword [esi + 0x4014]
or eax, ecx
mov dword [esi + 0x4004], 2
je 0x47fdd8
push ecx
push edx
push str.Ignore__I64d_bytes_of_response_body_n
push ebx
call fcn.0046c560
add esp, 0x10
lea edx, [esi + 0x4000]
mov eax, dword [esi + 0x4010]
mov edi, ebx
or eax, dword [esi + 0x4014]
mov ebx, dword [ebp - 0xb8]
jne 0x47f7ee
mov dword [esi + 0x401c], 2
jmp 0x47f7ee
cmp byte [esi + 0x4018], 0
je 0x47fe4e
push str.Ignore_chunked_response_body_n
push ebx
call fcn.0046c560
mov byte [ebx + 0x139], 1
add esp, 8
mov eax, dword [esi + 0x4008]
inc eax
cmp byte [eax], 0xa
jne 0x47fe08
mov dword [esi + 0x4008], eax
mov edx, dword [esi + 0x4008]
lea eax, [ebp - 0xb0]
push eax
push 1
inc edx
mov ecx, edi
call fcn.004a2ab0
add esp, 8
cmp eax, 0xffffffff
jne 0x47fda9
push str.chunk_reading_DONE_n
push ebx
call fcn.0046c560
add esp, 8
mov dword [esi + 0x4004], 0
mov dword [esi + 0x401c], 2
jmp 0x47fda9
mov dword [esi + 0x4004], 0
jmp 0x47fda9
mov dword [esi + 0x4004], 0
jmp 0x47fdaf
mov dword [esi + 0x401c], 2
mov dword [esi + 0x4004], 0
mov ebx, dword [ebp - 0xc8]
mov edi, dword [ebp - 0xb8]
mov ecx, edi
call fcn.00481340
test eax, eax
jne 0x480024
cmp dword [ebp - 0xd0], eax
jne 0x480137
cmp dword [ebx + 0x4a1c], 0xc8
je 0x47ff40
mov ecx, edi
call fcn.00482980
test eax, eax
jne 0x4801bf
cmp byte [edi + 0x29d], al
je 0x47ff40
mov byte [ebp - 0xb9], 1
jmp 0x47ff49
mov ebx, dword [ebp - 0xc8]
cmp dword [ebx + 0x180], 0
je 0x47ff19
cmp dword [ebx + 0x47a4], 0
je 0x47ff19
mov eax, dword [ebp - 0xb8]
push str.Proxy_CONNECT_connection_closed_n
push ebx
mov byte [eax + 0x2b6], 1
call fcn.0046c560
add esp, 8
mov dword [esi + 0x4004], 0
jmp 0x47fe86
push str.Proxy_CONNECT_aborted
push ebx
mov dword [ebp - 0xd0], 1
call fcn.0046c5e0
add esp, 8
mov dword [esi + 0x4004], 0
jmp 0x47fe86
cmp byte [ebp - 0xb9], 0
je 0x47ff56
cmp dword [ebx + 0x140], 0
jne 0x48005e
cmp dword [ebx + 0x140], 0
je 0x480079
cmp dword [esi + 0x401c], 2
jne 0x47ffa6
mov eax, dword [edi + 0x55c]
mov dword [eax + 0x401c], 0
mov dword [eax + 0x4004], 1
mov dword [eax + 0x4008], eax
mov dword [eax + 0x400c], eax
mov dword [eax + 0x4010], 0
mov dword [eax + 0x4014], 0
cmp dword [ebx + 0x140], 0
je 0x480079
mov eax, dword [ebp - 0xd4]
mov edx, dword [ebp - 0xdc]
jmp 0x47f313
push dword [ebp - 0xc4]
call dword [0x725400]
add esp, 4
mov ecx, dword [ebp - 0xc0]
call fcn.00483150
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
mov eax, edi
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
mov ecx, edi
call fcn.00483150
mov eax, 0x1b
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
mov eax, 0x2a
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
push str.CONNECT_response_too_large_
push edi
call fcn.0046c5e0
mov eax, 0x38
add esp, 8
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0xd8]
mov ecx, edi
mov edx, dword [edx]
call fcn.0046e980
mov eax, dword [ebp - 0xd8]
mov dword [eax], 0xffffffff
cmp dword [ebx + 0xf8], 0xc8
je 0x48014d
cmp byte [ebp - 0xb9], 0
je 0x4800b9
cmp dword [ebx + 0x140], 0
je 0x4800b9
push str.Connect_me_again_please_n
push ebx
mov byte [edi + 0x2b6], 1
call fcn.0046c560
add esp, 8
mov ecx, edi
call fcn.0047f260
jmp 0x480110
push dword [ebx + 0x140]
call dword [0x725400]
mov dword [ebx + 0x140], 0
add esp, 4
mov eax, dword [edi + 0x2e0]
mov eax, dword [eax + 0x44]
and eax, 0x200
sete cl
test eax, eax
jne 0x4800f5
cmp cl, byte [edi + 0x29d]
je 0x4800f5
mov byte [edi + 0x29d], cl
mov eax, dword [ebp - 0xd8]
mov ecx, edi
mov edx, dword [eax]
call fcn.0046e980
mov eax, dword [ebp - 0xd8]
mov dword [eax], 0xffffffff
mov dword [esi + 0x401c], 0
cmp byte [edi + 0x2b6], 0
jne 0x480193
push dword [ebx + 0xf8]
push str.Received_HTTP_code__d_from_proxy_after_CONNECT
push ebx
call fcn.0046c5e0
add esp, 0xc
mov eax, 0x38
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
mov dword [esi + 0x401c], 2
push dword [edi + 0x2f4]
call dword [0x725400]
add esp, 4
mov dword [edi + 0x2f4], 0
mov byte [ebx + 0x47a8], 1
push str.Proxy_replied_OK_to_CONNECT_request_n
push ebx
call fcn.0046c560
mov byte [ebx + 0x139], 0
add esp, 8
mov byte [edi + 0x2af], 0
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004aa758
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0xc8]
push str.Proxy_CONNECT_aborted_due_to_timeout
push edi
call fcn.0046c5e0
mov eax, 0x1c
add esp, 8
mov ecx, dword [ebp - 4]
pop edi
pop esi
xor ecx, ebp
pop ebx
call fcn.004aa758
mov esp, ebp
pop ebp
ret