Function at 0x1400a1610
Capabilities:
Write file on windows

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x30
xor r14d, r14d
mov r12, r9
mov esi, r14d
mov r15, rcx
mov byte [r9], sil
mov rbx, r8
movsxd r9, dword [rcx + 0x20]
mov rdi, rdx
mov rax, qword [rdx + 0x18]
mov r13d, r14d
mov rcx, qword [rax + r9*8 + 0x268]
test rcx, rcx
je 0x1400a1660
cmp byte [rcx + 0x24], sil
jne 0x1400a167a
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x1400a1651
xor eax, eax
mov rbx, qword [rsp + 0x80]
add rsp, 0x30
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
ret
mov rax, qword [rcx]
call qword [rax + 0x40]
test al, al
je 0x1400a1660
mov ecx, dword [rbx + 0x98]
test ecx, ecx
je 0x1400a1a67
movsxd rdx, dword [r15 + 0x20]
lea rcx, [rsp + 0x78]
mov rax, qword [rdi + 0x18]
lea r8, [rsp + 0x70]
mov qword [rsp + 0x20], rcx
mov r9d, 1
mov rcx, rdi
mov dword [rsp + 0x78], r14d
call qword [rax + rdx*8 + 0x248]
mov esi, dword [rsp + 0x78]
mov rbp, rax
cmp esi, 0x51
je 0x1400a1660
mov rcx, rdi
call fcn.140088880
test eax, eax
jne 0x1400a1a9d
test esi, esi
jne 0x1400a1a85
test rbp, rbp
mov rax, r14
cmovns rax, rbp
test rax, rax
jle 0x1400a1a15
cmp dword [rbx + 0x98], 2
jne 0x1400a1798
mov rax, qword [rbx + 0xa0]
test rax, rax
je 0x1400a1737
dec rax
mov qword [rbx + 0xa0], rax
test rax, rax
jg 0x1400a19a3
test r14d, r14d
mov dword [rbx + 0x98], r14d
sete al
mov byte [r12], al
jmp 0x1400a19c2
cmp byte [rbx + 0xac], r13b
je 0x1400a19a3
lea rax, [rsp + 0x78]
mov qword [rsp + 0x78], r14
mov qword [rsp + 0x28], rax
lea rdx, [rbx + 0x50]
lea r9, [rsp + 0x70]
mov qword [rsp + 0x20], 1
xor r8d, r8d
mov rcx, rdi
call fcn.1400a2770
mov esi, eax
test eax, eax
jne 0x1400a1662
cmp dword [rbx + 0x58], 8
jne 0x1400a19a3
lea rdx, str.chunk_reading_DONE
mov rcx, rdi
call fcn.140077a60
jmp 0x1400a199c
mov r8d, 1
lea rdx, [rsp + 0x70]
mov rcx, rbx
call fcn.1400678e0
test eax, eax
jne 0x1400a19fc
cmp byte [rsp + 0x70], 0xa
jne 0x1400a19a3
inc qword [rbx + 0x48]
lea rsi, [rbx + 0x48]
mov r14, qword [rbx]
mov rbp, qword [rbx + 8]
cmp byte [rdi + 0x9ae], r13b
je 0x1400a187d
cmp qword [rdi + 0x280], r13
je 0x1400a1845
mov rcx, qword [rdi + 0xe8]
test rcx, rcx
je 0x1400a17fd
cmp byte [rcx + 0x25b], r13b
je 0x1400a17fd
mov sil, 1
jmp 0x1400a1805
xor sil, sil
test rcx, rcx
je 0x1400a180c
mov byte [rcx + 0x25b], 1
mov rax, qword [rdi + 0x1f8]
mov r9, rbp
mov r8, r14
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rdi
call qword [rdi + 0x280]
mov rax, qword [rdi + 0xe8]
test rax, rax
je 0x1400a183f
mov byte [rax + 0x25b], sil
lea rsi, [rbx + 0x48]
jmp 0x1400a187d
mov r9, qword [rdi + 0x1f0]
lea rcx, [0x14014737b]
mov edx, 2
mov r8d, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov r9, qword [rdi + 0x1f0]
mov r8d, 1
mov rdx, rbp
mov rcx, r14
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp qword [rsi], 1
mov edx, socket
mov eax, 0x1c
mov r9, rbp
cmove edx, eax
mov r8, r14
mov rcx, rdi
call fcn.1400656f0
test eax, eax
jne 0x1400a1662
mov edx, dword [rdi + 0x134]
mov r9d, 0x4b000
cmp rbp, r9
jae 0x1400a18e6
mov ecx, dword [rdi + 0x1288]
lea eax, [rdx + rbp]
add ecx, ebp
mov dword [rdi + 0x134], eax
mov dword [rdi + 0x1288], ecx
cmp eax, r9d
ja 0x1400a18e1
cmp ecx, 0x5dc000
jbe 0x1400a18f3
mov r9d, 0x5dc000
mov eax, ecx
mov r8d, eax
jmp 0x1400a18ea
lea r8, [rdx + rbp]
test r8, r8
jne 0x1400a19e3
movzx eax, byte [r14]
xor esi, esi
cmp al, 0xd
je 0x1400a1931
cmp al, 0xa
je 0x1400a1931
mov r9, r14
mov r8, rbx
mov rdx, rdi
mov rcx, r15
call fcn.1400a0e20
mov esi, eax
test eax, eax
jne 0x1400a1662
cmp qword [rbx + 8], r13
je 0x1400a1928
mov rax, qword [rbx]
mov byte [rax], r13b
xor r14d, r14d
mov qword [rbx + 8], r14
jmp 0x1400a19a3
cmp dword [rdi + 0x14c], 0x197
jne 0x1400a1999
cmp byte [rdi + 0x1231], sil
jne 0x1400a1999
mov r8, qword [rbx + 0xa0]
mov rcx, rdi
mov dword [rbx + 0x98], 2
test r8, r8
je 0x1400a1970
lea rdx, str.Ignore__lld_bytes_of_response_body
call fcn.140077a60
xor r14d, r14d
jmp 0x1400a19a3
cmp byte [rbx + 0xac], sil
je 0x1400a198a
lea rdx, str.Ignore_chunked_response_body
call fcn.140077a60
xor r14d, r14d
jmp 0x1400a19a3
lea r8, str.CONNECT:_no_content_length_or_chunked
mov rdx, r15
call fcn.140077ab0
xor r14d, r14d
mov dword [rbx + 0x98], r14d
mov ecx, dword [rbx + 0x98]
test ecx, ecx
jne 0x1400a1692
test ecx, ecx
sete al
mov byte [r12], al
test esi, esi
jne 0x1400a19dc
test ecx, ecx
jne 0x1400a19dc
mov eax, dword [rdi + 0x1244]
sub eax, 0xc8
cmp eax, 0x64
jb 0x1400a19dc
mov rcx, rdi
call fcn.140088e40
mov esi, eax
mov eax, esi
jmp 0x1400a1662
lea rdx, str.Too_large_response_headers:__zu____u
mov rcx, rdi
call fcn.140077850
mov eax, 0x38
jmp 0x1400a1662
lea rdx, str.CONNECT_response_too_large
mov rcx, rdi
call fcn.140077850
mov eax, 0x38
jmp 0x1400a1662
cmp dword [rdi + 0x228], r13d
je 0x1400a1a48
cmp dword [rdi + 0xc70], r13d
je 0x1400a1a48
cmp qword [rdi + 0x1210], r13
je 0x1400a1a48
lea rdx, str.Proxy_CONNECT_connection_closed
mov byte [rbx + 0xad], 1
mov rcx, rdi
call fcn.140077a60
jmp 0x1400a1a5d
lea rdx, str.Proxy_CONNECT_aborted
mov rcx, rdi
mov r13d, 1
call fcn.140077850
mov dword [rbx + 0x98], r14d
mov ecx, r14d
test r13d, r13d
je 0x1400a19b1
test ecx, ecx
mov esi, 0x38
sete al
mov byte [r12], al
mov eax, esi
jmp 0x1400a1662
test r14d, r14d
mov dword [rbx + 0x98], r14d
sete al
mov byte [r12], al
mov eax, esi
jmp 0x1400a1662
mov eax, 0x2a
jmp 0x1400a1662