Function at 0x140025990
Capabilities:
Check http status code

Disassembly:
mov r11, rsp
push rbp
push rbx
push rdi
lea rbp, [r11 - 0x5f]
sub rsp, 0x90
mov rax, qword [0x1401781c0]
xor rax, rsp
mov qword [rbp + 0x1f], rax
mov eax, dword [rdx + 8]
mov rdi, rcx
lea rcx, [rdx + 8]
mov dword [rbp - 0x29], r8d
sub eax, 9
mov qword [rbp - 0x21], rcx
mov rbx, rdx
cmp eax, 6
ja 0x140025d78
mov qword [r11 + 0x20], rsi
mov rdx, rcx
mov qword [r11 - 0x20], r12
mov rcx, rdi
mov qword [r11 - 0x28], r13
mov qword [r11 - 0x30], r14
mov qword [r11 - 0x38], r15
call fcn.140022990
xor r14d, r14d
lea rdx, [rdi + 0x18]
cmp dword [rdi + 0x10], 0x2c
lea r15d, [r14 + 1]
jne 0x140025a33
cmp dword [rdi + 0x20], 0x120
mov eax, dword [rdi + 4]
mov dword [rdi + 8], eax
je 0x140025a23
movups xmm0, xmmword [rdi + 0x20]
mov dword [rdi + 0x20], pe_nt_image_headers64
mov eax, r15d
movups xmmword [rdi + 0x10], xmm0
jmp 0x140025a36
mov rcx, rdi
call fcn.14001b4c0
mov dword [rdi + 0x10], eax
mov eax, r15d
jmp 0x140025a36
mov eax, r14d
test eax, eax
je 0x140025b86
lea rdx, [rbp - 0x11]
mov qword [rbp - 0x19], rbx
mov rcx, rdi
call fcn.140024c70
mov ecx, dword [rbp - 0x11]
lea eax, [rcx - 0xc]
cmp eax, 3
jbe 0x140025b31
mov rsi, qword [rdi + 0x30]
movzx r9d, byte [rsi + 0x44]
test rbx, rbx
je 0x140025b31
mov edx, dword [rbp - 9]
mov r8d, dword [rbx + 8]
lea eax, [r8 - 0xc]
cmp eax, 3
ja 0x140025ad8
cmp r8d, 0xd
jne 0x140025a9f
cmp ecx, 0xa
jne 0x140025ad8
movzx eax, byte [rbx + 0x12]
cmp eax, edx
jne 0x140025ad8
mov dword [rbx + 8], reloc.WS2_32.dll_ntohs
mov byte [rbx + 0x12], r9b
jmp 0x140025acf
cmp ecx, 9
jne 0x140025ab6
cmp byte [rbx + 0x12], dl
jne 0x140025ab6
mov byte [rbx + 0x12], r9b
mov r14d, r15d
mov edx, dword [rbp - 9]
mov ecx, dword [rbp - 0x11]
cmp r8d, 0xc
jne 0x140025ad8
cmp ecx, 9
jne 0x140025ad8
movzx eax, dl
cmp word [rbx + 0x10], ax
jne 0x140025ad8
mov word [rbx + 0x10], r9w
mov ecx, dword [rbp - 0x11]
mov r14d, r15d
mov edx, dword [rbp - 9]
mov rbx, qword [rbx]
test rbx, rbx
jne 0x140025a72
test r14d, r14d
je 0x140025b31
cmp ecx, 9
jne 0x140025af8
movzx edx, dl
shl edx, 9
or edx, r9d
shl edx, 7
jmp 0x140025b04
shl edx, 9
or edx, r9d
shl edx, 7
or edx, 9
mov rcx, rsi
call fcn.14000aaf0
mov r8, qword [rsi]
movzx edx, byte [rsi + 0x44]
inc edx
movzx eax, byte [r8 + 0xc]
cmp edx, eax
jbe 0x140025b2e
cmp edx, 0xff
jae 0x140025d88
mov byte [r8 + 0xc], dl
inc byte [rsi + 0x44]
mov rcx, qword [rdi + 0x38]
mov eax, dword [rcx + 0xb0]
inc eax
movzx edx, ax
mov dword [rcx + 0xb0], eax
cmp edx, 0xc8
jb 0x140025b60
je 0x140025d99
cmp edx, 0xdc
jae 0x140025da6
mov r8d, dword [rbp - 0x29]
lea rdx, [rbp - 0x19]
inc r8d
mov rcx, rdi
call fcn.140025990
mov rax, qword [rdi + 0x38]
lea r14, [rdi + 0x30]
dec dword [rax + 0xb0]
jmp 0x140025cb7
cmp dword [rdi + 0x10], 0x3d
jne 0x140025db1
cmp dword [rdi + 0x20], 0x120
lea rbx, [rdi + 0x18]
mov eax, dword [rdi + 4]
mov dword [rdi + 8], eax
je 0x140025bb4
movups xmm0, xmmword [rdi + 0x20]
mov dword [rdi + 0x20], pe_nt_image_headers64
movups xmmword [rdi + 0x10], xmm0
jmp 0x140025bc2
mov rdx, rbx
mov rcx, rdi
call fcn.14001b4c0
mov dword [rdi + 0x10], eax
lea rdx, [rbp + 7]
mov rcx, rdi
call fcn.1400258e0
lea r14, [rdi + 0x30]
cmp dword [rdi + 0x10], 0x2c
jne 0x140025c23
cmp dword [rdi + 0x20], 0x120
mov eax, dword [rdi + 4]
mov dword [rdi + 8], eax
je 0x140025bf8
movups xmm0, xmmword [rdi + 0x20]
mov dword [rdi + 0x20], pe_nt_image_headers64
movups xmmword [rdi + 0x10], xmm0
jmp 0x140025c06
mov rdx, rbx
mov rcx, rdi
call fcn.14001b4c0
mov dword [rdi + 0x10], eax
mov rcx, qword [r14]
lea rdx, [rbp + 7]
call fcn.14000b8c0
lea rdx, [rbp + 7]
mov rcx, rdi
call fcn.1400258e0
inc r15d
jmp 0x140025bd2
mov edi, dword [rbp - 0x29]
mov rbx, qword [r14]
cmp r15d, edi
je 0x140025d18
mov ecx, dword [rbp + 7]
sub edi, r15d
lea eax, [rcx - 0x12]
cmp eax, 1
jbe 0x140025c69
test ecx, ecx
je 0x140025c50
lea rdx, [rbp + 7]
mov rcx, rbx
call fcn.14000b8c0
test edi, edi
jle 0x140025c84
movzx edx, byte [rbx + 0x44]
mov r8d, edi
mov rcx, rbx
call fcn.14000a600
movzx eax, byte [rbx + 0x44]
jmp 0x140025c8c
lea eax, [rdi + 1]
mov r8d, 0
test eax, eax
lea rdx, [rbp + 7]
mov rcx, rbx
cmovns r8d, eax
call fcn.14000b0c0
movzx eax, byte [rbx + 0x44]
test edi, edi
jle 0x140025cb1
mov rdx, qword [rbx]
movzx ecx, al
add ecx, edi
movzx eax, byte [rdx + 0xc]
cmp ecx, eax
jle 0x140025cab
cmp ecx, 0xff
jge 0x140025dbf
mov byte [rdx + 0xc], cl
add byte [rbx + 0x44], dil
jmp 0x140025cb7
add al, dil
mov byte [rbx + 0x44], al
mov rcx, qword [r14]
lea r8, [rbp + 7]
mov rdx, qword [rbp - 0x21]
movzx eax, byte [rcx + 0x44]
dec eax
mov qword [rbp + 0x17], 0xffffffffffffffff
mov dword [rbp + 0xf], eax
mov dword [rbp + 7], 8
call fcn.14000bb60
mov r14, qword [rsp + 0x78]
mov r13, qword [rsp + 0x80]
mov r12, qword [rsp + 0x88]
mov rsi, qword [rsp + 0xc8]
mov r15, qword [rsp + 0x70]
mov rcx, qword [rbp + 0x1f]
xor rcx, rsp
call fcn.14011b520
add rsp, 0x90
pop rdi
pop rbx
pop rbp
ret
mov eax, dword [rbp + 7]
cmp eax, 0x12
jne 0x140025d4b
movsxd rdx, dword [rbp + 0xf]
lea r8, [rbp + 7]
mov dword [rbp + 7], 8
mov rax, qword [rbx]
mov rcx, qword [rax + 0x40]
mov eax, dword [rcx + rdx*4]
mov rdx, qword [rbp - 0x21]
mov rcx, qword [r14]
shr eax, 7
movzx eax, al
mov dword [rbp + 0xf], eax
jmp 0x140025cda
cmp eax, 0x13
jne 0x140025d68
mov rax, qword [rbx]
movsxd r8, dword [rbp + 0xf]
mov rdx, qword [rax + 0x40]
mov byte [rdx + r8*4 + 3], 2
mov dword [rbp + 7], reloc.WS2_32.dll_recvfrom
mov rdx, qword [rbp - 0x21]
lea r8, [rbp + 7]
mov rcx, qword [r14]
jmp 0x140025cda
lea rdx, [0x14013a540]
mov rcx, rdi
call fcn.14001a0b0
int3
mov rcx, qword [rsi + 0x10]
lea rdx, str.function_or_expression_needs_too_many_registers
call fcn.14001a0b0
int3
lea rdx, str.C_stack_overflow
call fcn.140011880
int3
mov edx, 5
call fcn.140011b70
int3
mov edx, 0x3d
mov rcx, rdi
call fcn.140022520
int3
mov rcx, qword [rbx + 0x10]
lea rdx, str.function_or_expression_needs_too_many_registers
call fcn.14001a0b0
int3