Function at 0x405e70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x6c
mov ebx, dword [esp + 0x80]
mov dword [esp + 0x48], edx
mov dword [esp + 0x4c], ecx
mov byte [esp + 0x53], 0
mov byte [esp + 0x54], 0
mov byte [esp + 0x55], 0
test ebx, ebx
je 0x406e20
cmp dword [ebx + 0xb10], 0xc0dedbad
mov esi, eax
mov eax, 2
jne 0x405f43
lea eax, [ebx + 0x2c]
mov edi, dword [ebx + 8]
xor ebp, ebp
mov dword [esp + 0x34], eax
lea eax, [esi + 0x14]
mov dword [esp + 0x40], eax
lea esi, cs:[esi]
nop
test edi, edi
je 0x405f00
movzx eax, byte [esi + 0x7c]
mov byte [esi + 0x7c], 0
test al, al
jne 0x405f17
mov eax, dword [ebx + 0x24]
lea edx, [eax - 3]
cmp edx, 0xd
jbe 0x405f50
lea edx, [eax - 2]
cmp edx, 0xe
jbe 0x405f52
cmp eax, 0x12
ja case.default.0x405ef8
jmp dword [eax*4 + 0x45c6c4]
mov eax, dword [ebx + 0x24]
lea edx, [eax - 3]
cmp edx, 0xc
jbe 0x405f2a
movzx edx, byte [esi + 0x7c]
mov byte [esi + 0x7c], 0
test dl, dl
je 0x405ef3
mov eax, esi
call sym._process_pending_handles
mov edi, dword [ebx + 8]
test edi, edi
jne 0x405ee0
mov eax, dword [ebx + 0x24]
jmp 0x405ef3
mov dword [esp + 8], eax
mov dword [esp + 4], str.In_state__d_with_no_easy_conn__bail_out__n
mov dword [esp], ebx
call sym._Curl_failf
mov eax, 4
add esp, 0x6c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [edi], ebx
cmp eax, 8
mov dword [esp], ebx
setbe al
movzx eax, al
mov dword [esp + 8], eax
lea eax, [esp + 0x48]
mov dword [esp + 4], eax
call sym._Curl_timeleft
test eax, eax
mov eax, dword [ebx + 0x24]
jns 0x405ef3
cmp eax, 3
je 0x4073cf
cmp eax, 4
je 0x4074fb
mov eax, dword [ebx + 0x90]
mov edx, dword [ebx + 0x94]
mov ebp, dword [ebx + 0x70]
mov edi, dword [ebx + 0x74]
mov dword [esp + 0x38], eax
mov dword [esp + 0x3c], edx
mov eax, ebp
mov edx, edi
not eax
not edx
or eax, edx
mov eax, dword [ebx + 0x710]
mov edx, dword [ebx + 0x714]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], edx
je 0x407339
call sym._Curl_timediff
mov dword [esp + 0x14], ebp
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x18], edi
mov edi, dword [esp + 0x38]
mov dword [esp + 0x10], ebp
mov dword [esp + 0xc], edi
mov dword [esp + 8], eax
mov dword [esp + 4], 0x45c5d0
mov dword [esp], ebx
call sym._Curl_failf
xor edi, edi
cmp dword [ebx + 0x24], 9
ja 0x406f98
lea eax, [ebx + 8]
mov ecx, 1
mov edx, 0x1c
call sym._multi_done
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
ja 0x406eb0
mov ebp, 0x1c
mov eax, esi
call sym._process_pending_handles
mov eax, dword [ebx + 8]
test eax, eax
je 0x406960
mov dword [esp], eax
call sym._Curl_pipeline_leave_write
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_pipeline_leave_read
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2cc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2dc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, edi
test al, al
jne 0x406876
mov eax, dword [ebx + 0x24]
cmp eax, 0x11
jne 0x406975
lea esi, [esi]
mov eax, dword [esp + 0x34]
mov dword [ebx + 0x38], 1
mov dword [ebx + 0x3c], ebx
mov dword [ebx + 0x40], ebp
mov dword [esp + 0xc], eax
mov dword [esp + 8], eax
mov eax, dword [esi + 0x18]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x40]
mov dword [esp], eax
call sym._Curl_llist_insert_next
cmp dword [ebx + 0x24], 0x12
je 0x4060f7
mov dword [ebx + 0x24], 0x12
jmp 0x4060f7
xor edi, edi
xor edx, edx
cmp eax, 0x10
jbe 0x4061b8
cmp eax, 0x11
je 0x4060a0
cmp edx, 0xffffffff
je 0x406101
cmp byte [esi + 0x7c], 0
je case.0x405ef8.18
mov edi, dword [ebx + 8]
jmp 0x405ed0
mov eax, dword [ebx + 8]
test eax, eax
je 0x406a70
add eax, 0x2dc
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, dword [ebx + 8]
cmp byte [eax + 0x275], 0
jne 0x406d70
mov ecx, dword [eax + 0x2d8]
test ecx, ecx
jne 0x406d70
mov edx, ebp
xor ecx, ecx
lea eax, [ebx + 8]
call sym._multi_done
mov edx, dword [ebx + 8]
test ebp, ebp
cmove ebp, eax
test edx, edx
je 0x406169
mov dword [ebx + 8], 0
cmp byte [ebx + 0x9d9], 0
mov eax, dword [ebx + 0x24]
je 0x406182
cmp dword [ebx + 0xa38], 7
jne 0x406fe3
cmp eax, 0x11
je 0x4060a0
mov eax, dword [ebx + 0x64]
mov dword [ebx + 0x24], 0x11
xor edi, edi
sub dword [eax + 0x10], 1
mov dword [esp], ebx
call sym._Curl_init_completed
mov eax, dword [ebx + 0x24]
mov edx, 0xffffffff
cmp eax, 0x10
ja 0x4060ed
lea esi, [esi]
test ebp, ebp
jne 0x406039
mov eax, dword [ebx + 8]
test eax, eax
je 0x4060f2
mov dword [esp], eax
mov dword [esp + 0x38], edx
call sym._Curl_pgrsUpdate
test eax, eax
jne 0x406543
mov eax, dword [ebx + 0x24]
mov edx, dword [esp + 0x38]
xor ebp, ebp
jmp 0x4060ed
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_pgrsUpdate
test eax, eax
je 0x406c80
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
ja 0x406ee8
mov ebp, 0x2a
mov eax, esi
call sym._process_pending_handles
mov eax, dword [ebx + 8]
test eax, eax
je 0x406960
mov dword [esp], eax
call sym._Curl_pipeline_leave_write
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_pipeline_leave_read
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2cc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2dc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, dword [ebx + 0x24]
jmp 0x40696c
mov ecx, dword [ebx + 0x210]
xor edi, edi
mov eax, dword [ebx + 0x214]
mov dword [esp + 0x5c], 0
mov byte [esp + 0x57], 0
cmp edi, ecx
mov dword [esp + 0x38], ecx
mov ecx, edi
sbb ecx, eax
jl 0x406aa0
mov ecx, dword [ebx + 0x218]
mov eax, dword [ebx + 0x21c]
cmp edi, ecx
mov dword [esp + 0x44], ecx
sbb edi, eax
jl 0x406e30
lea eax, [esp + 0x57]
mov dword [esp + 4], ebx
mov dword [esp + 0xc], eax
lea eax, [esp + 0x55]
mov dword [esp + 8], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_readwrite
mov ebp, eax
mov eax, dword [ebx + 0x110]
test al, 1
je 0x4071d9
test al, 2
je 0x4072d6
cmp byte [esp + 0x55], 0
jne 0x4071ef
cmp ebp, 0x38
je 0x4074c5
test ebp, ebp
jne 0x407157
mov eax, dword [esp + 0x5c]
movzx edx, byte [esp + 0x57]
xor edi, edi
xor ebp, ebp
neg edx
mov dword [esp + 0x38], edx
mov dword [esp], eax
call dword [0x45bc90]
mov edx, dword [esp + 0x38]
jmp 0x406b72
mov eax, dword [ebx + 8]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_pipeline_checkget_read
mov edi, eax
test al, al
jne 0x406c60
mov eax, dword [ebx + 0x24]
xor edx, edx
jmp 0x4060e4
mov eax, dword [ebx + 8]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_move_handle_from_send_to_recv_pipe
mov eax, dword [ebx + 8]
cmp byte [eax + 0x275], 0
jne 0x40637d
mov edi, dword [eax + 0x2d8]
test edi, edi
je 0x406387
mov eax, esi
call sym._process_pending_handles
mov eax, dword [ebx + 8]
cmp dword [eax + 0x298], 0xffffffff
jne 0x40639d
cmp dword [eax + 0x29c], 0xffffffff
je 0x4071a4
cmp dword [ebx + 0x24], 0xd
je 0x406c6d
mov dword [ebx + 0x24], 0xd
mov edx, 0xffffffff
xor edi, edi
jmp 0x4061b8
mov edi, dword [ebx + 8]
mov dword [esp + 0x58], 0
mov eax, dword [edi + 0x28c]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x406fd0
lea edx, [esp + 0x58]
mov dword [esp], edi
mov dword [esp + 4], edx
call eax
mov ebp, eax
test eax, eax
jne 0x406b80
mov eax, dword [esp + 0x58]
cmp eax, 1
je 0x4072e6
mov ecx, dword [ebx + 0x24]
test eax, eax
je 0x406fc2
mov edx, 0xa
mov edi, dword [ebx + 8]
mov eax, edi
cmp ecx, edx
je 0x406940
mov dword [ebx + 0x24], edx
test edi, edi
jne 0x406950
lea esi, cs:[esi]
xor ebp, ebp
jmp 0x405ed0
lea eax, [esp + 0x54]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_protocol_doing
mov ebp, eax
test eax, eax
jne 0x406b80
cmp byte [esp + 0x54], 0
mov ecx, dword [ebx + 0x24]
je 0x406ec8
mov eax, dword [ebx + 8]
mov edx, 0xc
movzx edi, byte [eax + 0x264]
sub edx, edi
cmp edx, ecx
je 0x406950
mov dword [ebx + 0x24], edx
mov edx, dword [edx*4 + 0x45c760]
test edx, edx
je 0x406950
mov dword [esp], ebx
call edx
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x40651d
jmp 0x40664b
mov dword [esp], ebx
call sym._Curl_pretransfer
mov ebp, eax
test eax, eax
je 0x406c20
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x406214
cmp eax, 0x11
jne 0x4060f7
jmp 0x4060a0
mov dword [ebx + 0x28], ebp
add esp, 0x6c
xor eax, eax
pop ebx
pop esi
pop edi
pop ebp
ret
cmp byte [ebx + 0x4f9], 0
mov edi, dword [ebx + 8]
je 0x4069b0
mov dword [esp + 4], 0
mov dword [esp], edi
call sym._Curl_conncontrol
cmp dword [ebx + 0x24], 0x10
je 0x40651d
mov dword [ebx + 0x24], 0x10
mov edi, dword [ebx + 8]
mov edx, 0xffffffff
mov eax, edi
test edi, edi
je 0x406430
mov dword [esp], eax
mov dword [esp + 0x38], edx
call sym._Curl_pgrsUpdate
test eax, eax
je 0x4061df
mov dword [esp + 4], 2
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_conncontrol
mov eax, dword [ebx + 0x24]
cmp eax, 0xf
jbe 0x4069a0
cmp eax, 0x11
je 0x406fb8
mov eax, dword [ebx + 0x64]
mov dword [ebx + 0x24], 0x11
sub dword [eax + 0x10], 1
mov dword [esp], ebx
call sym._Curl_init_completed
cmp dword [ebx + 0x24], 0x11
je 0x406fb8
mov edi, dword [ebx + 8]
mov ebp, 0x2a
jmp 0x405ed0
mov eax, dword [ebx + 8]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_pipeline_checkget_write
mov edi, eax
test al, al
je 0x406349
cmp dword [ebx + 0x24], 9
je 0x406c6d
mov dword [ebx + 0x24], 9
xor edi, edi
mov dword [esp], ebx
call sym._Curl_connect_free
mov eax, dword [ebx + 0x24]
mov edx, 0xffffffff
jmp 0x4060e4
lea eax, [esp + 0x53]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_protocol_connecting
mov ebp, eax
test eax, eax
jne 0x406bb0
cmp byte [esp + 0x53], 0
mov edx, dword [ebx + 0x24]
je 0x406e00
mov ecx, dword [esi + 0x78]
mov eax, 9
and ecx, 1
sub eax, ecx
cmp eax, edx
je 0x40651d
mov dword [ebx + 0x24], eax
mov eax, dword [eax*4 + 0x45c760]
test eax, eax
je 0x40651d
mov dword [esp], ebx
call eax
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x40651d
cmp eax, 0x11
je 0x406d67
mov edi, dword [ebx + 8]
xor ebp, ebp
jmp 0x405ed0
lea eax, [esp + 0x53]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_protocol_connect
cmp byte [esp + 0x53], 0
mov ebp, eax
je 0x406bc8
test eax, eax
jne 0x406bb0
mov edx, dword [esi + 0x78]
mov eax, 9
and edx, 1
sub eax, edx
cmp dword [ebx + 0x24], eax
jne 0x406628
jmp 0x40651d
lea eax, [esp + 0x53]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_http_connect
mov edi, dword [ebx + 8]
mov ebp, eax
cmp byte [edi + 0x272], 0
mov eax, edi
jne 0x406be0
test ebp, ebp
jne 0x406da0
cmp dword [edi + 0xec], 2
jne 0x406d80
cmp byte [edi + 0x279], 0
jne 0x406d80
mov edx, dword [ebx + 0x24]
cmp edx, 0x10
ja 0x406e09
xor edx, edx
jmp 0x4061cb
lea eax, [esp + 0x51]
mov dword [esp + 4], 0
mov dword [esp + 8], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_is_connected
cmp byte [esp + 0x51], 0
mov ebp, eax
je 0x406a40
test eax, eax
jne 0x406da0
mov eax, dword [ebx + 8]
cmp dword [eax + 0xec], 2
jne 0x406ff5
cmp byte [eax + 0x279], 0
jne 0x406ff5
cmp dword [ebx + 0x24], 5
je 0x4066f5
mov dword [ebx + 0x24], 5
xor edx, edx
jmp 0x4061cb
mov edi, dword [ebx + 8]
mov dword [esp + 0x5c], 0
cmp byte [edi + 0x25e], 0
jne 0x406a30
cmp byte [edi + 0x25b], 0
je 0x406f88
mov ebp, dword [edi + 0xb0]
mov eax, dword [edi + 0xf8]
mov dword [esp + 4], ebp
mov dword [esp], edi
mov dword [esp + 8], eax
call sym._Curl_fetch_addr
mov dword [esp + 0x5c], eax
test eax, eax
je 0x406db0
mov dword [edi + 0x408], eax
mov byte [edi + 0x40c], 1
mov dword [esp + 8], ebp
mov dword [esp + 4], 0x45c66c
mov dword [esp], ebx
call sym._Curl_infof
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x406db0
mov edx, ebx
mov eax, esi
call sym._singlesocket
mov ebp, dword [esp + 0x5c]
test ebp, ebp
je 0x406ea8
lea eax, [esp + 0x53]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_async_resolved
mov ebp, eax
test eax, eax
je 0x406f10
mov dword [ebx + 8], 0
mov eax, dword [ebx + 0x24]
nop
cmp eax, 0x10
ja 0x4064ce
mov eax, esi
call sym._process_pending_handles
mov eax, dword [ebx + 8]
test eax, eax
je 0x406960
mov dword [esp], eax
call sym._Curl_pipeline_leave_write
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_pipeline_leave_read
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2cc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2dc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
xor eax, eax
cmp ebp, 0x1c
sete al
mov dword [esp + 8], eax
mov eax, dword [ebx + 8]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_disconnect
mov dword [ebx + 8], 0
mov eax, dword [ebx + 0x24]
jmp 0x40696c
mov dword [esp + 4], 2
mov dword [esp], ebx
call sym._Curl_pgrsTime
lea eax, [esp + 0x53]
mov dword [esp], ebx
mov dword [esp + 0xc], eax
lea eax, [esp + 0x52]
mov dword [esp + 8], eax
lea eax, [ebx + 8]
mov dword [esp + 4], eax
call sym._Curl_connect
mov ebp, eax
cmp eax, 0x59
je 0x406d28
test eax, eax
jne 0x4064c2
mov eax, dword [ebx + 8]
mov dword [esp], ebx
mov dword [esp + 4], eax
call sym._Curl_add_handle_to_pipeline
mov ebp, eax
test eax, eax
jne 0x406da0
cmp byte [esp + 0x52], 0
jne 0x4076fb
cmp byte [esp + 0x53], 0
jne 0x406688
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_connect_ongoing
mov edi, dword [ebx + 8]
test al, al
mov eax, edi
je 0x4077d4
cmp dword [ebx + 0x24], 5
je 0x406940
mov dword [ebx + 0x24], 5
lea esi, cs:[esi]
nop
test edi, edi
je 0x406430
lea esi, cs:[esi]
mov edx, 0xffffffff
jmp 0x4061cb
mov eax, dword [ebx + 0x24]
cmp eax, 2
je 0x406f00
cmp eax, 0x11
je 0x4060a0
mov eax, dword [ebx + 0x64]
mov dword [ebx + 0x24], 0x11
sub dword [eax + 0x10], 1
mov dword [esp], ebx
call sym._Curl_init_completed
cmp dword [ebx + 0x24], 0x11
jne 0x406101
jmp 0x4060a0
mov dword [ebx + 0x24], 0x10
jmp 0x40658b
lea eax, [ebx + 8]
mov dword [esp + 0x38], eax
mov eax, dword [edi]
mov dword [esp + 0x44], eax
mov eax, dword [edi + 0x28c]
mov eax, dword [eax + 8]
test eax, eax
je 0x40739a
lea ecx, [esp + 0x54]
mov dword [esp], edi
mov dword [esp + 4], ecx
call eax
mov ebp, eax
cmp eax, 0x37
je 0x407410
test eax, eax
jne 0x4070d8
cmp byte [esp + 0x54], 0
jne 0x407367
cmp byte [ebx + 0x9d9], 0
je 0x406a14
mov eax, dword [ebx + 0xa38]
and eax, 0xfffffffd
cmp eax, 5
je 0x40774b
cmp dword [ebx + 0x24], 0xa
mov eax, dword [ebx + 8]
je 0x407015
mov dword [ebx + 0x24], 0xa
jmp 0x407015
mov ebp, dword [edi + 0xe0]
jmp 0x406793
mov eax, dword [ebx + 0x24]
test ebp, ebp
jne 0x406820
cmp eax, 0x10
ja 0x406d5e
mov eax, dword [ebx + 8]
xor edx, edx
test eax, eax
jne 0x4061cb
xor ebp, ebp
jmp 0x4060f7
cmp byte [ebx + 0x9d9], 0
je 0x40618b
cmp dword [ebx + 0xa38], 7
je 0x40618b
mov dword [ebx + 0x24], 0
mov edx, 0xffffffff
xor edi, edi
jmp 0x4061b8
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
mov ecx, dword [ebx + 0x730]
mov edx, dword [ebx + 0x72c]
mov dword [esp + 0x14], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x38]
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ecx
mov eax, dword [ebx + 0x738]
mov edx, dword [ebx + 0x73c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov edx, dword [ebx + 0x6c4]
mov eax, dword [ebx + 0x6c0]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._Curl_pgrsLimitWaitTime
mov edx, dword [ebx + 0x218]
mov dword [esp + 0x38], eax
mov ecx, eax
mov eax, dword [ebx + 0x21c]
cmp edi, edx
mov dword [esp + 0x44], edx
sbb edi, eax
mov edi, 0
jl 0x406e38
test ecx, ecx
je 0x4062b5
mov eax, dword [esp + 0x48]
mov edx, dword [esp + 0x4c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._Curl_ratelimit
cmp dword [ebx + 0x24], 0xf
je 0x406b4e
mov dword [ebx + 0x24], 0xf
mov eax, dword [esp + 0x38]
mov dword [esp + 8], 9
cmp edi, eax
jg 0x406f70
mov dword [esp + 4], eax
mov dword [esp], ebx
call sym._Curl_expire
xor edi, edi
xor edx, edx
mov eax, dword [ebx + 0x24]
jmp 0x4060e4
mov dword [esp], ebx
call sym._Curl_posttransfer
lea eax, [ebx + 8]
xor ecx, ecx
mov edx, ebp
call sym._multi_done
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x406829
cmp eax, 0x11
jne 0x4060f7
jmp 0x4060a0
mov dword [esp], ebx
call sym._Curl_posttransfer
lea eax, [ebx + 8]
mov ecx, 1
jmp 0x406b8d
cmp dword [ebx + 0x24], 7
je 0x406bd5
mov dword [ebx + 0x24], 7
xor edx, edx
xor edi, edi
jmp 0x4061b8
xor ecx, ecx
xor edx, edx
lea eax, [ebx + 8]
call sym._multi_done
cmp dword [ebx + 0x24], 2
je 0x40651d
mov dword [ebx + 0x24], 2
mov dword [esp], ebx
call sym._Curl_init_CONNECT
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x40651d
jmp 0x40664b
cmp dword [ebx + 0x24], 2
je 0x406c35
mov dword [ebx + 0x24], 2
mov dword [esp], ebx
call sym._Curl_init_CONNECT
mov dword [esp + 4], 1
mov dword [esp], ebx
call sym._Curl_pgrsTime
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x40651d
jmp 0x40664b
cmp dword [ebx + 0x24], 0xe
je 0x406c6d
mov dword [ebx + 0x24], 0xe
mov edx, 0xffffffff
xor edi, edi
jmp 0x4061b8
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x4c]
mov eax, dword [esp + 0x48]
mov dword [esp], ebx
mov dword [esp + 8], edx
mov dword [esp + 4], eax
call sym._Curl_speedcheck
mov ebp, eax
test eax, eax
jne 0x4064c2
mov edx, dword [esp + 0x38]
mov ecx, dword [ebx + 0x210]
mov eax, dword [ebx + 0x214]
cmp edx, ecx
mov edi, edx
sbb edi, eax
jl 0x4075ae
mov edi, dword [ebx + 0x218]
mov ecx, dword [ebx + 0x21c]
mov eax, edx
cmp edx, edi
sbb eax, ecx
jl 0x40766e
cmp dword [ebx + 0x24], 0xe
je 0x406ce7
mov dword [ebx + 0x24], 0xe
mov eax, dword [esp + 0x48]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x4c]
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 8], edx
call sym._Curl_ratelimit
mov eax, dword [ebx + 0x24]
mov edx, dword [esp + 0x38]
cmp eax, 0x10
ja 0x406d5e
mov eax, dword [ebx + 8]
test eax, eax
jne 0x4061cb
xor ebp, ebp
jmp 0x4060f7
cmp dword [ebx + 0x24], 1
je 0x406d35
mov dword [ebx + 0x24], 1
lea eax, [ebx + 0xc]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], eax
mov eax, dword [esi + 0x28]
mov dword [esp + 4], eax
lea eax, [esi + 0x24]
mov dword [esp], eax
call sym._Curl_llist_insert_next
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x406a54
cmp eax, 0x11
jne 0x406a61
xor ebp, ebp
jmp 0x4060a0
mov eax, esi
call sym._process_pending_handles
jmp 0x40614a
mov dword [esp], edi
call sym._Curl_connect_complete
test al, al
jne 0x407132
mov eax, dword [ebx + 0x24]
jmp 0x406a4b
mov eax, dword [ebx + 0x24]
jmp 0x406820
lea eax, [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_resolver_is_resolved
mov edx, ebx
mov ebp, eax
mov eax, esi
call sym._singlesocket
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x4067f7
mov eax, dword [ebx + 0x24]
mov edx, eax
test ebp, ebp
jne 0x406820
lea esi, cs:[esi]
nop
cmp edx, 0x10
ja 0x406e09
xor edx, edx
jmp 0x406f51
cmp edx, 0x10
jbe 0x406a54
cmp edx, 0x11
je 0x406d67
xor ebp, ebp
jmp 0x4060f7
add esp, 0x6c
mov eax, 2
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp + 0x38], 0
mov edx, dword [esp + 0x48]
mov ecx, dword [esp + 0x4c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], ecx
mov ecx, dword [ebx + 0x744]
mov edx, dword [ebx + 0x740]
mov dword [esp + 0x14], eax
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x18], edx
mov dword [esp + 0x10], ecx
mov eax, dword [ebx + 0x748]
mov edx, dword [ebx + 0x74c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov eax, dword [ebx + 0x6b8]
mov edx, dword [ebx + 0x6bc]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._Curl_pgrsLimitWaitTime
mov ecx, dword [esp + 0x38]
mov edi, eax
or ecx, eax
jmp 0x406b21
mov edx, dword [ebx + 0x24]
jmp 0x406df0
mov ebp, 0x1c
cmp eax, 0x11
jne 0x4060f7
jmp 0x4060a0
cmp ecx, 0x10
jbe 0x406a54
cmp ecx, 0x11
je 0x406d67
xor ebp, ebp
jmp 0x4060f7
cmp eax, 0x11
je 0x406fb8
mov ebp, 0x2a
jmp 0x4060f7
mov dword [esp], ebx
call sym._Curl_posttransfer
jmp 0x406090
cmp byte [esp + 0x53], 0
je 0x407109
mov edx, dword [esi + 0x78]
mov eax, 9
and edx, 1
sub eax, edx
cmp dword [ebx + 0x24], eax
je 0x406f4c
mov dword [ebx + 0x24], eax
mov eax, dword [eax*4 + 0x45c760]
test eax, eax
je 0x406f4c
mov dword [esp], ebx
call eax
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
ja 0x40664b
mov edx, 0xffffffff
mov eax, dword [ebx + 8]
test eax, eax
jne 0x4061cb
mov eax, dword [ebx + 0x24]
xor ebp, ebp
jmp 0x4060ed
mov dword [esp + 4], edi
mov dword [esp], ebx
call sym._Curl_expire
jmp 0x406b6e
mov ebp, dword [edi + 0x9c]
jmp 0x406793
mov dword [esp + 4], 2
mov eax, dword [ebx + 8]
mov edi, 1
mov dword [esp], eax
call sym._Curl_conncontrol
jmp 0x406016
mov ebp, 0x2a
jmp 0x4060a0
cmp ecx, 0x10
ja 0x406ed1
mov edi, dword [ebx + 8]
nop
mov eax, edi
xor edx, edx
test edi, edi
jne 0x4061cb
xor ebp, ebp
jmp 0x4060f7
mov edx, 0xffffffff
test eax, eax
jne 0x406a8a
jmp 0x4063b3
mov dword [esp], eax
call sym._Curl_connect_ongoing
test al, al
mov eax, dword [ebx + 8]
je 0x40753c
cmp dword [ebx + 0x24], 5
je 0x407015
mov dword [ebx + 0x24], 5
test eax, eax
jne 0x4066f5
xor ebp, ebp
jmp 0x4060f7
mov edi, dword [eax]
mov dword [esp + 4], str.Re_used_connection_seems_dead__get_a_new_one_n
mov dword [esp + 0x5c], eax
mov dword [esp], edi
mov dword [esp + 0x44], eax
call sym._Curl_infof
mov eax, dword [esp + 0x44]
mov dword [esp + 4], 1
mov dword [esp], eax
call sym._Curl_conncontrol
xor ecx, ecx
xor edx, edx
lea eax, [esp + 0x5c]
call sym._multi_done
mov dword [ebx + 8], 0
test eax, eax
je 0x40706f
cmp eax, 0x37
jne 0x4070cf
lea eax, [esp + 0x57]
mov dword [esp], edi
mov dword [esp + 0xc], eax
lea eax, [esp + 0x56]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x38]
mov byte [esp + 0x57], 1
mov dword [esp + 4], eax
call sym._Curl_connect
test eax, eax
jne 0x4070c6
mov edi, dword [ebx + 8]
cmp byte [esp + 0x56], 0
mov dword [esp + 0x5c], edi
jne 0x40789e
mov eax, dword [edi + 0x28c]
lea ecx, [esp + 0x54]
mov dword [esp], edi
mov dword [esp + 4], ecx
call dword [eax + 8]
test eax, eax
je 0x4069ee
cmp eax, 0x37
je 0x40742b
mov ebp, eax
lea esi, [esi]
mov dword [esp], ebx
call sym._Curl_posttransfer
mov eax, dword [ebx + 8]
test eax, eax
je 0x406da0
mov eax, dword [esp + 0x38]
xor ecx, ecx
mov edx, ebp
call sym._multi_done
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
jbe 0x406829
jmp 0x4064ce
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_connect_ongoing
test al, al
je 0x40771e
cmp dword [ebx + 0x24], 5
je 0x406f4c
mov dword [ebx + 0x24], 5
jmp 0x406f4c
mov edi, dword [ebx + 8]
cmp dword [ebx + 0x24], 6
mov eax, edi
je 0x406940
mov dword [ebx + 0x24], 6
test edi, edi
jne 0x406950
xor ebp, ebp
jmp 0x405ed0
cmp ebp, 0x5c
setne cl
mov eax, dword [ebx + 8]
mov edx, dword [eax + 0x28c]
test byte [edx + 0x44], 2
jne 0x407180
test cl, cl
je 0x407180
mov dword [esp + 4], 2
mov dword [esp], eax
call sym._Curl_conncontrol
mov dword [esp], ebx
xor edi, edi
call sym._Curl_posttransfer
mov edx, ebp
lea eax, [ebx + 8]
mov ecx, 1
call sym._multi_done
mov eax, dword [esp + 0x5c]
xor edx, edx
jmp 0x406317
cmp byte [ebx + 0x9d9], 0
je 0x4071c3
mov eax, dword [eax + 0x28c]
test byte [eax + 0x45], 0x10
jne 0x4071c3
mov dword [ebx + 0xa38], 7
cmp dword [ebx + 0x24], 0x10
je 0x406c6d
mov dword [ebx + 0x24], 0x10
jmp 0x406c6d
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_pipeline_leave_read
mov eax, dword [ebx + 0x110]
jmp 0x4062e4
lea eax, [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_retry_request
test eax, eax
jne 0x40758f
mov eax, dword [esp + 0x5c]
test eax, eax
jne 0x4074ec
test ebp, ebp
jne 0x407157
cmp byte [esp + 0x55], 0
je 0x40630c
xor edi, edi
mov dword [esp], ebx
call sym._Curl_posttransfer
mov eax, dword [ebx + 8]
mov dword [esp], ebx
add eax, 0x2dc
mov dword [esp + 4], eax
call sym._Curl_removeHandleFromPipeline
mov eax, dword [ebx + 8]
mov eax, dword [eax + 0x2dc]
test eax, eax
je 0x40726e
mov dword [esp + 8], 6
mov dword [esp + 4], 0
mov eax, dword [eax]
mov dword [esp], eax
call sym._Curl_expire
mov eax, dword [ebx + 0x11c]
test eax, eax
je 0x407734
mov eax, edi
mov dword [esp + 0x38], 2
test al, al
jne 0x4072b3
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call dword [0x45bc90]
mov eax, dword [ebx + 0x11c]
mov dword [esp + 0x38], 3
mov dword [ebx + 0x11c], 0
mov dword [esp + 0x5c], eax
lea eax, [ebx + 8]
xor ecx, ecx
xor edx, edx
call sym._multi_done
mov ebp, eax
test eax, eax
je 0x407767
mov eax, dword [esp + 0x5c]
xor edi, edi
xor edx, edx
jmp 0x406317
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_pipeline_leave_write
jmp 0x4062ec
mov ecx, dword [edi + 0x298]
mov eax, dword [edi + 0x29c]
mov edx, dword [edi]
cmp eax, ecx
cmovb eax, ecx
mov byte [edx + 0x128], 0
add eax, 1
mov dword [edx + 0x10c], eax
mov dword [esp + 4], 6
mov dword [esp], edx
call sym._Curl_pgrsTime
mov eax, dword [esp + 0x58]
mov ecx, dword [ebx + 0x24]
test eax, eax
je 0x406fc2
xor edx, edx
cmp eax, 1
sete dl
lea edx, [edx + edx + 0xa]
jmp 0x406410
call sym._Curl_timediff
mov edi, dword [esp + 0x38]
mov ebp, dword [esp + 0x3c]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], ebp
mov dword [esp + 4], 0x45c624
call sym._Curl_failf
jmp 0x40600a
mov eax, dword [edi + 0x29c]
mov edx, dword [edi + 0x298]
mov ecx, dword [edi]
cmp eax, edx
cmovb eax, edx
mov byte [ecx + 0x128], 0
add eax, 1
mov dword [ecx + 0x10c], eax
mov dword [esp + 4], 6
mov dword [esp], ecx
call sym._Curl_pgrsTime
cmp byte [esp + 0x54], 0
je 0x4069f9
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0x24]
cmp byte [eax + 0x264], 0
je 0x4076dd
cmp edx, 0xb
je 0x4066f5
mov dword [ebx + 0x24], 0xb
xor edx, edx
jmp 0x4061cb
mov eax, dword [ebx + 0x710]
mov edx, dword [ebx + 0x714]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._Curl_timediff
mov dword [esp + 4], str.Resolving_timed_out_after__ld_milliseconds
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_failf
jmp 0x40600a
cmp byte [edi + 0x25a], 0
mov eax, dword [ebx + 8]
je 0x40742b
mov ecx, dword [esp + 0x44]
mov edi, dword [ecx + 0x64]
test edi, edi
je 0x407024
mov eax, dword [ebx + 8]
movzx edi, byte [eax + 0x25a]
mov ecx, edi
test cl, cl
je 0x4070d8
lea edx, [esp + 0x5c]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 0x5c], 0
call sym._Curl_retry_request
test eax, eax
jne 0x4077ae
mov dword [esp], ebx
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x44], eax
call sym._Curl_posttransfer
mov eax, dword [esp + 0x38]
mov edx, 0x37
xor ecx, ecx
call sym._multi_done
mov edx, dword [esp + 0x44]
test edx, edx
je 0x4078d4
test eax, eax
mov ebp, eax
sete cl
cmp eax, 0x37
mov edi, ecx
sete cl
xor edx, edx
mov eax, edi
or al, cl
mov edi, eax
jne 0x407853
mov eax, dword [esp + 0x5c]
mov dword [esp + 0x38], edx
mov dword [esp], eax
call dword [0x45bc90]
mov eax, dword [ebx + 0x24]
mov edx, dword [esp + 0x38]
jmp 0x4060e4
lea eax, [esp + 0x5c]
mov dword [esp + 4], eax
mov eax, dword [ebx + 8]
mov dword [esp], eax
call sym._Curl_retry_request
test eax, eax
jne 0x4075a4
mov eax, dword [esp + 0x5c]
test eax, eax
je 0x4075a4
mov byte [esp + 0x55], 1
mov edi, 1
jmp 0x40722b
mov eax, dword [ebx + 0x710]
mov edx, dword [ebx + 0x714]
mov dword [esp + 8], eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x4c]
mov dword [esp], eax
mov dword [esp + 4], edx
call sym._Curl_timediff
mov dword [esp + 4], str.Connection_timed_out_after__ld_milliseconds
mov dword [esp + 8], eax
mov dword [esp], ebx
call sym._Curl_failf
jmp 0x40600a
movzx ecx, byte [eax + 0x269]
mov edx, 6
sub edx, ecx
cmp edx, dword [ebx + 0x24]
je 0x406950
mov dword [ebx + 0x24], edx
mov edx, dword [edx*4 + 0x45c760]
test edx, edx
je 0x406950
mov dword [esp], ebx
call edx
mov eax, dword [ebx + 0x24]
cmp eax, 0x10
ja 0x40664b
mov eax, dword [ebx + 8]
mov edx, 0xffffffff
mov edi, eax
test eax, eax
jne 0x4061cb
xor ebp, ebp
jmp 0x405ed0
test ebp, ebp
jne 0x407157
cmp eax, 0x5c
mov ebp, eax
setne cl
jmp 0x40715d
mov ecx, 1
jmp 0x40715d
mov edi, dword [esp + 0x48]
mov ebp, dword [esp + 0x4c]
mov dword [esp + 0x38], edx
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], ebp
mov edi, dword [ebx + 0x72c]
mov ebp, dword [ebx + 0x730]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebp
mov dword [esp + 0x14], eax
mov eax, dword [ebx + 0x738]
mov edx, dword [ebx + 0x73c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov edx, dword [ebx + 0x6c4]
mov eax, dword [ebx + 0x6c0]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._Curl_pgrsLimitWaitTime
mov edx, dword [esp + 0x38]
mov edi, dword [ebx + 0x218]
mov ecx, dword [ebx + 0x21c]
mov ebp, eax
cmp edx, edi
mov eax, edx
mov dword [esp + 0x38], ebp
sbb eax, ecx
mov eax, 0
jl 0x407670
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x406cda
mov dword [esp + 0x38], edx
mov dword [esp + 8], 9
cmp eax, ebp
jg 0x4076f2
mov dword [esp + 4], ebp
mov dword [esp], ebx
call sym._Curl_expire
mov eax, dword [ebx + 0x24]
mov edx, dword [esp + 0x38]
cmp eax, 0x10
jbe 0x406d0f
jmp 0x406d5e
xor ebp, ebp
mov eax, dword [esp + 0x48]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x4c]
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], edx
mov eax, dword [ebx + 0x740]
mov edx, dword [ebx + 0x744]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], edx
mov dword [esp + 0x10], edi
mov eax, dword [ebx + 0x748]
mov edx, dword [ebx + 0x74c]
mov dword [esp + 8], eax
mov dword [esp + 0xc], edx
mov edx, dword [ebx + 0x6bc]
mov eax, dword [ebx + 0x6b8]
mov dword [esp + 4], edx
mov dword [esp], eax
call sym._Curl_pgrsLimitWaitTime
mov edx, dword [esp + 0x44]
mov ecx, eax
or ecx, ebp
mov dword [esp + 0x38], ecx
jmp 0x40762d
cmp edx, 0xc
je 0x406950
mov dword [ebx + 0x24], 0xc
jmp 0x406950
mov dword [esp + 4], eax
jmp 0x407651
cmp dword [ebx + 0x24], 3
mov eax, dword [ebx + 8]
je 0x407015
mov dword [ebx + 0x24], 3
test eax, eax
je 0x406a61
xor edx, edx
jmp 0x4061cb
cmp dword [ebx + 0x24], 4
je 0x406f4c
mov dword [ebx + 0x24], 4
jmp 0x406f4c
mov eax, edi
test al, al
je 0x4077ea
mov dword [esp + 0x38], 2
jmp 0x4072b3
mov eax, dword [esp + 0x38]
xor ecx, ecx
xor edx, edx
call sym._multi_done
cmp dword [ebx + 0x24], 0x10
jne 0x406516
jmp 0x40651d
mov eax, dword [esp + 0x38]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x5c]
mov dword [esp + 4], eax
call sym._Curl_follow
mov ebp, eax
test eax, eax
jne 0x4072c9
cmp dword [ebx + 0x24], 2
je 0x40779e
mov dword [ebx + 0x24], 2
mov dword [esp], ebx
call sym._Curl_init_CONNECT
mov eax, dword [esp + 0x5c]
xor edi, edi
mov edx, 0xffffffff
jmp 0x406317
mov dword [esp], ebx
mov dword [esp + 0x44], eax
call sym._Curl_posttransfer
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x38]
xor ecx, ecx
call sym._multi_done
mov ebp, dword [esp + 0x44]
xor edx, edx
jmp 0x4074a8
cmp dword [ebx + 0x24], 4
je 0x406940
mov dword [ebx + 0x24], 4
jmp 0x406940
mov eax, dword [ebx + 0x118]
xor ebp, ebp
test eax, eax
je 0x407834
mov eax, dword [esp + 0x5c]
mov dword [esp], eax
call dword [0x45bc90]
mov eax, dword [ebx + 0x118]
mov dword [ebx + 0x118], 0
mov dword [esp + 8], 1
mov dword [esp + 4], eax
mov dword [esp], ebx
mov dword [esp + 0x5c], eax
call sym._Curl_follow
test eax, eax
mov ebp, eax
setne al
mov edi, eax
cmp dword [ebx + 0x24], 0x10
mov eax, dword [esp + 0x5c]
mov edx, 0xffffffff
je 0x406317
mov dword [ebx + 0x24], 0x10
jmp 0x406317
mov eax, dword [esp + 0x5c]
mov dword [esp + 8], 2
xor edi, edi
mov dword [esp], ebx
mov dword [esp + 4], eax
mov dword [esp + 0x38], edx
call sym._Curl_follow
mov edx, dword [esp + 0x38]
test eax, eax
mov ebp, eax
jne 0x4074a8
cmp dword [ebx + 0x24], 2
je 0x407894
mov dword [ebx + 0x24], 2
mov dword [esp], ebx
call sym._Curl_init_CONNECT
xor edi, edi
or edx, 0xffffffff
jmp 0x4074a8
xor ecx, ecx
mov dword [esp], edi
mov dword [esp + 4], ecx
call sym._Curl_resolver_wait_resolv
test eax, eax
jne 0x4070c6
lea eax, [esp + 0x57]
mov dword [esp], edi
mov dword [esp + 4], eax
call sym._Curl_async_resolved
test eax, eax
jne 0x4070c6
mov edi, dword [ebx + 8]
jmp 0x4070aa
xor edx, edx
jmp 0x4074a8