Function at 0x180036af0
Capabilities:
Check http status code

Disassembly:
mov qword [rsp + 0x18], rbx
push rbp
push rsi
push rdi
push r12
push r15
sub rsp, 0x50
mov r15, r8
mov r12d, edx
mov rsi, rcx
call fcn.180027ba0
movsx r9, byte [rsi + 0x435]
mov r8, qword [rsi + 8]
imul r10, r9, 0x138
mov rbp, qword [r10 + rax + 0x2c0]
add rbp, 0x10
mov qword [rsp + 0x80], rbp
mov eax, dword [rax + 0x7ec]
lea rbx, [rbp - 0x10]
lea rdi, [rbp - 0x200]
add rbx, rax
add rdi, rax
test r8, r8
jne 0x180036b73
lea r8, str.lws_return_http_status
mov ecx, 1
lea rdx, str._s:_wsi_not_bound_to_vhost_n
call fcn.18002a190
mov eax, 1
jmp 0x180036ec9
test byte [rsi + 0x420], 2
jne 0x180036bd4
mov r8, qword [r8 + 0x130]
test r8, r8
je 0x180036bd4
cmp r12d, 0x194
jne 0x180036bd4
mov r9, 0xffffffffffffffff
nop dword [rax + rax]
inc r9
cmp byte [r8 + r9], 0
jne 0x180036ba0
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rbx
mov edx, 0x12e
mov qword [rsp + 0x20], rax
mov rcx, rsi
call fcn.1800368b0
test eax, eax
jle 0x180036bd4
xor eax, eax
jmp 0x180036ec9
mov qword [rsp + 0x88], r14
lea r8, [rsp + 0x80]
test r15, r15
mov qword [rsp + 0x80], rbp
lea r14, [0x18005ac3a]
mov r9, rbx
mov edx, r12d
mov rcx, rsi
cmovne r14, r15
call fcn.1800363c0
test eax, eax
jne 0x180036ebc
test byte [rsi + 0x41c], 6
lea r15, [0x180058450]
jne 0x180036c80
test dword [rsi + 0x420], 0x20000000
jne 0x180036c80
cmp qword [rsi + 0x360], r15
je 0x180036c80
mov eax, dword [rsi + 0x400]
and eax, 0xf000000
cmp eax, 0x1000000
je 0x180036c80
mov rdx, qword [str.content_type:]
test rdx, rdx
je 0x180036ebc
lea rax, [rsp + 0x80]
mov qword [rsp + 0x28], rbx
mov r9d, 9
mov qword [rsp + 0x20], rax
lea r8, str.text_html
mov rcx, rsi
call fcn.180036130
jmp 0x180036cab
mov r9d, 9
mov qword [rsp + 0x28], rbx
lea rax, [rsp + 0x80]
mov rcx, rsi
lea r8, str.text_html
mov qword [rsp + 0x20], rax
lea edx, [r9 + 0x13]
call fcn.18003fe50
test eax, eax
jne 0x180036ebc
mov r9d, r12d
mov qword [rsp + 0x20], r14
lea r8, str._html__head__meta_charsetutf_8_http_equiv_Content_Language__content_en____link_rel_stylesheet__type_text_css__href__error.css_____head__body__h1__u__h1__s__body___html_
mov edx, 0x1fe
mov rcx, rdi
call fcn.18002ce10
mov r9d, eax
mov r14d, eax
lea r8, [0x18005b96c]
mov edx, reloc.WS2_32.dll_inet_ntoa
lea rcx, [rsp + 0x30]
call fcn.18002ce10
test byte [rsi + 0x41c], 6
jne 0x180036d51
test dword [rsi + 0x420], 0x20000000
jne 0x180036d51
cmp qword [rsi + 0x360], r15
je 0x180036d51
mov ecx, dword [rsi + 0x400]
and ecx, 0xf000000
cmp ecx, 0x1000000
je 0x180036d51
mov rdx, qword [str.content_length:]
test rdx, rdx
je 0x180036ebc
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0x30]
mov rcx, rsi
mov r9d, eax
call fcn.180036130
jmp 0x180036d78
lea rcx, [rsp + 0x80]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x20], rcx
lea r8, [rsp + 0x30]
mov rcx, rsi
mov r9d, eax
mov edx, 0x1b
call fcn.18003fe50
test eax, eax
jne 0x180036ebc
test byte [rsi + 0x41c], 6
jne 0x180036df3
test dword [rsi + 0x420], 0x20000000
jne 0x180036df3
cmp qword [rsi + 0x360], r15
je 0x180036df3
mov eax, dword [rsi + 0x400]
and eax, 0xf000000
cmp eax, 0x1000000
je 0x180036df3
mov rax, qword [rsp + 0x80]
sub rbx, rax
cmp rbx, 3
jl 0x180036ebc
mov byte [rax], reloc.WS2_32.dll_listen
mov rax, qword [rsp + 0x80]
inc rax
mov qword [rsp + 0x80], rax
mov byte [rax], 0xa
mov rcx, qword [rsp + 0x80]
inc rcx
mov qword [rsp + 0x80], rcx
jmp 0x180036dfb
mov rcx, qword [rsp + 0x80]
test byte [rsi + 0x41c], 2
je 0x180036e8b
sub rcx, rbp
mov r9d, 8
mov r8, rcx
mov rdx, rbp
mov rcx, rsi
call fcn.180029a40
mov ecx, dword [rsp + 0x80]
sub ecx, ebp
cmp eax, ecx
jne 0x180036ebc
mov rcx, r14
lea edx, [r14 + 0x11]
mov qword [rsi + 0x90], rcx
lea r8, str.pending_status_body
mov qword [rsi + 0x98], rcx
xor ecx, ecx
call fcn.18002d8d0
mov qword [rsi + 0xc0], rax
mov rcx, rax
test rax, rax
jne 0x180036e67
lea eax, [rcx - 1]
jmp 0x180036ec1
sub rcx, rdi
nop word [rax + rax]
movzx eax, byte [rdi]
mov byte [rcx + rdi + 0x10], al
lea rdi, [rdi + 1]
test al, al
jne 0x180036e70
mov rcx, rsi
call fcn.180037aa0
xor eax, eax
jmp 0x180036ec1
mov ebx, ecx
mov r8, r14
sub ebx, ebp
mov rdx, rdi
add ebx, r14d
call sub.ntdll.dll_memcpy
mov r8d, ebx
mov r9d, 3
mov rdx, rbp
mov rcx, rsi
call fcn.180029a40
xor ecx, ecx
cmp eax, ebx
setne cl
mov eax, ecx
jmp 0x180036ec1
mov eax, 1
mov r14, qword [rsp + 0x88]
mov rbx, qword [rsp + 0x90]
add rsp, 0x50
pop r15
pop r12
pop rdi
pop rsi
pop rbp
ret