Function at 0x42bf20
Capabilities:
Resolve function by parsing pe exports
Set socket configuration

Disassembly:
push ebp
mov edx, 0xffffffff
push edi
push esi
push ebx
sub esp, 0x7c
mov ebx, dword [esp + 0x94]
lea eax, [ebx + 0x70]
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x90]
mov edi, dword [eax + 0x4c0]
mov dword [eax + 0x4c0], 0
mov eax, dword [ebx + 0x110]
mov ecx, eax
and ecx, 0x15
cmp ecx, 1
jne 0x42bf6e
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x298]
and eax, 0x2a
mov ecx, 0xffffffff
cmp eax, 2
jne 0x42bf88
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 0x29c]
mov eax, dword [esp + 0x90]
mov eax, dword [eax]
mov esi, dword [eax + 0xa18]
test esi, esi
je 0x42c0c0
or edi, 1
cmp edi, 4
je 0x42ce70
mov eax, dword [ebx + 0x110]
mov esi, eax
and esi, 1
mov dword [esp + 0x3c], esi
jne 0x42c0f0
test al, 2
je 0x42bfcd
and edi, 2
jne 0x42c8c9
call sym._Curl_now
mov edi, dword [esp + 0x4c]
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], edx
cmp dword [ebx + 0xf4], 1
je 0x42cdd0
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call sym._Curl_pgrsUpdate
test eax, eax
jne 0x42c6a9
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x44]
mov eax, dword [eax + 0x40]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._Curl_speedcheck
test eax, eax
jne 0x42c0af
mov ecx, dword [ebx + 0x110]
test ecx, ecx
jne 0x42ca60
cmp byte [ebx + 0x4d8], 0
jne 0x42c692
mov esi, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov eax, esi
and eax, edi
cmp eax, 0xffffffff
je 0x42c678
mov eax, dword [ebx + 0x90]
mov ecx, dword [ebx + 0x94]
mov edx, eax
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x34]
mov eax, esi
mov ebp, edx
mov dword [esp + 0x30], edx
mov edx, edi
xor eax, ebp
xor edx, ecx
or eax, edx
je 0x42c678
mov edx, dword [ebx + 0x11c]
test edx, edx
jne 0x42c678
sub esi, dword [esp + 0x30]
sbb edi, dword [esp + 0x34]
mov dword [esp + 4], str.transfer_closed_with__I64d_bytes_remaining_to_read
mov dword [esp + 8], esi
mov dword [esp + 0xc], edi
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x12
add esp, 0x7c
pop ebx
pop esi
pop edi
pop ebp
ret
test edi, edi
jne 0x42bfa2
mov dword [esp + 0xc], 0
mov dword [esp + 8], ecx
mov dword [esp + 4], 0xffffffff
mov dword [esp], edx
call sym._Curl_socket_check
mov edi, eax
jmp 0x42bfa2
test edi, 1
jne 0x42c10c
mov ecx, dword [esp + 0x90]
cmp byte [ecx + 0x271], 0
je 0x42c8b0
mov eax, dword [esp + 0x98]
xor ebp, ebp
mov byte [esp + 0x64], 0
mov dword [esp + 0x30], 0x64
mov byte [eax], 0
mov eax, dword [esp + 0x9c]
mov dword [esp + 0x48], 0
mov byte [eax], 0
mov dword [esp + 0x5c], edi
mov dword [esp + 0x40], ebp
mov ebp, dword [esp + 0x90]
lea esi, cs:[esi]
nop
mov eax, dword [ebx + 0x70]
mov edx, dword [ebx + 0x74]
mov ecx, dword [ebx + 0x498]
mov esi, eax
and esi, edx
cmp esi, 0xffffffff
je 0x42c186
cmp byte [ebx + 0xb8], 0
jne 0x42c186
sub eax, dword [ebx + 0x90]
sbb edx, dword [ebx + 0x94]
mov esi, eax
cmp eax, ecx
mov eax, edx
sbb eax, 0
cmovl ecx, esi
test ecx, ecx
jne 0x42c4e0
mov eax, dword [ebx + 0x90]
or eax, dword [ebx + 0x94]
mov dword [esp + 0x6c], 0
je 0x42c527
mov eax, dword [ebx + 0x104]
test eax, eax
jne 0x42c550
mov edi, dword [esp + 0x3c]
xor eax, eax
mov edx, dword [ebx + 0x108]
mov byte [edx + eax], 0
mov eax, dword [ebx + 0x108]
mov edx, dword [ebp + 0x28c]
mov dword [ebx + 0xcc], eax
mov eax, dword [edx + 0x34]
test eax, eax
je 0x42c20b
lea edx, [esp + 0x64]
mov dword [esp + 4], ebp
mov dword [esp + 0xc], edx
lea edx, [esp + 0x6c]
mov dword [esp + 8], edx
mov dword [esp], ebx
call eax
test eax, eax
jne 0x42c0af
cmp byte [esp + 0x64], 0
jne 0x42c6f8
cmp byte [ebx + 0xb8], 0
jne 0x42c420
mov eax, dword [ebx + 0xcc]
test eax, eax
je 0x42c48a
mov esi, dword [esp + 0x6c]
test esi, esi
jle 0x42c630
cmp byte [ebx + 0x4d8], 0
jne 0x42d1f8
mov eax, dword [ebx + 0x104]
mov ecx, eax
or ecx, edi
je 0x42cb08
add eax, 1
cmp byte [ebx + 0x4e0], 0
mov dword [ebx + 0x104], eax
je 0x42c291
mov eax, dword [ebx + 0xbc]
test eax, eax
jne 0x42c7f0
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0xcc]
mov dword [esp + 4], 3
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_debug
cmp byte [ebx + 0x128], 0
jne 0x42c748
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
cmp dword [ebx + 0xbc], 1
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
je 0x42c710
mov eax, dword [esp + 0x6c]
mov esi, dword [ebx + 0x80]
mov ecx, dword [ebx + 0x84]
cdq
mov dword [esp + 0x58], eax
add eax, dword [esp + 0x40]
adc edx, dword [esp + 0x44]
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], edx
mov edx, esi
and edx, ecx
cmp edx, 0xffffffff
je 0x42c348
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
cmp eax, esi
mov eax, edx
sbb eax, ecx
jl 0x42c348
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x58]
add ecx, edx
mov eax, ecx
sub eax, esi
mov dword [esp + 0x48], eax
je 0x42c31e
cmp byte [ebx + 0x115], 0
je 0x42cea0
mov eax, esi
sub eax, edx
js 0x42ca40
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x44]
add edx, eax
adc ecx, 0
mov dword [esp + 0x50], edx
mov dword [esp + 0x54], ecx
and dword [ebx + 0x110], 0xfffffffe
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov dword [ebx + 0x90], eax
mov dword [ebx + 0x94], edx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp], ebx
call sym._Curl_pgrsSetDownloadCounter
cmp byte [ebx + 0x128], 0
jne 0x42c48a
mov edx, dword [ebx + 0xbc]
mov eax, dword [esp + 0x6c]
or eax, edx
or eax, edi
je 0x42c650
movzx eax, byte [ebx + 0x115]
test edx, edx
je 0x42c850
test al, al
jne 0x42c3fe
mov eax, dword [ebx + 0x7cc]
mov ecx, dword [ebx + 0x80]
mov edx, dword [ebx + 0x84]
mov esi, dword [ebx + 0xc8]
mov dword [esp + 0x40], eax
mov eax, ecx
and eax, edx
mov dword [esp + 0x50], edx
cmp eax, 0xffffffff
je 0x42c3d4
cmp ecx, esi
sbb edx, 0
jl 0x42cfa0
mov dword [esp + 0xc], esi
mov eax, dword [esp + 0x40]
mov dword [esp + 4], 1
mov dword [esp], ebp
mov dword [esp + 8], eax
call sym._Curl_client_write
test eax, eax
jne 0x42c0af
mov edx, dword [ebx + 0xbc]
cmp edx, 1
jbe 0x42c847
mov dword [ebx + 0xbc], 0
mov edx, dword [ebp + 0x28c]
jmp 0x42c490
lea eax, [esp + 0x68]
lea esi, [esp + 0x6c]
mov dword [esp + 4], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 8], esi
mov dword [esp], ebx
mov byte [esp + 0x68], 0
call sym._Curl_http_readwrite_headers
test eax, eax
jne 0x42c0af
mov edx, dword [ebp + 0x28c]
mov edx, dword [edx + 0x34]
test edx, edx
je 0x42c468
cmp eax, dword [ebx + 0x80]
sbb eax, dword [ebx + 0x84]
jge 0x42c6c0
cmp byte [esp + 0x68], 0
jne 0x42d131
mov eax, dword [ebx + 0xcc]
test eax, eax
je 0x42c48a
cmp byte [ebx + 0xb8], 0
je 0x42c226
mov edx, dword [ebp + 0x28c]
mov eax, dword [edx + 0x34]
test eax, eax
je 0x42c4ac
mov ecx, dword [esp + 0x48]
test ecx, ecx
je 0x42c4ac
cmp byte [ebp + 0x271], 0
je 0x42d0b3
test edi, edi
je 0x42c4b7
and dword [ebx + 0x110], 0xfffffffe
test byte [edx + 0x40], 0x30
je 0x42c6f8
sub dword [esp + 0x30], 1
mov eax, dword [esp + 0x30]
cmp eax, 0xffffffff
je 0x42ca9a
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x40], eax
jmp 0x42c150
lea eax, [esp + 0x6c]
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x108]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0x298]
mov dword [esp], ebp
mov dword [esp + 4], eax
call sym._Curl_read
cmp eax, 0x51
je 0x42d09c
test eax, eax
jne 0x42c0af
mov eax, dword [ebx + 0x90]
or eax, dword [ebx + 0x94]
jne 0x42c539
mov eax, dword [ebx + 0x98]
or eax, dword [ebx + 0x9c]
je 0x42c5f8
mov eax, dword [esp + 0x6c]
test eax, eax
je 0x42c1a8
jle 0x42c550
xor edi, edi
jmp 0x42c1bc
mov eax, dword [ebx + 0x110]
mov edi, dword [esp + 0x5c]
and eax, 0xfffffffe
mov dword [ebx + 0x110], eax
mov ebp, dword [esp + 0x30]
test ebp, ebp
je 0x42caa4
and eax, 3
cmp eax, 2
je 0x42ce40
mov eax, dword [esp + 0x98]
cmp byte [eax], 0
jne 0x42ca93
test byte [ebx + 0x110], 2
je 0x42c59d
and edi, 2
jne 0x42c8c9
call sym._Curl_now
mov edi, dword [esp + 0x4c]
mov esi, dword [esp + 0x3c]
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], edx
test esi, esi
je 0x42bfdc
mov ecx, dword [ebx + 0x78]
test ecx, ecx
je 0x42c5d0
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov ecx, dword [ebx + 0x88]
test ecx, ecx
je 0x42bfe9
mov eax, dword [ebx + 0x98]
mov edx, dword [ebx + 0x9c]
mov dword [ecx], eax
mov dword [ecx + 4], edx
jmp 0x42bfe9
mov dword [esp + 4], 7
mov dword [esp], ebx
call sym._Curl_pgrsTime
mov eax, dword [ebx + 0xf4]
test eax, eax
je 0x42c539
call sym._Curl_now
mov edi, dword [esp + 0x4c]
mov dword [edi + 0x7c], eax
mov dword [edi + 0x80], edx
jmp 0x42c539
test edi, edi
je 0x42c650
cmp byte [ebx + 0x4d8], 0
jne 0x42d1f8
mov eax, dword [ebx + 0x104]
jmp 0x42c24f
mov edx, dword [ebp + 0x28c]
mov eax, dword [edx + 0x34]
test eax, eax
je 0x42c4b7
mov esi, dword [esp + 0x48]
test esi, esi
jne 0x42c49f
jmp 0x42c4b7
cmp byte [ebx + 0x128], 0
je 0x42c692
mov eax, dword [esp + 0x90]
cmp dword [eax + 0x28], 4
jne 0x42cfa9
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call sym._Curl_pgrsUpdate
test eax, eax
je 0x42ca82
add esp, 0x7c
mov eax, 0x2a
pop ebx
pop esi
pop edi
pop ebp
ret
mov eax, dword [esp + 0x6c]
test eax, eax
jle 0x42c468
lea eax, [esp + 0x64]
mov dword [esp + 8], esi
mov dword [esp + 0xc], eax
mov dword [esp + 4], ebp
mov dword [esp], ebx
call edx
test eax, eax
jne 0x42c0af
cmp byte [esp + 0x64], 0
je 0x42c468
lea esi, [esi]
mov edi, dword [esp + 0x5c]
mov eax, dword [ebx + 0x110]
jmp 0x42c563
cmp byte [ebx + 0x115], 0
jne 0x42c2bf
mov eax, dword [ebx + 0xc8]
add dword [esp + 0x40], eax
adc dword [esp + 0x44], 0
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [ebx + 0x90], eax
mov dword [ebx + 0x94], edx
jmp 0x42c2bf
lea eax, [esp + 0x6c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
mov eax, dword [ebx + 0xcc]
mov dword [esp], ebp
mov dword [esp + 4], eax
call sym._Curl_httpchunk_read
test eax, eax
jg 0x42d38f
cmp eax, 0xffffffff
jne 0x42c29e
mov esi, dword [ebp + 0x38]
and dword [ebx + 0x110], 0xfffffffe
test esi, esi
je 0x42c29e
mov dword [esp + 8], esi
mov dword [esp + 4], str.Leftovers_after_chunking:__zu_bytes_n
mov eax, dword [ebp]
mov dword [esp], eax
call sym._Curl_infof
mov dword [esp + 4], 1
mov eax, dword [ebp]
mov eax, dword [eax + 0x64]
mov dword [esp], eax
call sym._Curl_pipeline_wanted
test al, al
je 0x42c29e
mov dword [esp + 8], esi
mov dword [esp + 4], str.Rewinding__zu_bytes_n
mov eax, dword [ebp]
mov dword [esp], eax
call sym._Curl_infof
sub dword [ebp + 0x2f0], esi
mov byte [ebp + 0x271], 1
jmp 0x42c29e
mov eax, dword [ebx + 0xc8]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x7cc]
mov dword [esp + 4], 3
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_debug
cmp dword [ebx + 0xbc], 1
je 0x42c26f
cmp byte [ebx + 0x128], 0
jne 0x42c748
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov dword [esp + 0x40], eax
mov dword [esp + 0x44], edx
jmp 0x42c2bf
movzx eax, byte [ebx + 0x115]
nop
mov edx, dword [ebp]
cmp byte [edx + 0x501], 0
jne 0x42cac8
mov edx, dword [ebx + 0xfc]
test edx, edx
je 0x42cac8
test al, al
jne 0x42c407
mov eax, dword [esp + 0x6c]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0xcc]
mov dword [esp + 4], edx
mov dword [esp + 8], eax
mov dword [esp], ebp
call sym._Curl_unencode_write
mov dword [ebx + 0xbc], 0
test eax, eax
je 0x42c48a
jmp 0x42c0af
test al, 2
je 0x42bfcd
and edi, 2
je 0x42bfcd
mov dword [esp + 0x3c], 0
mov eax, dword [ebx + 0x90]
or eax, dword [ebx + 0x94]
jne 0x42c8e9
mov eax, dword [ebx + 0x98]
or eax, dword [ebx + 0x9c]
je 0x42cff8
mov edi, dword [ebx + 0x120]
test edi, edi
jne 0x42cc80
mov eax, dword [ebx + 0x7d8]
test eax, eax
je 0x42d00d
movzx esi, byte [ebx + 0x114]
mov dword [ebx + 0x124], eax
mov eax, esi
test al, al
jne 0x42cf60
cmp dword [ebx + 0xf4], 2
mov eax, dword [ebx + 0x12c]
je 0x42d300
mov ecx, dword [esp + 0x90]
mov edx, dword [ecx + 0x28c]
test dword [edx + 0x40], 0x40003
je 0x42c951
cmp dword [eax + 0x1b0], 1
sete al
mov esi, eax
lea eax, [esp + 0x6c]
mov dword [esp + 4], 0x10000
mov dword [esp + 8], eax
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call sym._Curl_fillreadbuffer
test eax, eax
jne 0x42c0af
mov eax, dword [esp + 0x6c]
mov ebp, eax
test eax, eax
je 0x42cf60
jle 0x42d49e
mov dword [ebx + 0x120], eax
mov eax, esi
test al, al
jne 0x42cc60
cmp byte [ebx + 0x3a2], 0
je 0x42cc60
mov eax, dword [ebx + 0x824]
test eax, eax
je 0x42cfbe
xor ecx, ecx
jmp 0x42c9d5
mov byte [eax], dl
mov esi, edi
lea edx, [ecx + 1]
lea edi, [esi + 1]
cmp ebp, edx
je 0x42cc48
mov eax, dword [ebx + 0x824]
mov ecx, edx
mov edx, dword [ebx + 0x124]
add eax, edi
movzx edx, byte [edx + ecx]
cmp dl, 0xa
jne 0x42c9bb
mov byte [eax], 0xd
mov eax, dword [ebx + 0x824]
lea esi, [edi + 1]
mov byte [eax + edi + 1], 0xa
cmp byte [ebx + 0x3a2], 0
jne 0x42c9bf
mov eax, dword [ebx + 0xa10]
mov edx, dword [ebx + 0xa14]
mov edi, eax
mov dword [esp + 0x30], eax
and edi, edx
mov dword [esp + 0x34], edx
cmp edi, 0xffffffff
je 0x42c9bf
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
add eax, 1
adc edx, 0
mov dword [ebx + 0xa10], eax
mov dword [ebx + 0xa14], edx
jmp 0x42c9bf
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x44]
mov dword [esp + 0x50], eax
xor eax, eax
mov dword [esp + 0x54], edx
jmp 0x42c33d
lea eax, [ebx + 0xb0]
mov dword [esp + 8], 0
mov dword [esp + 4], eax
mov dword [esp], ebx
call sym._Curl_timeleft
test eax, eax
js 0x42d223
mov eax, dword [esp + 0x98]
test byte [ebx + 0x110], 0x33
sete byte [eax]
xor eax, eax
jmp 0x42c0af
mov edi, dword [esp + 0x5c]
mov eax, dword [ebx + 0x110]
mov ecx, dword [esp + 0x90]
mov dword [ecx + 0x4c0], 1
mov ecx, dword [esp + 0x9c]
mov byte [ecx], 1
jmp 0x42c56f
mov edx, dword [ebp + 0x28c]
test al, al
jne 0x42ce90
mov ecx, dword [esp + 0x6c]
mov eax, dword [ebx + 0xcc]
test dword [edx + 0x40], 0xc000
je 0x42d02c
mov dword [esp + 8], ecx
mov dword [esp + 4], eax
mov dword [esp], ebp
call sym._Curl_pop3_write
jmp 0x42c894
mov eax, dword [ebp + 0x28c]
test dword [eax + 0x40], 0x40003
je 0x42cdc8
mov ecx, dword [ebx + 0x11c]
test ecx, ecx
je 0x42cb49
cmp byte [ebp + 0x259], 0
jne 0x42d465
mov byte [ebx + 0x115], 1
mov dword [esp + 4], str.Ignoring_the_response_body_n
mov dword [esp], ebx
call sym._Curl_infof
mov esi, dword [ebx + 0x9f8]
mov ecx, dword [ebx + 0x9fc]
mov eax, esi
or eax, ecx
je 0x42cba0
cmp byte [ebx + 0xdc], 0
jne 0x42cba0
cmp dword [ebx + 0x3d0], 1
jne 0x42cba0
cmp byte [ebx + 0x115], 0
jne 0x42cba0
cmp ecx, dword [ebx + 0x74]
je 0x42d435
mov dword [esp + 4], str.HTTP_server_doesnt_seem_to_support_byte_ranges._Cannot_resume.
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x21
jmp 0x42c0af
mov eax, dword [ebx + 0x3c8]
test eax, eax
je 0x42c641
mov edx, dword [ebx + 0x9f0]
test edx, edx
jne 0x42c641
mov edx, dword [ebx + 0x100]
test edx, edx
je 0x42c641
mov ecx, dword [ebx + 0x3cc]
test ecx, ecx
je 0x42c641
cmp eax, 2
je 0x42d47d
cmp edx, ecx
jg 0x42c641
mov dword [esp + 4], 0x465434
mov edi, dword [esp + 0x5c]
mov dword [esp], ebx
call sym._Curl_infof
mov eax, dword [esp + 0x98]
mov byte [ebx + 0xa70], 1
mov byte [eax], 1
mov dword [ebx + 0xa60], 0x130
mov dword [esp + 4], str.Simulate_a_HTTP_304_response__n
mov dword [esp], ebx
call sym._Curl_infof
mov eax, dword [esp + 0x90]
mov dword [esp + 4], 1
mov dword [esp], eax
call sym._Curl_conncontrol
jmp 0x42c57b
cmp esi, ecx
je 0x42cc5e
mov eax, dword [ebx + 0x824]
mov dword [ebx + 0x120], edi
mov dword [ebx + 0x124], eax
mov ebp, edi
mov eax, dword [esp + 0x90]
mov eax, dword [eax + 0x28c]
test dword [eax + 0x40], 0x30000
jne 0x42d36f
mov edi, dword [ebx + 0x120]
lea eax, [esp + 0x64]
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], eax
mov eax, dword [ebx + 0x124]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x90]
mov eax, dword [eax + 0x29c]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x90]
mov dword [esp], eax
call sym._Curl_write
test eax, eax
jne 0x42c0af
mov eax, dword [esp + 0x90]
lea esi, [esp + 0x68]
mov edi, dword [eax + 0x29c]
lea eax, [esp + 0x6c]
mov dword [esp + 0x20], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], eax
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], esi
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 4], 0x4004747b
mov dword [esp], edi
call dword [sym.imp.WS2_32.dll_WSAIoctl]
sub esp, 0x24
test eax, eax
je 0x42d1cb
cmp byte [ebx + 0x4e0], 0
jne 0x42d1a4
mov ecx, dword [esp + 0x64]
mov eax, ecx
cdq
add eax, dword [ebx + 0x98]
adc edx, dword [ebx + 0x9c]
cmp byte [ebx + 0x129], 0
mov dword [ebx + 0x98], eax
mov edi, eax
mov ebp, edx
mov dword [ebx + 0x9c], edx
je 0x42cd61
cmp byte [ebx + 0x12b], 0
je 0x42cd79
mov eax, edi
mov edx, ebp
xor eax, dword [ebx + 0xa10]
xor edx, dword [ebx + 0xa14]
or eax, edx
je 0x42d34f
mov eax, dword [ebx + 0x120]
cmp eax, ecx
je 0x42d2a2
sub eax, ecx
add dword [ebx + 0x124], ecx
mov dword [ebx + 0x120], eax
mov eax, dword [ebx + 0x98]
mov edx, dword [ebx + 0x9c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._Curl_pgrsSetUploadCounter
call sym._Curl_now
mov edi, dword [esp + 0x4c]
mov dword [edi + 0x40], eax
mov dword [edi + 0x44], edx
jmp 0x42c5b8
xor eax, eax
jmp 0x42c24f
mov edi, dword [esp + 0x4c]
mov eax, dword [edi + 0x7c]
mov edx, dword [edi + 0x80]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov eax, dword [edi + 0x40]
mov edx, dword [edi + 0x44]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._Curl_timediff
cmp dword [ebx + 0x650], eax
jg 0x42bfe9
or dword [ebx + 0x110], 2
mov dword [ebx + 0xf4], 0
mov dword [esp + 4], 0
mov dword [esp], ebx
call sym._Curl_expire_done
mov dword [esp + 4], str.Done_waiting_for_100_continue_n
mov dword [esp], ebx
call sym._Curl_infof
jmp 0x42bfe9
mov eax, dword [esp + 0x90]
cmp byte [eax + 0x259], 0
je 0x42c57b
mov dword [esp + 4], str.we_are_done_reading_and_this_is_set_to_close__stop_send_n
mov dword [esp], ebx
call sym._Curl_infof
and dword [ebx + 0x110], 0xfffffffd
jmp 0x42c57b
mov dword [esp + 4], str.select_poll_returned_error
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x37
jmp 0x42c0af
mov dword [ebx + 0xbc], 0
jmp 0x42c490
mov dword [esp + 4], 1
mov eax, dword [ebp]
mov dword [esp + 0x40], ecx
mov eax, dword [eax + 0x64]
mov dword [esp], eax
call sym._Curl_pipeline_wanted
test al, al
je 0x42d049
mov eax, dword [esp + 0x6c]
mov dword [esp + 0x28], eax
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
mov eax, dword [ebx + 0x80]
mov edx, dword [ebx + 0x84]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
mov eax, dword [ebx + 0x70]
mov edx, dword [ebx + 0x74]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], edx
mov eax, dword [ebx + 0x9e8]
mov dword [esp + 4], str.Rewinding_stream_by_:__zu_bytes_on_url__s__size___I64d__maxdownload___I64d__bytecount___I64d__nread___zd__n
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x48]
mov dword [esp], ebx
mov dword [esp + 8], eax
call sym._Curl_infof
mov ecx, dword [esp + 0x40]
mov eax, esi
mov byte [ebp + 0x271], 1
sub eax, ecx
add dword [ebp + 0x2f0], eax
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov esi, dword [ebx + 0x80]
mov dword [esp + 0x44], edx
mov edx, eax
mov dword [esp + 0x40], eax
jmp 0x42c31e
mov eax, dword [ebx + 0x110]
test al, 0x20
jne 0x42cdb1
and eax, 0xfffffffd
mov dword [ebx + 0x110], eax
mov eax, dword [esp + 0x90]
cmp byte [eax + 0x26b], 0
je 0x42cdb1
mov dword [esp], eax
call sym._Curl_readrewind
test eax, eax
je 0x42cdb1
jmp 0x42c0af
mov dword [esp + 0xc], ecx
jmp 0x42c3d8
mov dword [esp + 4], str.transfer_closed_with_outstanding_read_data_remaining
mov dword [esp], ebx
call sym._Curl_failf
jmp 0x42c0aa
mov dword [esp], 0x20000
call dword [0x45e814]
mov dword [ebx + 0x824], eax
test eax, eax
jne 0x42c9b7
mov dword [esp + 4], 0x465760
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x1b
jmp 0x42c0af
mov dword [esp + 4], 7
mov dword [esp], ebx
call sym._Curl_pgrsTime
jmp 0x42c8e9
mov eax, dword [ebx + 0x49c]
mov dword [esp], eax
call dword [0x45e814]
mov dword [ebx + 0x7d8], eax
test eax, eax
jne 0x42c905
jmp 0x42cfe9
mov dword [esp + 0xc], ecx
mov dword [esp + 8], eax
mov dword [esp + 4], 1
mov dword [esp], ebp
call sym._Curl_client_write
jmp 0x42c894
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], edx
mov eax, dword [ebx + 0x80]
mov edx, dword [ebx + 0x84]
mov dword [esp + 0x14], eax
mov dword [esp + 0x18], edx
mov eax, dword [ebx + 0x70]
mov edx, dword [ebx + 0x74]
mov dword [esp + 4], str.Excess_found_in_a_non_pipelined_read:_excess___zu__size___I64d__maxdownload___I64d__bytecount___I64d_n
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x10], edx
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_infof
jmp 0x42cf37
mov ebp, dword [esp + 0x40]
mov edi, dword [esp + 0x5c]
mov eax, dword [ebx + 0x110]
mov dword [esp + 0x3c], ebp
jmp 0x42c563
mov esi, dword [esp + 0x48]
mov ecx, dword [ebx + 0x498]
mov edx, dword [esp + 0x6c]
add ecx, dword [ebx + 0x108]
add edx, dword [ebx + 0xcc]
mov ebp, ecx
mov edi, dword [esp + 0x5c]
add esi, edx
sub ebp, edx
mov dword [ebx + 0xcc], edx
lea edx, [esp + 0x64]
cmp ecx, esi
mov esi, dword [esp + 0x48]
mov ecx, dword [esp + 0x90]
mov dword [esp], ebx
mov dword [esp + 0xc], edx
lea edx, [esp + 0x6c]
cmovb esi, ebp
mov dword [esp + 8], edx
mov dword [esp + 4], ecx
mov dword [esp + 0x6c], esi
call eax
test eax, eax
jne 0x42c0af
cmp byte [esp + 0x64], 0
mov eax, dword [ebx + 0x110]
je 0x42c563
or eax, 1
mov dword [ebx + 0x110], eax
jmp 0x42c563
mov eax, dword [esp + 0x6c]
mov edi, dword [esp + 0x5c]
test eax, eax
jle 0x42c6fc
mov eax, dword [esp + 0x90]
mov dword [esp + 4], 1
mov eax, dword [eax]
mov eax, dword [eax + 0x64]
mov dword [esp], eax
call sym._Curl_pipeline_wanted
test al, al
mov eax, dword [ebx + 0x9e8]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
je 0x42d3e4
mov dword [esp + 4], str.Rewinding_stream_by_:__zd_bytes_on_url__s__zero_length_body__n
mov dword [esp], ebx
call sym._Curl_infof
mov ecx, dword [esp + 0x90]
mov eax, dword [esp + 0x6c]
mov byte [ecx + 0x271], 1
sub dword [ecx + 0x2f0], eax
jmp 0x42c6fc
mov eax, dword [esp + 0x64]
mov dword [esp + 0xc], eax
mov eax, dword [ebx + 0x124]
mov dword [esp + 4], 4
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_debug
jmp 0x42cd2c
mov dword [esp + 0x10], 4
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0x1001
mov dword [esp + 4], 0xffff
mov dword [esp], edi
call dword [sym.imp.WS2_32.dll_setsockopt]
sub esp, 0x14
jmp 0x42cd1f
mov eax, dword [esp + 0x90]
mov dword [esp + 4], 2
mov dword [esp], eax
call sym._Curl_conncontrol
mov eax, dword [esp + 0x98]
mov byte [eax], 1
mov eax, 8
jmp 0x42c0af
mov esi, dword [ebx + 0x70]
mov ecx, dword [ebx + 0x74]
mov edx, dword [ebx + 0x714]
mov edi, dword [ebx + 0x90]
mov eax, esi
mov ebp, dword [ebx + 0x94]
mov dword [esp + 0x30], ecx
and eax, ecx
cmp eax, 0xffffffff
mov eax, dword [ebx + 0x710]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x4c]
mov edx, dword [eax + 0x44]
mov eax, dword [eax + 0x40]
mov dword [esp + 4], edx
mov dword [esp], eax
je 0x42d3be
call sym._Curl_timediff
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x14], esi
mov dword [esp + 0xc], edi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x10], ebp
mov dword [esp + 8], eax
mov dword [esp + 4], str.Operation_timed_out_after__ld_milliseconds_with__I64d_out_of__I64d_bytes_received
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x1c
jmp 0x42c0af
mov eax, dword [ebx + 0x7d8]
test eax, eax
je 0x42d3f9
cmp byte [ebx + 0x114], 0
mov dword [ebx + 0x124], eax
mov dword [ebx + 0x120], 0
je 0x42cd95
mov eax, dword [esp + 0x90]
and dword [ebx + 0x110], 0xfffffffd
cmp byte [eax + 0x26b], 0
je 0x42cd95
mov dword [esp], eax
call sym._Curl_readrewind
test eax, eax
je 0x42cd95
jmp 0x42c0af
cmp dword [eax + 0x1b0], 2
jne 0x42c92f
and dword [ebx + 0x110], 0xfffffffd
mov dword [ebx + 0xf4], 1
call sym._Curl_now
mov edi, dword [esp + 0x4c]
mov dword [edi + 0x7c], eax
mov dword [edi + 0x80], edx
mov dword [esp + 8], 0
mov eax, dword [ebx + 0x650]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_expire
jmp 0x42c59d
mov byte [ebx + 0x114], 1
mov dword [esp + 4], str.We_are_completely_uploaded_and_fine_n
mov dword [esp], ebx
call sym._Curl_infof
mov ecx, dword [esp + 0x64]
jmp 0x42cd79
mov eax, dword [esp + 0x90]
mov dword [esp + 4], ebp
mov dword [esp], eax
call sym._Curl_smtp_escape_eob
test eax, eax
je 0x42cc7a
jmp 0x42c0af
cmp eax, 4
je 0x42d41b
mov dword [esp], eax
call sym._Curl_chunked_strerror
mov dword [esp + 4], str._s_in_chunked_encoding
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x38
jmp 0x42c0af
call sym._Curl_timediff
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
mov dword [esp + 8], eax
mov dword [esp + 4], str.Operation_timed_out_after__ld_milliseconds_with__I64d_bytes_received
mov dword [esp], ebx
call sym._Curl_failf
jmp 0x42d298
mov dword [esp + 4], str.Excess_found_in_a_non_pipelined_read:_excess___zd_url___s__zero_length_body__n
mov dword [esp], ebx
call sym._Curl_infof
jmp 0x42c6fc
mov eax, dword [ebx + 0x49c]
mov dword [esp], eax
call dword [0x45e814]
mov dword [ebx + 0x7d8], eax
test eax, eax
jne 0x42d2b0
jmp 0x42cfe9
mov dword [esp + 4], str.Failed_writing_data
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 0x17
jmp 0x42c0af
cmp esi, dword [ebx + 0x70]
jne 0x42cb7f
mov dword [esp + 4], str.The_entire_document_is_already_downloaded
mov dword [esp], ebx
call sym._Curl_infof
mov eax, dword [esp + 0x90]
mov dword [esp + 4], 1
mov dword [esp], eax
call sym._Curl_conncontrol
mov eax, dword [esp + 0x98]
and dword [ebx + 0x110], 0xfffffffe
mov byte [eax], 1
xor eax, eax
jmp 0x42c0af
cmp edx, ecx
jl 0x42c641
mov dword [esp + 4], 0x465460
mov edi, dword [esp + 0x5c]
mov dword [esp], ebx
call sym._Curl_infof
jmp 0x42cbfd
mov eax, dword [ebx + 0x110]
jmp 0x42cf6e