Function at 0x46dbc0
Capabilities:
Check http status code

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
push ebx
push esi
push edi
mov edi, dword [ebp + 8]
lea esi, [edi + 0x50]
nop
mov eax, dword [esi + 0x5c]
mov ecx, dword [ebp + 0x10]
mov dword [esi + 0x60], eax
mov edx, dword [ecx]
push edx
push 0xa
push eax
call fcn.0047dce0
mov ecx, dword [ebp + 0x10]
add esp, 0xc
mov dword [esi + 0x64], eax
mov ebx, edi
test eax, eax
je 0x46e961
sub eax, dword [esi + 0x5c]
inc eax
sub dword [ecx], eax
mov dword [ebp - 8], eax
mov eax, dword [esi + 0x64]
inc eax
mov dword [esi + 0x5c], eax
sub eax, dword [esi + 0x60]
push eax
call fcn.0046bd30
add esp, 4
test eax, eax
jne 0x46eb16
mov eax, dword [esi + 0x54]
mov ebx, dword [ebp + 0xc]
mov dword [esi + 0x64], eax
mov ecx, dword [edi + 0x6dc]
xor edx, edx
mov dword [esi + 0x68], ecx
cmp dword [esi + 0x50], edx
jne 0x46dc55
cmp dword [esi + 0x58], 5
jbe 0x46dc55
mov eax, dword [edi + 0x6dc]
push edi
mov ecx, ebx
call fcn.0046bd00
add esp, 4
test eax, eax
je 0x46e9b2
xor edx, edx
mov eax, dword [esi + 0x68]
mov cl, byte [eax]
cmp cl, 0xa
je 0x46e696
cmp cl, 0xd
je 0x46e69b
mov ecx, dword [esi + 0x50]
lea edi, [ecx + 1]
mov dword [esi + 0x50], edi
cmp ecx, edx
jne 0x46dee9
mov edx, dword [ebx + 0x440]
mov ecx, dword [edx + 0x3c]
test cl, 3
je 0x46dd54
mov edi, dword [ebp + 0xc]
lea ebx, [esi + 0x78]
push ebx
add edi, 0x178
push edi
lea ecx, [ebp - 4]
push ecx
push str._HTTP__d._d__d
push eax
call fcn.0047d5b8
add esp, 0x14
cmp eax, 1
jne 0x46dcd9
cmp dword [ebp - 4], 2
jne 0x46dd16
mov edx, dword [esi + 0x68]
push ebx
push str._HTTP_2__d
push edx
call fcn.0047d5b8
add esp, 0xc
cmp eax, 1
jne 0x46dd16
mov dword [edi], 0
jmp 0x46dcde
cmp eax, 3
jne 0x46dd16
mov eax, dword [ebp - 4]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
cmp dword [esi + 0x88], 2
mov eax, dword [edi]
jne 0x46dda2
mov ebx, dword [ebp + 8]
cmp eax, 0x14
je 0x46dda5
push str.Lying_server__not_serving_HTTP_2_n
push ebx
call fcn.00451100
add esp, 8
jmp 0x46dda5
mov ecx, dword [esi + 0x68]
push ebx
push str._HTTP__3d
push ecx
call fcn.0047d5b8
add esp, 0xc
mov dword [edi], 0xa
test eax, eax
jne 0x46dda2
mov ebx, dword [esi + 0x68]
mov eax, dword [ebp + 8]
call fcn.0046bc80
test eax, eax
je 0x46e9fb
mov dword [esi + 0x78], 0xc8
mov dword [edi], 0xa
jmp 0x46dda2
test ecx, 0x40000
je 0x46e9fb
mov edi, dword [ebp + 0xc]
lea ecx, [esi + 0x78]
push ecx
add edi, 0x17c
push edi
lea edx, [ebp - 0xc]
push edx
push str._RTSP__d._d__3d
push eax
call fcn.0047d5b8
add esp, 0x14
cmp eax, 3
jne 0x46e9fb
mov eax, dword [ebp - 0xc]
lea eax, [eax + eax*4]
add eax, eax
add dword [edi], eax
mov edi, dword [ebp + 0xc]
add edi, 0x178
mov dword [edi], 0xb
mov ebx, dword [ebp + 8]
mov ecx, dword [esi + 0x78]
mov eax, dword [ebx + 0x4850]
mov dword [ebx + 0x48e0], ecx
mov edx, dword [edi]
mov dword [ebx + 0x48e8], edx
test eax, eax
je 0x46ddc4
cmp eax, dword [edi]
jle 0x46ddcc
mov eax, dword [edi]
mov dword [ebx + 0x4850], eax
cmp dword [ebx + 0x398], 0
je 0x46de2f
mov eax, dword [esi + 0x78]
cmp eax, 0x190
jl 0x46de2f
cmp eax, 0x191
jne 0x46ddf2
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0x3b8], 0
jne 0x46de2f
cmp eax, 0x197
jne 0x46de05
mov edx, dword [ebp + 0xc]
cmp dword [edx + 0x3bc], 0
jne 0x46de2f
mov ecx, dword [ebx + 0x4878]
or ecx, dword [ebx + 0x487c]
je 0x46e9e6
cmp dword [ebx + 0x268], 1
jne 0x46e9e6
cmp eax, 0x1a0
jne 0x46e9e6
mov edi, dword [edi]
cmp edi, 0xa
jne 0x46de51
push str.HTTP_1.0__assume_close_after_body_n
push ebx
call fcn.00451100
mov edx, dword [ebp + 0xc]
push 1
push edx
call fcn.004542b0
add esp, 0x10
jmp 0x46deae
cmp edi, 0x14
je 0x46de9f
cmp dword [esi + 0x88], 1
jne 0x46de65
cmp dword [esi + 0x78], 0x65
je 0x46de9f
cmp edi, 0xb
jl 0x46deae
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x39c], 0
jne 0x46deae
mov ecx, eax
cmp dword [ecx + 0x748], 0
je 0x46deae
mov edi, eax
push edi
push ebx
call fcn.0046ef10
add esp, 8
test eax, eax
jne 0x46deae
mov edx, dword [edi + 0x748]
mov dword [edx], 1
jmp 0x46deae
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x748]
mov dword [ecx], 2
mov eax, dword [esi + 0x78]
sub eax, 0xcc
je 0x46dec0
sub eax, 0x64
jne 0x46dee9
mov ebx, dword [ebp + 8]
xor eax, eax
cmp dword [ebx + 0x25c], eax
je 0x46ded4
mov dword [ebx + 0x48f0], 1
mov dword [esi], eax
mov dword [esi + 4], eax
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov dword [esi + 0xb4], 1
cmp dword [esi + 0xb4], 0
mov edi, dword [ebp + 8]
jne 0x46dfab
cmp dword [edi + 0x3f8], 0
jne 0x46dfab
mov edx, dword [esi + 0x68]
push 0xf
push edx
push str.Content_Length:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46dfab
mov eax, dword [esi + 0x68]
push 0xa
add eax, 0xf
push 0
push eax
call fcn.0043b0e9
mov ecx, dword [edi + 0x360]
mov dword [ebp - 0x10], edx
mov ebx, eax
mov eax, dword [edi + 0x364]
mov edx, ecx
add esp, 0xc
or edx, eax
je 0x46df5e
cmp dword [ebp - 0x10], eax
jg 0x46ea0b
jl 0x46df5e
cmp ebx, ecx
ja 0x46ea0b
cmp dword [ebp - 0x10], 0
jl 0x46df88
jg 0x46df6a
test ebx, ebx
jb 0x46df88
mov eax, dword [ebp - 0x10]
push eax
push ebx
push edi
mov dword [esi], ebx
mov dword [esi + 4], eax
mov dword [esi + 0x10], ebx
mov dword [esi + 0x14], eax
call fcn.0045a070
add esp, 0xc
jmp 0x46e626
mov eax, dword [ebp + 0xc]
push 2
push eax
call fcn.004542b0
mov ecx, dword [ebp - 0x10]
push ecx
push ebx
push str.Negative_content_length:__I64d__closing_after_transfer_n
push edi
call fcn.00451100
add esp, 0x18
jmp 0x46e626
mov edx, dword [esi + 0x68]
push 0xd
push edx
push str.Content_Type:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e007
mov eax, dword [esi + 0x68]
push eax
call fcn.0046ac80
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ea25
cmp byte [ebx], 0
jne 0x46dfec
push ebx
call dword [0x4a2f78]
add esp, 4
jmp 0x46e626
mov ecx, dword [edi + 0x4908]
push ecx
call dword [0x4a2f78]
add esp, 4
mov dword [edi + 0x4908], ebx
jmp 0x46e626
mov edx, dword [esi + 0x68]
push 7
push edx
push str.Server:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e07a
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x178], 0x14
jge 0x46e626
mov ecx, dword [esi + 0x68]
push ecx
call fcn.0046ac80
mov edx, dword [ebp + 0xc]
mov ebx, eax
mov eax, dword [edx + 0x748]
add esp, 4
test eax, eax
je 0x46e06b
cmp dword [eax], 1
jne 0x46e06b
push ebx
push edi
call fcn.0046f0b0
add esp, 8
test eax, eax
je 0x46e06b
mov eax, dword [ebp + 0xc]
mov ecx, dword [eax + 0x748]
mov dword [ecx], 0xffffffff
push ebx
call dword [0x4a2f78]
add esp, 4
jmp 0x46e626
mov ebx, dword [ebp + 0xc]
cmp dword [ebx + 0x178], 0xa
jne 0x46e0c4
cmp dword [ebx + 0x3b0], 0
je 0x46e0c4
mov edx, dword [esi + 0x68]
push str.keep_alive
push str.Proxy_Connection:
push edx
call fcn.0046b970
add esp, 0xc
test eax, eax
je 0x46e0c4
push 0
push ebx
call fcn.004542b0
push str.HTTP_1.0_proxy_connection_set_to_keep_alive__n
push edi
call fcn.00451100
add esp, 0x10
jmp 0x46e626
cmp dword [ebx + 0x178], 0xb
jne 0x46e10b
cmp dword [ebx + 0x3b0], 0
je 0x46e10b
mov eax, dword [esi + 0x68]
push str.close
push str.Proxy_Connection:
push eax
call fcn.0046b970
add esp, 0xc
test eax, eax
je 0x46e10b
push 1
push ebx
call fcn.004542b0
push str.HTTP_1.1_proxy_connection_set_close__n
push edi
call fcn.00451100
add esp, 0x10
jmp 0x46e626
cmp dword [ebx + 0x178], 0xa
jne 0x46e149
mov ecx, dword [esi + 0x68]
push str.keep_alive
push str.Connection:
push ecx
call fcn.0046b970
add esp, 0xc
test eax, eax
je 0x46e149
push 0
push ebx
call fcn.004542b0
push str.HTTP_1.0_connection_set_to_keep_alive__n
push edi
call fcn.00451100
add esp, 0x10
jmp 0x46e626
mov edx, dword [esi + 0x68]
push str.close
push str.Connection:
push edx
call fcn.0046b970
add esp, 0xc
test eax, eax
je 0x46e173
push 2
push ebx
call fcn.004542b0
add esp, 8
jmp 0x46e626
mov eax, dword [esi + 0x68]
push 0x12
push eax
push str.Transfer_Encoding:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e293
mov ebx, dword [esi + 0x68]
add ebx, 0x12
mov al, byte [ebx]
test al, al
je 0x46e1bd
lea ebx, [ebx]
movzx ecx, al
push ecx
call fcn.0043f8a8
add esp, 4
test eax, eax
jne 0x46e1b5
cmp byte [ebx], 0x2c
jne 0x46e1bd
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x46e1a0
push 7
push ebx
push str.chunked
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e1ea
mov edx, dword [ebp + 0xc]
push edx
mov dword [esi + 0xc8], 1
call fcn.0047a490
add esp, 4
add ebx, 7
cmp dword [esi + 0x8c], 0
jne 0x46e626
push 8
push ebx
push str.identity
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e21d
mov dword [esi + 0x8c], 0
add ebx, 8
jmp 0x46e194
push 7
push ebx
push str.deflate
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e243
mov dword [esi + 0x8c], 1
add ebx, 7
jmp 0x46e194
push 4
push ebx
push str.gzip
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e269
mov dword [esi + 0x8c], 2
add ebx, 4
jmp 0x46e194
push 6
push ebx
push str.x_gzip
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e626
mov dword [esi + 0x8c], 2
add ebx, 6
jmp 0x46e194
mov eax, dword [esi + 0x68]
push 0x11
push eax
push str.Content_Encoding:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e369
cmp dword [edi + 0x440], 0
je 0x46e369
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0x11]
add ebx, 0x11
test al, al
je 0x46e2e8
jmp 0x46e2d0
movzx ecx, al
push ecx
call fcn.0043f8a8
add esp, 4
test eax, eax
je 0x46e2e8
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x46e2d0
push 8
push ebx
push str.identity
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e30b
mov dword [esi + 0x8c], 0
jmp 0x46e626
push 7
push ebx
push str.deflate
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e32e
mov dword [esi + 0x8c], 1
jmp 0x46e626
push 4
push ebx
push str.gzip
call fcn.00457ce0
add esp, 0xc
test eax, eax
jne 0x46e35a
push 6
push ebx
push str.x_gzip
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e626
mov dword [esi + 0x8c], 2
jmp 0x46e626
mov edx, dword [esi + 0x68]
push 0xe
push edx
push str.Content_Range:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e408
mov ebx, dword [esi + 0x68]
mov al, byte [ebx + 0xe]
add ebx, 0xe
test al, al
je 0x46e3ae
movzx eax, al
push eax
call fcn.0043f7a3
add esp, 4
test eax, eax
jne 0x46e3ae
cmp byte [ebx], 0x2a
je 0x46e3ae
mov al, byte [ebx + 1]
inc ebx
test al, al
jne 0x46e391
movzx ecx, byte [ebx]
push ecx
call fcn.0043f7a3
add esp, 4
test eax, eax
je 0x46e3f5
push 0xa
push 0
push ebx
call fcn.0043b0e9
add esp, 0xc
mov dword [esi + 0x70], eax
mov dword [esi + 0x74], edx
cmp dword [edi + 0x4878], eax
jne 0x46e626
cmp dword [edi + 0x487c], edx
jne 0x46e626
mov dword [esi + 0x6c], 1
jmp 0x46e626
xor eax, eax
mov dword [edi + 0x4878], eax
mov dword [edi + 0x487c], eax
jmp 0x46e626
cmp dword [edi + 0x590], 0
je 0x46e473
mov ecx, dword [esi + 0x68]
push 0xb
push ecx
push str.Set_Cookie:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e473
push 2
push 2
push edi
call fcn.0045a920
mov eax, dword [ebx + 0x470]
add esp, 0xc
test eax, eax
jne 0x46e445
mov eax, dword [ebx + 0x98]
mov edx, dword [edi + 0x4860]
mov ecx, dword [edi + 0x590]
push edx
push eax
mov eax, dword [esi + 0x68]
add eax, 0xb
push eax
push 1
push ecx
push edi
call fcn.00452150
push 2
push edi
call fcn.0045a960
add esp, 0x20
jmp 0x46e626
mov edx, dword [esi + 0x68]
push 0xe
push edx
push str.Last_Modified:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e4e2
cmp dword [edi + 0x25c], 0
jne 0x46e49c
cmp dword [edi + 0x37c], 0
je 0x46e4e2
push 0
call fcn.0047d4fd
mov ecx, dword [esi + 0x68]
mov dword [ebp - 0x1c], eax
lea eax, [ebp - 0x1c]
push eax
add ecx, 0xe
push ecx
mov dword [ebp - 0x18], edx
call fcn.00474980
add esp, 0xc
mov dword [esi + 0x90], eax
mov dword [esi + 0x94], edx
cmp dword [edi + 0x37c], 0
je 0x46e626
mov edx, eax
mov dword [edi + 0x48ec], edx
jmp 0x46e626
mov eax, dword [esi + 0x68]
push 0x11
push eax
push str.WWW_Authenticate:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e503
mov eax, dword [esi + 0x78]
cmp eax, 0x191
je 0x46e524
mov ecx, dword [esi + 0x68]
push 0x13
push ecx
push str.Proxy_authenticate:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e576
mov eax, dword [esi + 0x78]
cmp eax, 0x197
jne 0x46e576
xor edx, edx
cmp eax, 0x197
mov eax, dword [esi + 0x68]
sete dl
push eax
mov dword [ebp - 8], edx
call fcn.0046ac80
mov ebx, eax
add esp, 4
test ebx, ebx
je 0x46ea25
mov ecx, dword [ebp - 8]
mov edx, dword [ebp + 0xc]
push ebx
push ecx
push edx
call fcn.0046b320
push ebx
mov dword [ebp - 8], eax
call dword [0x4a2f78]
add esp, 0x10
cmp dword [ebp - 8], 0
je 0x46e626
mov eax, dword [ebp - 8]
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x78]
cmp eax, 0x12c
jl 0x46e602
cmp eax, 0x190
jge 0x46e602
mov eax, dword [esi + 0x68]
push 9
push eax
push str.Location:
call fcn.00457ce0
add esp, 0xc
test eax, eax
je 0x46e602
cmp dword [edi + 0x108], 0
jne 0x46e602
mov ecx, dword [esi + 0x68]
push ecx
call fcn.0046ac80
add esp, 4
test eax, eax
je 0x46ea25
cmp byte [eax], 0
jne 0x46e5d0
push eax
call dword [0x4a2f78]
add esp, 4
jmp 0x46e626
cmp dword [edi + 0x3a0], 0
mov dword [edi + 0x108], eax
je 0x46e626
push eax
call dword [0x4a2f80]
add esp, 4
mov dword [edi + 0x10c], eax
test eax, eax
je 0x46ea25
push ebx
call fcn.0046aec0
add esp, 4
jmp 0x46e61e
mov edx, dword [ebx + 0x440]
test dword [edx + 0x3c], 0x40000
je 0x46e626
mov eax, dword [esi + 0x68]
push eax
push ebx
call fcn.0045c010
add esp, 8
test eax, eax
jne 0x46eb16
cmp dword [edi + 0x3ac], 0
mov ebx, 2
je 0x46e639
mov ebx, 3
cmp dword [edi + 0x3c4], 0
je 0x46e659
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0x58]
mov eax, dword [esi + 0x68]
push ecx
push edx
push eax
push 1
push edi
call fcn.00451020
add esp, 0x14
mov ecx, dword [esi + 0x58]
mov edx, dword [esi + 0x68]
mov eax, dword [ebp + 0xc]
push ecx
push edx
push ebx
push eax
call fcn.00451530
add esp, 0x10
test eax, eax
jne 0x46eb16
mov ecx, dword [esi + 0x58]
add dword [edi + 0x48f4], ecx
mov edx, dword [esi + 0x58]
mov eax, dword [edi + 0x6dc]
add dword [edi + 0x80], edx
mov dword [esi + 0x54], eax
jmp 0x46e917
cmp cl, 0xd
jne 0x46e69f
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x68]
cmp byte [eax], 0xa
jne 0x46e6ab
inc eax
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x78]
cmp eax, 0x64
jl 0x46e705
cmp eax, 0xc7
jg 0x46e705
sub eax, 0x64
je 0x46e6e4
mov ecx, 1
sub eax, ecx
je 0x46e6d3
mov dword [esi + 0x48], ecx
mov dword [esi + 0x50], edx
jmp 0x46e75b
cmp dword [esi + 0x88], ecx
je 0x46e933
mov dword [esi + 0x48], edx
jmp 0x46e75b
mov dword [esi + 0x48], 1
mov dword [esi + 0x50], edx
cmp dword [esi + 0x84], edx
jle 0x46e75b
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], edx
jmp 0x46e75b
mov ecx, dword [esi]
and ecx, dword [esi + 4]
mov dword [esi + 0x48], edx
cmp ecx, 0xffffffff
jne 0x46e75b
cmp dword [esi + 0xc8], edx
jne 0x46e75b
cmp dword [ebx + 0x39c], edx
jne 0x46e763
cmp dword [ebx + 0x178], 0xb
jne 0x46e75b
mov eax, dword [ebx + 0x440]
test dword [eax + 0x3c], 0x40000
jne 0x46e75b
cmp dword [edi + 0x268], 5
je 0x46e75b
push str.no_chunk__no_close__no_size._Assume_close_to_signal_end_n
push edi
call fcn.00451100
push 2
push ebx
call fcn.004542b0
add esp, 0x10
xor edx, edx
cmp dword [ebx + 0x39c], edx
je 0x46e7a1
mov eax, dword [edi + 0xc8]
cmp eax, 0x191
jne 0x46e779
cmp dword [ebx + 0x4ec], 2
je 0x46e789
cmp eax, 0x197
jne 0x46e7a1
cmp dword [ebx + 0x528], 2
jne 0x46e7a1
push str.Connection_closure_while_negotiating_auth__HTTP_1.0___n
push edi
call fcn.00451100
add esp, 8
mov dword [edi + 0x480c], 1
mov edx, ebx
call fcn.0046b580
test eax, eax
jne 0x46ea31
lea ecx, [eax + 2]
cmp dword [edi + 0x3ac], eax
je 0x46e7be
lea ecx, [eax + 3]
mov eax, dword [edi + 0x6dc]
mov ebx, dword [esi + 0x68]
sub ebx, eax
push ebx
push eax
push ecx
mov ecx, dword [ebp + 0xc]
push ecx
call fcn.00451530
add esp, 0x10
test eax, eax
jne 0x46eb16
add dword [edi + 0x80], ebx
add dword [edi + 0x48f4], ebx
mov eax, dword [esi + 0x78]
mov ecx, dword [edi + 0x80]
cmp eax, 0x64
jl 0x46e805
cmp eax, 0xc7
jg 0x46e805
mov eax, ecx
jmp 0x46e807
xor eax, eax
mov edx, dword [ebp + 0xc]
push edx
mov dword [edi + 0x84], eax
call fcn.0046be90
add esp, 4
test eax, eax
jne 0x46eb16
cmp dword [esi + 0x78], 0x12c
jl 0x46e904
mov eax, dword [ebp + 0xc]
cmp dword [eax + 0x3e0], 0
jne 0x46e8e3
mov ecx, eax
cmp dword [ecx + 0x39c], 0
jne 0x46e8e3
mov edx, eax
cmp dword [edx + 0x3e4], 0
jne 0x46e8e3
mov eax, dword [edi + 0x268]
add eax, 0xfffffffe
cmp eax, 2
ja 0x46e8e3
cmp dword [esi + 0xac], 0
jne 0x46e8e3
cmp dword [edi + 0x39c], 0
je 0x46e8a6
push str.HTTP_error_before_end_of_send__keep_sending_n
push edi
call fcn.00451100
add esp, 8
cmp dword [esi + 0x84], 0
jle 0x46e8e3
or dword [esi + 0xa8], 2
mov dword [esi + 0x84], 0
jmp 0x46e8e3
push str.HTTP_error_before_end_of_send__stop_sending_n
push edi
call fcn.00451100
mov eax, dword [ebp + 0xc]
push 2
push eax
call fcn.004542b0
and dword [esi + 0xa8], 0xfffffffd
add esp, 0x10
mov dword [esi + 0xac], 1
cmp dword [edi + 0x4854], 0
je 0x46e8e3
mov dword [esi + 0x84], 3
mov ecx, dword [ebp + 0xc]
cmp dword [ecx + 0x3e4], 0
je 0x46e904
push str.Keep_sending_data_to_get_tossed_away__n
push edi
call fcn.00451100
add esp, 8
or dword [esi + 0xa8], 2
cmp dword [esi + 0x48], 0
je 0x46ea4f
mov edx, dword [edi + 0x6dc]
mov dword [esi + 0x54], edx
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x58], 0
cmp byte [eax], 0
jne 0x46dbd0
pop edi
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push str.Received_101_n
push edi
call fcn.00451100
add esp, 8
mov eax, 1
pop edi
mov dword [esi + 0x88], 2
mov dword [esi + 0x48], eax
mov dword [esi + 0x50], 0
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [ecx]
push edx
call fcn.0046bd30
add esp, 4
test eax, eax
jne 0x46eb16
cmp dword [esi + 0x50], eax
jne 0x46eb14
cmp dword [esi + 0x58], 5
jbe 0x46eb14
mov eax, dword [edi + 0x6dc]
mov ecx, dword [ebp + 0xc]
push edi
call fcn.0046bd00
add esp, 4
test eax, eax
jne 0x46eb14
pop edi
mov dword [esi + 0x48], eax
mov dword [esi + 0x4c], 2
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp + 0x10]
mov dword [esi + 0x48], 0
cmp dword [eax], 0
je 0x46e9d1
pop edi
mov dword [esi + 0x4c], 1
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 8]
pop edi
mov dword [esi + 0x4c], 2
pop esi
mov dword [eax], ecx
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push ebx
call fcn.0046bdf0
add esp, 4
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
mov dword [esi + 0x48], 0
pop esi
xor eax, eax
pop ebx
mov esp, ebp
pop ebp
ret
push str.Maximum_file_size_exceeded
push edi
call fcn.00451180
add esp, 8
pop edi
pop esi
mov eax, 0x3f
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov esp, ebp
pop ebp
ret
mov edx, dword [esi + 0x78]
push edx
push str.The_requested_URL_returned_error:__d
push edi
call fcn.00451180
add esp, 0xc
pop edi
pop esi
mov eax, 0x16
pop ebx
mov esp, ebp
pop ebp
ret
cmp dword [edi + 0x3b8], 0
mov eax, dword [ebp + 0x14]
je 0x46ea66
mov dword [eax], 1
or edx, 0xffffffff
jmp 0x46eaae
mov ecx, dword [ebp + 0xc]
mov edx, dword [ecx + 0x440]
test dword [edx + 0x3c], 0x40000
je 0x46ea97
cmp dword [edi + 0x518], 2
jne 0x46ea97
or edx, 0xffffffff
cmp dword [esi + 4], edx
jg 0x46ea9a
jl 0x46ea8f
cmp dword [esi], edx
ja 0x46ea9a
mov dword [eax], 1
jmp 0x46eaae
or edx, 0xffffffff
cmp dword [esi + 0xc8], 0
je 0x46eaae
mov dword [esi], edx
mov dword [esi + 4], edx
mov dword [esi + 0x10], edx
mov dword [esi + 0x14], edx
mov eax, dword [esi]
mov ecx, dword [esi + 4]
cmp eax, edx
jne 0x46eabb
cmp ecx, edx
je 0x46ead1
push ecx
push eax
push edi
call fcn.0045a070
mov eax, dword [esi]
mov ecx, dword [esi + 4]
add esp, 0xc
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], ecx
cmp dword [esi + 0x10], 0
jne 0x46eae8
cmp dword [esi + 0x14], 0
jne 0x46eae8
mov edx, dword [ebp + 0x14]
mov dword [edx], 1
jmp 0x46eaf0
mov eax, dword [ebp + 0x14]
cmp dword [eax], 0
je 0x46eaf7
and dword [esi + 0xa8], 0xfffffffe
cmp dword [edi + 0x3c4], 0
je 0x46eb14
mov ecx, dword [ebp + 0xc]
mov edx, dword [esi + 0x60]
push ecx
push ebx
push edx
push 1
push edi
call fcn.00451020
add esp, 0x14
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret