Function at 0x1400ed7e0
Capabilities:
Check http status code

Disassembly:
push rsi
push rdi
push r12
sub rsp, 0xa0
mov rax, qword [0x1401cca00]
xor rax, rsp
mov qword [rsp + 0x48], rax
mov rsi, rcx
mov rdi, rdx
mov rcx, qword [rcx + 0x38]
mov r12d, r8d
mov eax, dword [rcx + 0xb0]
inc eax
movzx edx, ax
mov dword [rcx + 0xb0], eax
cmp edx, 0xc8
jb 0x1400ed833
je 0x1400ede03
cmp edx, 0xdc
jae 0x1400ede10
mov eax, dword [rsi + 0x10]
mov qword [rsp + 0xd0], rbx
mov qword [rsp + 0x98], rbp
xor ebp, ebp
mov qword [rsp + 0x90], r13
lea r13, [0x140000000]
mov qword [rsp + 0x88], r14
cmp eax, 0x23
je 0x1400ed9f0
cmp eax, 0x2d
je 0x1400ed9eb
cmp eax, 0x7e
je 0x1400ed9e3
cmp eax, 0x10e
je 0x1400ed9db
add eax, 0xffffff85
cmp eax, 0xa9
ja case.0x1400ed8a9.132
cdqe
movzx eax, byte [rax + r13 + 0xede54]
mov ecx, dword [r13 + rax*4 + 0xede2c]
add rcx, r13
jmp rcx
mov dword [rdi + 8], ebp
mov qword [rdi + 0x10], 0xffffffffffffffff
mov dword [rdi], 5
mov rax, qword [rsi + 0x18]
mov qword [rdi + 8], rax
jmp 0x1400ed93e
mov dword [rdi + 8], ebp
mov qword [rdi + 0x10], 0xffffffffffffffff
mov dword [rdi], 6
mov rax, qword [rsi + 0x18]
mov qword [rdi + 8], rax
jmp 0x1400ed93e
mov rax, qword [rsi + 0x18]
mov qword [rdi + 8], rax
mov dword [rdi], 7
jmp 0x1400ed936
mov dword [rdi], 1
mov dword [rdi + 8], ebp
jmp 0x1400ed936
mov dword [rdi], 2
mov dword [rdi + 8], ebp
jmp 0x1400ed936
mov dword [rdi], 3
mov dword [rdi + 8], ebp
jmp 0x1400ed936
mov rcx, qword [rsi + 0x30]
mov rax, qword [rcx]
cmp byte [rax + 0xb], bpl
je 0x1400ede1b
mov edx, 0x1000050
call fcn.1400d3b40
mov dword [rdi + 8], eax
mov dword [rdi], reloc.WS2_32.dll_send
mov qword [rdi + 0x10], 0xffffffffffffffff
cmp dword [rsi + 0x20], 0x120
mov eax, dword [rsi + 4]
mov dword [rsi + 8], eax
je 0x1400ed961
movups xmm0, xmmword [rsi + 0x20]
mov dword [rsi + 0x20], 0x120
movups xmmword [rsi + 0x10], xmm0
jmp 0x1400edb4b
lea rdx, [rsi + 0x18]
mov rcx, rsi
call fcn.1400e3d30
mov dword [rsi + 0x10], eax
jmp 0x1400edb4b
mov rdx, rdi
mov rcx, rsi
call fcn.1400ec670
jmp 0x1400edb4b
cmp dword [rsi + 0x20], 0x120
mov eax, dword [rsi + 4]
mov dword [rsi + 8], eax
je 0x1400ed9a5
movups xmm0, xmmword [rsi + 0x20]
mov dword [rsi + 0x20], 0x120
movups xmmword [rsi + 0x10], xmm0
jmp 0x1400ed9b4
lea rdx, [rsi + 0x18]
mov rcx, rsi
call fcn.1400e3d30
mov dword [rsi + 0x10], eax
mov r9d, dword [rsi + 4]
xor r8d, r8d
mov rdx, rdi
mov rcx, rsi
call fcn.1400ece00
jmp 0x1400edb4b
mov rdx, rdi
mov rcx, rsi
call fcn.1400ed4f0
jmp 0x1400edb4b
mov r14d, 2
jmp 0x1400ed9f6
mov r14d, 1
jmp 0x1400ed9f6
mov r14d, ebp
jmp 0x1400ed9f6
mov r14d, 3
cmp dword [rsi + 0x20], 0x120
mov qword [rsp + 0x80], r15
mov r15d, dword [rsi + 4]
mov dword [rsi + 8], r15d
je 0x1400eda20
movups xmm0, xmmword [rsi + 0x20]
mov dword [rsi + 0x20], 0x120
movups xmmword [rsi + 0x10], xmm0
jmp 0x1400eda2f
lea rdx, [rsi + 0x18]
mov rcx, rsi
call fcn.1400e3d30
mov dword [rsi + 0x10], eax
mov r8d, recv
mov rdx, rdi
mov rcx, rsi
call fcn.1400ed7e0
mov rbx, qword [rsi + 0x30]
mov rdx, rdi
mov rcx, rbx
call fcn.1400d4180
mov ecx, r14d
test r14d, r14d
je 0x1400eda7b
sub ecx, 1
je 0x1400eda7b
sub ecx, 1
je 0x1400eda6b
cmp ecx, 1
je 0x1400eda99
jmp 0x1400edb43
mov rdx, rdi
mov rcx, rbx
call fcn.1400d5230
jmp 0x1400edb43
lea edx, [r14 + 0xc]
mov r8, rdi
lea r9, reloc.WS2_32.dll_getsockname
mov rcx, rbx
call fcn.1400d55c0
test eax, eax
jne 0x1400edb43
mov rdx, rdi
mov rcx, rbx
call fcn.1400d4930
cmp dword [rdi], 8
mov r10d, eax
jne 0x1400edaed
movzx edx, byte [rbx + 0x42]
test dl, dl
je 0x1400edae3
movsxd rcx, dword [rbx + 0x38]
mov r9d, edx
add rcx, rdx
lea r8, [rcx + rcx*2]
mov rcx, qword [rbx + 0x10]
mov rdx, qword [rcx + 0x58]
mov rax, qword [rdx]
lea rcx, [rax + r8*8]
dec r9
lea rcx, [rcx - 0x18]
cmp byte [rcx + 9], 3
jne 0x1400edb26
test r9, r9
jg 0x1400edad1
mov eax, ebp
cmp dword [rdi + 8], eax
jl 0x1400edaed
dec byte [rbx + 0x44]
shl r10d, 0x10
lea edx, [r14 + 0x31]
or edx, r10d
mov rcx, rbx
call fcn.1400d3b40
mov dword [rdi + 8], eax
mov dword [rdi], reloc.WS2_32.dll_recvfrom
mov r9, qword [rbx]
movsxd rcx, dword [rbx + 0x20]
mov rax, qword [r9 + 0x58]
movsx edx, byte [rcx + rax - 1]
cmp dl, 0x80
je 0x1400edb2e
sub dword [rbx + 0x28], edx
dec byte [rbx + 0x45]
jmp 0x1400edb35
movzx eax, byte [rcx + 0xa]
inc eax
jmp 0x1400edae5
dec dword [rbx + 0x34]
mov byte [rbx + 0x45], 0x81
mov r8d, r15d
mov rdx, r9
mov rcx, rbx
call fcn.1400d3a30
mov r15, qword [rsp + 0x80]
mov eax, dword [rsi + 0x10]
movaps xmmword [rsp + 0x70], xmm6
add eax, 0xffffffdb
movaps xmmword [rsp + 0x60], xmm7
movaps xmmword [rsp + 0x50], xmm8
cmp eax, 0xf9
ja case.0x1400edb82.58
cdqe
movzx eax, byte [rax + r13 + 0xedf58]
mov ecx, dword [r13 + rax*4 + 0xedf00]
add rcx, r13
jmp rcx
mov ebp, 1
jmp case.0x1400edb82.40
mov ebp, 2
jmp case.0x1400edb82.40
mov ebp, 3
jmp case.0x1400edb82.40
mov ebp, 4
jmp case.0x1400edb82.40
mov ebp, 5
jmp case.0x1400edb82.40
mov ebp, 6
jmp case.0x1400edb82.40
mov ebp, 7
jmp case.0x1400edb82.40
mov ebp, 8
jmp case.0x1400edb82.40
mov ebp, 9
jmp case.0x1400edb82.40
mov ebp, 0xa
jmp case.0x1400edb82.40
mov ebp, ntohl
jmp case.0x1400edb82.40
mov ebp, recv
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_recv
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_listen
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_ntohl
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_ntohs
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_recvfrom
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_select
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_send
jmp case.0x1400edb82.40
mov ebp, reloc.WS2_32.dll_sendto
movsd xmm7, qword [0x1401ab290]
movsd xmm8, qword [0x1401ab220]
nop word [rax + rax]
movsxd rax, ebp
movzx eax, byte [r13 + rax*2 + 0x19e630]
cmp eax, r12d
jle 0x1400eddae
cmp dword [rsi + 0x20], 0x120
mov r14d, dword [rsi + 4]
mov dword [rsi + 8], r14d
je 0x1400edc67
movups xmm0, xmmword [rsi + 0x20]
mov dword [rsi + 0x20], 0x120
movups xmmword [rsi + 0x10], xmm0
jmp 0x1400edc76
lea rdx, [rsi + 0x18]
mov rcx, rsi
call fcn.1400e3d30
mov dword [rsi + 0x10], eax
mov rbx, qword [rsi + 0x30]
mov rdx, rdi
mov rcx, rbx
call fcn.1400d4180
cmp ebp, 0x14
ja case.default.0x1400edc9c
movsxd rax, ebp
mov edx, dword [r13 + rax*4 + 0xee054]
add rdx, r13
jmp rdx
mov rdx, rdi
mov rcx, rbx
call fcn.1400d5090
jmp case.default.0x1400edc9c
mov rdx, rdi
mov rcx, rbx
call fcn.1400d51a0
jmp case.default.0x1400edc9c
mov rdx, rdi
mov rcx, rbx
call fcn.1400d4870
jmp case.default.0x1400edc9c
mov eax, dword [rdi + 0x14]
cmp dword [rdi + 0x10], eax
jne 0x1400edd5e
mov ecx, dword [rdi]
sub ecx, 5
je case.default.0x1400edc9c
cmp ecx, 1
je case.default.0x1400edc9c
jmp 0x1400edd5e
mov eax, dword [rdi + 0x14]
cmp dword [rdi + 0x10], eax
jne 0x1400edd00
mov ecx, dword [rdi]
sub ecx, 5
je case.default.0x1400edc9c
cmp ecx, 1
je case.default.0x1400edc9c
mov rdx, rdi
mov rcx, rbx
call fcn.1400d49e0
test eax, eax
jne case.default.0x1400edc9c
jmp 0x1400edd5e
mov eax, dword [rdi]
cmp eax, 6
jne 0x1400edd1e
mov rcx, qword [rdi + 8]
jmp 0x1400edd4a
cmp eax, 5
jne 0x1400edd5e
movsd xmm6, qword [rdi + 8]
movaps xmm0, xmm6
call sub.api_ms_win_crt_math_l1_1_0.dll_floor
ucomisd xmm6, xmm0
jp 0x1400edd5e
jne 0x1400edd5e
comisd xmm0, xmm7
jb 0x1400edd5e
comisd xmm8, xmm0
jbe 0x1400edd5e
cvttsd2si rcx, xmm0
mov eax, dword [rdi + 0x14]
cmp dword [rdi + 0x10], eax
jne 0x1400edd5e
lea rax, [rcx + 0x7f]
cmp rax, 0xff
jbe case.default.0x1400edc9c
mov rdx, rdi
mov rcx, rbx
call fcn.1400d4930
movsxd rax, ebp
lea rdx, [rsp + 0x30]
mov rcx, rsi
movzx r8d, byte [r13 + rax*2 + 0x19e631]
call fcn.1400ed7e0
mov rcx, qword [rsi + 0x30]
lea r9, [rsp + 0x30]
mov r8, rdi
mov dword [rsp + 0x20], r14d
mov edx, ebp
mov ebx, eax
call fcn.1400d5f30
mov ebp, ebx
cmp ebx, 0x15
jne 0x1400edc30
jmp 0x1400eddae
mov ebp, reloc.WS2_32.dll_setsockopt
mov rax, qword [rsi + 0x38]
movaps xmm8, xmmword [rsp + 0x50]
movaps xmm7, xmmword [rsp + 0x60]
movaps xmm6, xmmword [rsp + 0x70]
dec dword [rax + 0xb0]
mov eax, ebp
mov rbp, qword [rsp + 0x98]
mov r13, qword [rsp + 0x90]
mov rbx, qword [rsp + 0xd0]
mov r14, qword [rsp + 0x88]
mov rcx, qword [rsp + 0x48]
xor rcx, rsp
call fcn.140162570
add rsp, 0xa0
pop r12
pop rdi
pop rsi
ret
lea rdx, str.C_stack_overflow
call fcn.1400da800
int3
mov edx, 5
call fcn.1400daae0
int3
lea rdx, str.cannot_use_..._outside_a_vararg_function
mov rcx, rsi
call fcn.1400e2f10
int3