Function at 0x1401280a0
Capabilities:
Write file on windows

Disassembly:
push rbx
push rbp
push rsi
push rdi
push r12
push r13
push r14
push r15
sub rsp, 0x58
mov rax, qword [0x1402e1040]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov r13, rcx
mov r12, r9
xor ecx, ecx
mov rdi, r8
mov byte [r9], cl
mov esi, ecx
mov rax, qword [rdx + 0x20]
mov r14d, ecx
mov dword [rsp + 0x34], ecx
mov rbx, rdx
movsxd rcx, dword [r13 + 0x20]
mov rcx, qword [rax + rcx*8 + 0x250]
test rcx, rcx
je 0x1401280ff
nop
cmp byte [rcx + 0x24], sil
jne 0x14012811f
mov rcx, qword [rcx + 8]
test rcx, rcx
jne 0x1401280f0
xor eax, eax
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140171bd0
add rsp, 0x58
pop r15
pop r14
pop r13
pop r12
pop rdi
pop rsi
pop rbp
pop rbx
ret
mov rax, qword [rcx]
call qword [rax + 0x40]
test al, al
je 0x1401280ff
mov ecx, dword [rdi + 0x98]
test ecx, ecx
je 0x14012855b
nop word [rax + rax]
movsxd rdx, dword [r13 + 0x20]
lea rcx, [rsp + 0x40]
mov rax, qword [rbx + 0x20]
lea r8, [rsp + 0x38]
mov qword [rsp + 0x20], rcx
mov r9d, 1
mov rcx, rbx
mov dword [rsp + 0x40], r14d
call qword [rax + rdx*8 + 0x230]
mov esi, dword [rsp + 0x40]
mov rbp, rax
cmp esi, 0x51
je 0x1401280ff
mov rcx, rbx
call fcn.140125960
test eax, eax
jne 0x140128591
test esi, esi
jne 0x140128579
test rbp, rbp
mov rax, r14
cmovns rax, rbp
test rax, rax
jle 0x140128505
cmp dword [rdi + 0x98], 2
jne 0x140128246
mov rax, qword [rdi + 0xa0]
test rax, rax
je 0x1401281e5
dec rax
mov qword [rdi + 0xa0], rax
test rax, rax
jg 0x140128493
test r14d, r14d
mov dword [rdi + 0x98], r14d
sete al
mov byte [r12], al
jmp 0x1401284b2
cmp byte [rdi + 0xac], 0
je 0x140128493
lea rax, [rsp + 0x40]
mov qword [rsp + 0x40], r14
mov qword [rsp + 0x28], rax
lea rdx, [rdi + 0x50]
lea r9, [rsp + 0x38]
mov qword [rsp + 0x20], 1
xor r8d, r8d
mov rcx, rbx
call fcn.140163870
mov esi, eax
test eax, eax
jne 0x140128101
cmp dword [rdi + 0x58], 8
jne 0x140128493
lea rdx, str.chunk_reading_DONE
mov rcx, rbx
call fcn.140101ff0
jmp 0x14012848c
mov r8d, 1
lea rdx, [rsp + 0x38]
mov rcx, rdi
call fcn.1401002b0
test eax, eax
jne 0x1401284ec
cmp byte [rsp + 0x38], 0xa
jne 0x140128493
inc qword [rdi + 0x48]
mov r15, qword [rdi]
mov r14, qword [rdi + 8]
cmp byte [rbx + 0xa56], al
je 0x140128322
cmp qword [rbx + 0x270], 0
je 0x1401282ea
mov rcx, qword [rbx + 0xd8]
test rcx, rcx
je 0x1401282a6
cmp byte [rcx + 0x22b], al
je 0x1401282a6
mov sil, 1
jmp 0x1401282ae
xor sil, sil
test rcx, rcx
je 0x1401282b5
mov byte [rcx + 0x22b], 1
mov rax, qword [rbx + 0x1e8]
mov r9, r14
mov r8, r15
mov qword [rsp + 0x20], rax
mov edx, 1
mov rcx, rbx
call qword [rbx + 0x270]
mov rax, qword [rbx + 0xd8]
test rax, rax
je 0x140128322
mov byte [rax + 0x22b], sil
jmp 0x140128322
mov r9, qword [rbx + 0x1e0]
lea rcx, [0x14026f8a3]
mov edx, 2
mov r8d, 1
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
mov r9, qword [rbx + 0x1e0]
mov r8d, 1
mov rdx, r14
mov rcx, r15
call qword [sym.imp.api_ms_win_crt_stdio_l1_1_0.dll_fwrite]
cmp qword [rdi + 0x48], 1
mov ebp, reloc.WS2_32.dll_sendto
mov eax, 0x1c
cmove ebp, eax
cmp qword [rbx + 0x148], 0
jne 0x140128350
mov rcx, rbx
call fcn.140100a90
mov esi, eax
test eax, eax
jne 0x1401284cc
mov rdx, qword [rbx + 0x148]
test rdx, rdx
jne 0x140128363
mov esi, reloc.WS2_32.dll_socket
jmp 0x140128379
mov rax, qword [rdx]
mov r9, r15
mov r8d, ebp
mov qword [rsp + 0x20], r14
mov rcx, rbx
call qword [rax + Ordinal_26]
mov esi, eax
mov r9, r14
mov dword [rsp + 0x20], esi
mov r8d, ebp
lea rdx, str.client_write_type_x__len_zu______d
mov rcx, rbx
call fcn.1401022e0
test esi, esi
jne 0x1401284cc
mov edx, dword [rbx + 0x124]
mov r9d, 0x4b000
cmp r14, r9
jae 0x1401283de
mov ecx, dword [rbx + 0x1300]
lea eax, [r14 + rdx]
add ecx, r14d
mov dword [rbx + 0x124], eax
mov dword [rbx + 0x1300], ecx
cmp eax, r9d
ja 0x1401283d9
cmp ecx, 0x5dc000
jbe 0x1401283eb
mov r9d, 0x5dc000
mov eax, ecx
mov r8d, eax
jmp 0x1401283e2
lea r8, [r14 + rdx]
test r8, r8
jne 0x1401284d3
movzx eax, byte [r15]
xor r14d, r14d
mov esi, r14d
cmp al, 0xd
je 0x14012842a
cmp al, 0xa
je 0x14012842a
mov r9, r15
mov r8, rdi
mov rdx, rbx
mov rcx, r13
call fcn.1401278b0
mov esi, eax
test eax, eax
jne 0x140128101
cmp qword [rdi + 8], r14
je 0x140128424
mov rax, qword [rdi]
mov byte [rax], r14b
mov qword [rdi + 8], r14
jmp 0x140128493
cmp dword [rbx + 0x13c], 0x197
jne 0x14012848c
cmp byte [rbx + 0x12a1], sil
jne 0x14012848c
mov r8, qword [rdi + 0xa0]
mov rcx, rbx
mov dword [rdi + 0x98], 2
test r8, r8
je 0x140128466
lea rdx, str.Ignore__lld_bytes_of_response_body
call fcn.140101ff0
jmp 0x140128493
cmp byte [rdi + 0xac], sil
je 0x14012847d
lea rdx, str.Ignore_chunked_response_body
call fcn.140101ff0
jmp 0x140128493
lea r8, str.CONNECT:_no_content_length_or_chunked
mov rdx, r13
call fcn.140102040
mov dword [rdi + 0x98], r14d
mov ecx, dword [rdi + 0x98]
test ecx, ecx
jne 0x140128140
test ecx, ecx
sete al
mov byte [r12], al
test esi, esi
jne 0x1401284cc
test ecx, ecx
jne 0x1401284cc
mov eax, dword [rbx + 0x12bc]
sub eax, 0xc8
cmp eax, 0x64
jb 0x1401284cc
mov rcx, rbx
call fcn.140135d60
mov esi, eax
mov eax, esi
jmp 0x140128101
lea rdx, str.Too_large_response_headers:__zu____u
mov rcx, rbx
call fcn.140101e00
mov eax, gethostname
jmp 0x140128101
lea rdx, str.CONNECT_response_too_large
mov rcx, rbx
call fcn.140101e00
mov eax, gethostname
jmp 0x140128101
cmp dword [rbx + 0x218], 0
je 0x14012853e
cmp dword [rbx + 0xd20], 0
je 0x14012853e
cmp qword [rbx + 0x1280], 0
je 0x14012853e
lea rdx, str.Proxy_CONNECT_connection_closed
mov byte [rdi + 0xad], 1
mov rcx, rbx
call fcn.140101ff0
mov r14d, dword [rsp + 0x34]
jmp 0x140128553
lea rdx, str.Proxy_CONNECT_aborted
mov rcx, rbx
mov r14d, 1
call fcn.140101e00
xor ecx, ecx
mov dword [rdi + 0x98], ecx
test r14d, r14d
je 0x1401284a1
test ecx, ecx
mov esi, gethostname
sete al
mov byte [r12], al
mov eax, esi
jmp 0x140128101
test r14d, r14d
mov dword [rdi + 0x98], r14d
sete al
mov byte [r12], al
mov eax, esi
jmp 0x140128101
mov eax, Ordinal_46
jmp 0x140128101