Function at 0x14002b640
Capabilities:
Generate random numbers using a mersenne twister

Disassembly:
push r15
push r14
push r13
push r12
push rbp
push rdi
push rsi
push rbx
sub rsp, 0xb38
movaps xmmword [rsp + 0xb20], xmm6
mov r15, qword [rsp + 0xba0]
mov ebx, dword [rsp + 0xba8]
cmp dword [r15 + 0x20], 0x18f
mov qword [rsp + 0xb80], rcx
mov qword [rsp + 0xb88], rdx
mov dword [rsp + 0x48], r8d
mov qword [rsp + 0xb98], r9
jle 0x14002b6b9
cmp qword [rcx + 0x208], 0
mov rax, rcx
je 0x14002b6b9
lea rcx, [rcx + 0x1f8]
mov r8, r15
mov rdx, r9
call qword [rax + 0x210]
test eax, eax
je 0x14002bbb8
lea rax, [rsp + 0xe0]
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x100]
mov qword [rsp + 0xf0], rax
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xf0]
mov byte [rsp + 0xe0], 0
mov qword [rsp + 0xf8], 0
mov byte [rsp + 0x100], 0
mov qword [rsp + 0x68], rax
test bl, bl
jne 0x14002bc00
cmp byte [rsp + 0x48], 0
lea r14, [rsp + 0x160]
lea rbx, str.close
je 0x14002bd00
mov rdx, rbx
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rax, [rsp + 0x130]
lea rdx, str.Connection
mov rcx, rax
mov qword [rsp + 0x40], rax
mov rdi, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, r14
mov rdx, rdi
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rax, [rsp + 0x148]
mov rcx, r14
movq xmm6, qword [0x140062080]
movq xmm2, rax
lea rax, str.Content_Type
mov rdx, rax
mov qword [rsp + 0x58], rax
punpcklqdq xmm6, xmm2
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rax, [r15 + 0x48]
mov r8, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
lea rbx, [r15 + 0x50]
mov rcx, rax
mov qword [rsp + 0x48], rax
call fcn.140002ce0
cmp rbx, rax
je 0x14002c1f0
mov rcx, r14
lea rsi, str.Content_Length
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rdx, rsi
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x48]
call fcn.140002ce0
cmp rbx, rax
je 0x14002c178
mov rcx, r14
lea rsi, str.Accept_Ranges
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rdx, rsi
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, qword [rsp + 0x168]
mov rdx, qword [rsp + 0x160]
mov rcx, qword [rsp + 0x48]
call fcn.140002ce0
cmp rbx, rax
je 0x14002c108
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rax, qword [rsp + 0xb80]
cmp qword [rax + 0x268], 0
je 0x14002b88f
mov rdx, qword [rsp + 0xb98]
lea rcx, [rax + 0x258]
mov r8, r15
call qword [rax + 0x270]
mov ebx, dword [r15 + 0x20]
mov rdi, r14
mov qword [rsp + 0x140], 0
lea r14, [rsp + 0x160]
mov byte [rsp + 0x148], 0
mov ecx, ebx
movaps xmmword [rsp + 0x130], xmm6
mov qword [rsp + 0x158], 0
call method.httplib.status_message_int_
mov ecx, 0x100
mov r9d, ebx
lea r8, str.HTTP_1.1__d__s_r_n
mov rsi, rax
mov qword [rsp + 0x58], rax
xor eax, eax
mov edx, 0x7ff
rep stosq qword [rdi], rax
mov qword [rsp + 0x20], rsi
mov rcx, r14
lea rdi, [rsp + 0x138]
call fcn.1400016d0
movsxd rbx, eax
test eax, eax
jle 0x14002bb8b
movsxd r8, eax
cmp r8, 0x7fe
ja 0x14002ba48
lea rdi, [rsp + 0x138]
mov rdx, r14
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::append_char_const__unsigned_long_long_
mov rax, qword [rsp + 0xb80]
cmp qword [rax + 0x320], 0
je 0x14002d5d3
mov r8, qword [rsp + 0x48]
mov rdx, qword [rsp + 0x40]
lea rcx, [rax + 0x310]
call qword [rax + 0x328]
test rax, rax
je 0x14002bb94
mov rsi, qword [rsp + 0x140]
mov rbp, qword [rsp + 0x138]
xor ebx, ebx
test rsi, rsi
jne 0x14002b988
jmp 0x14002b9ae
add rbx, rax
cmp rbx, rsi
jae 0x14002b9ae
mov rax, qword [rsp + 0xb88]
mov r8, rsi
lea rdx, [rbp + rbx]
mov rcx, qword [rsp + 0xb88]
sub r8, rbx
mov rax, qword [rax]
call qword [rax + 0x28]
test rax, rax
jns 0x14002b980
lea rax, method.httplib::detail::BufferStream.BufferStream__
mov rcx, rdi
mov qword [rsp + 0x130], rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, qword [rsp + 0xb98]
lea rdx, str.HEAD
call method.bool_std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
mov ebx, eax
test al, al
je 0x14002c250
mov ebx, 1
mov rax, qword [rsp + 0xb80]
cmp qword [rax + 0x2a8], 0
je 0x14002ba12
mov rdx, qword [rsp + 0xb98]
lea rcx, [rax + 0x298]
mov r8, r15
call qword [rax + 0x2b0]
mov rcx, qword [rsp + 0x68]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, qword [rsp + 0x70]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
nop
movaps xmm6, xmmword [rsp + 0xb20]
mov eax, ebx
add rsp, 0xb38
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
pxor xmm0, xmm0
mov ecx, 0x800
lea rdi, [rsp + 0x138]
movups xmmword [rsp + 0x118], xmm0
call sym.operator_new_unsigned_long_long_
lea rdi, [rax + 9]
mov byte [rax], 0
mov rbp, rax
mov esi, 0x800
lea r13, [rax + 0x800]
and rdi, 0xfffffffffffffff8
mov qword [rsp + 0x110], rax
mov qword [rsp + 0x120], r13
mov qword [rax + 1], 0
mov qword [rax + 0x7f8], 0
sub eax, edi
lea ecx, [rax + 0x800]
xor eax, eax
shr ecx, 3
rep stosq qword [rdi], rax
lea rax, [rsp + 0x110]
mov qword [rsp + 0x118], r13
mov qword [rsp + 0x50], rax
lea rax, [rsp + 0x138]
mov qword [rsp + 0x60], rax
jmp 0x14002bb37
cmp rdx, rsi
jae 0x14002bb00
add rdx, rbp
cmp rdx, r13
je 0x14002baf5
mov qword [rsp + 0x118], rdx
mov r13, rdx
nop dword [rax + rax]
mov rax, qword [rsp + 0x58]
mov rsi, r13
mov rcx, rbp
mov rdi, qword [rsp + 0x60]
sub rsi, rbp
lea r8, str.HTTP_1.1__d__s_r_n
mov qword [rsp + 0x20], rax
lea rbx, [rsi - 1]
mov r9d, dword [r15 + 0x20]
mov rdx, rbx
call fcn.1400016d0
movsxd r12, eax
cmp r12, rbx
jb 0x14002bb68
lea rdx, [rsi + rsi]
cmp rsi, rdx
jae 0x14002bae0
mov rcx, qword [rsp + 0x50]
sub rdx, rsi
mov rdi, qword [rsp + 0x60]
call method.std::vector_char__std::allocator_char___._M_default_append_unsigned_long_long_
mov r13, qword [rsp + 0x118]
mov rbp, qword [rsp + 0x110]
jmp 0x14002bb00
lea rdi, [rsp + 0x138]
mov r8, r12
mov rdx, rbp
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::append_char_const__unsigned_long_long_
mov rcx, qword [rsp + 0x50]
mov rbx, r12
call method.std::vector_char__std::allocator_char___.vector__
test rbx, rbx
jne 0x14002b931
lea rax, method.httplib::detail::BufferStream.BufferStream__
mov rcx, rdi
xor ebx, ebx
mov qword [rsp + 0x130], rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002ba12
lea rax, [rsp + 0xe0]
mov qword [rsp + 0xd8], 0
mov qword [rsp + 0xd0], rax
lea rax, [rsp + 0x100]
mov byte [rsp + 0xe0], 0
mov qword [rsp + 0xf0], rax
mov qword [rsp + 0xf8], 0
mov byte [rsp + 0x100], 0
mov rax, qword [rsp + 0xb98]
mov rsi, qword [rsp + 0xb98]
mov rax, qword [rax + 0x188]
sub rax, qword [rsi + 0x180]
cmp rax, 0x10
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x70], rax
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x68], rax
jbe 0x14002bc4c
cmp dword [r15 + 0x20], 0xce
je 0x14002c960
mov rcx, qword [rsp + 0xb98]
mov rdx, r15
call method.httplib::detail.encoding_type_httplib::Request_const__httplib::Response_const_
mov rdx, qword [r15 + 0x80]
mov ebx, eax
test rdx, rdx
je 0x14002c2b0
mov rax, qword [rsp + 0xb98]
mov rsi, qword [rsp + 0xb98]
mov rax, qword [rax + 0x188]
mov rcx, qword [rsi + 0x180]
cmp rax, rcx
je 0x14002c945
lea rsi, [rsp + 0x130]
cmp dword [r15 + 0x20], 0xce
mov qword [rsp + 0x40], rsi
je 0x14002c8b0
mov rbx, qword [rsp + 0x40]
mov rcx, rbx
call method.std::__cxx11.to_string_unsigned_long_long_
lea r14, [rsp + 0x160]
lea rdx, str.Content_Length
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rbx
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rbx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002b723
lea rsi, [rsp + 0x130]
lea rdx, str.Connection
mov rcx, rsi
mov qword [rsp + 0x40], rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov rax, qword [rsp + 0xb98]
mov rdx, rsi
lea r9, [0x140060daa]
xor r8d, r8d
lea r14, [rsp + 0x160]
lea rcx, [rax + 0x40]
call sym._ZN7httplib6detail16get_header_valueERKSt8multimapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7_NS0_2ciESaISt4pairIK
mov rcx, r14
mov rdx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rbx, str.close
mov rcx, r14
mov rdx, rbx
call method.bool_std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
mov rcx, r14
mov esi, eax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, qword [rsp + 0x40]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
test sil, sil
jne 0x14002b73d
lea rax, [rsp + 0x1e0]
mov rcx, rax
mov qword [rsp + 0x48], rax
call fcn.14000f9a8
mov rsi, qword [sym.imp.libstdc_6.dll_vtable_for_std::basic_ios_char__std::char_traits_char___]
xor ecx, ecx
xor edx, edx
mov rbx, qword [str.Xm_a_]
pxor xmm0, xmm0
mov word [rsp + 0x2c0], cx
lea rax, [rsi + 0x10]
movups xmmword [rsp + 0x2c8], xmm0
mov rsi, qword [rbx + 0x10]
mov rdi, qword [rbx + 0x18]
movups xmmword [rsp + 0x2d8], xmm0
mov qword [rsp + 0x1e0], rax
mov rax, qword [rsi - 0x18]
mov qword [rsp + 0x160], rsi
mov qword [rsp + 0x2b8], 0
mov qword [rsp + 0x58], rdi
mov qword [rsp + rax + 0x160], rdi
mov qword [rsp + 0x168], 0
mov rdi, qword [rsi - 0x18]
add rdi, r14
mov rcx, rdi
call sym.std::basic_ios_char__std::char_traits_char___::init_std::basic_streambuf_char__std::char_traits_char____
mov rbp, qword [rbx + 0x20]
lea r12, [rsp + 0x170]
xor edx, edx
mov rdi, qword [rbp - 0x18]
mov qword [rsp + 0x170], rbp
add rdi, r12
mov rcx, rdi
mov rdi, qword [rbx + 0x28]
mov qword [rcx], rdi
mov qword [rsp + 0x60], rdi
call sym.std::basic_ios_char__std::char_traits_char___::init_std::basic_streambuf_char__std::char_traits_char____
mov rdi, qword [sym.imp.libstdc_6.dll_vtable_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
mov rdx, qword [sym.imp.libstdc_6.dll_vtable_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
add rdi, 0x40
movq xmm6, rdi
mov rdi, qword [rbx + 8]
mov rbx, qword [rbx + 0x30]
movdqa xmm0, xmm6
mov rax, qword [rdi - 0x18]
mov qword [rsp + rax + 0x160], rbx
lea rax, [rdx + 0x18]
mov qword [rsp + 0x160], rax
lea rax, [rdx + 0x68]
mov rdx, qword [sym.imp.libstdc_6.dll_vtable_for_std::basic_streambuf_char__std::char_traits_char___]
mov qword [rsp + 0x1e0], rax
lea rax, [rdx + 0x10]
lea rdx, [rsp + 0x1b0]
movq xmm3, rax
mov rcx, rdx
mov qword [rsp + 0x78], rdx
punpcklqdq xmm0, xmm3
movaps xmmword [rsp + 0x170], xmm0
pxor xmm0, xmm0
movaps xmmword [rsp + 0x180], xmm0
movaps xmmword [rsp + 0x190], xmm0
movaps xmmword [rsp + 0x1a0], xmm0
call fcn.14000fa60
mov r13, qword [sym.imp.libstdc_6.dll_vtable_for_std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___]
mov rcx, qword [rsp + 0x48]
lea rdx, [rsp + 0x178]
mov dword [rsp + 0x1b8], 0x18
lea rax, [r13 + 0x10]
mov byte [rsp + 0x1d0], 0
mov qword [rsp + 0x178], rax
lea rax, [rsp + 0x1d0]
mov qword [rsp + 0x1c0], rax
mov qword [rsp + 0x1c8], 0
call sym.std::basic_ios_char__std::char_traits_char___::init_std::basic_streambuf_char__std::char_traits_char____
mov r8d, 8
lea rdx, str.timeout
mov rcx, r12
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
mov rax, qword [rsp + 0xb80]
mov rcx, r12
mov rdx, qword [rax + 0x38]
call sym.std::ostream_std::ostream::_M_insert_long_long__long_long_
mov r12, rax
lea rax, [r13 + 0x10]
mov r8d, 6
movq xmm4, rax
lea rdx, str.__max
mov rcx, r12
punpcklqdq xmm6, xmm4
call sym.std::basic_ostream_char__std::char_traits_char____std::__ostream_insert_char__std::char_traits_char____std::basic_ostream_char__std::char_traits_char_____char_const__long_long_
mov rax, qword [rsp + 0xb80]
mov rcx, r12
mov rdx, qword [rax + 0x30]
call sym.std::ostream_std::ostream::_M_insert_unsigned_long_long__unsigned_long_long_
lea rax, [rsp + 0x120]
lea r11, [rsp + 0x110]
mov qword [rsp + 0x118], 0
mov qword [rsp + 0x110], rax
mov rax, qword [rsp + 0x1a0]
mov qword [rsp + 0x50], r11
mov byte [rsp + 0x120], 0
test rax, rax
je 0x14002c7e0
mov rdx, qword [rsp + 0x190]
mov rcx, rax
mov r9, qword [rsp + 0x198]
cmp rdx, rax
cmovae rax, rdx
test rdx, rdx
cmove rax, rcx
xor r8d, r8d
xor edx, edx
mov rcx, r11
sub rax, r9
mov qword [rsp + 0x20], rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_replace_unsigned_long_long__unsigned_long_long__char_const__unsigned_long_long_
mov rcx, qword [rsp + 0x40]
lea rdx, str.Keep_Alive
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r12, qword [rsp + 0x50]
mov r13, qword [rsp + 0x40]
mov rcx, r15
mov r8, r12
mov rdx, r13
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r13
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, r12
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rax, qword [sym.imp.libstdc_6.dll_vtable_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
lea rcx, [rsp + 0x1c0]
movaps xmmword [rsp + 0x170], xmm6
add rax, 0x18
mov qword [rsp + 0x160], rax
mov rax, qword [sym.imp.libstdc_6.dll_vtable_for_std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___]
add rax, 0x68
mov qword [rsp + 0x1e0], rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rax, qword [sym.imp.libstdc_6.dll_vtable_for_std::basic_streambuf_char__std::char_traits_char___]
mov rcx, qword [rsp + 0x78]
add rax, 0x10
mov qword [rsp + 0x178], rax
call sym.std::locale::locale__
mov rax, qword [rdi - 0x18]
mov rcx, qword [rsp + 0x48]
mov qword [rsp + rax + 0x160], rbx
mov rax, qword [rbp - 0x18]
mov rbx, qword [rsp + 0x60]
mov qword [rsp + 0x170], rbp
mov qword [rsp + rax + 0x170], rbx
mov rax, qword [rsi - 0x18]
mov qword [rsp + 0x160], rsi
mov rsi, qword [rsp + 0x58]
mov qword [rsp + rax + 0x160], rsi
mov rax, qword [sym.imp.libstdc_6.dll_vtable_for_std::basic_ios_char__std::char_traits_char___]
mov qword [rsp + 0x168], 0
add rax, 0x10
mov qword [rsp + 0x1e0], rax
call sym.std::ios_base::ios_base__
jmp 0x14002b785
mov rcx, qword [rsp + 0xb98]
lea rdx, str.HEAD
call method.bool_std::operator_char__std::char_traits_char___std.allocator_char____std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__char_const_
mov rcx, r14
mov ebx, eax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
test bl, bl
je 0x14002b865
lea rdx, [0x140061051]
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rax, [rsp + 0x110]
mov rdx, rsi
mov rcx, rax
mov qword [rsp + 0x50], rax
mov rdi, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, r14
mov rdx, rdi
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002b85d
cmp qword [r15 + 0x80], 0
jne 0x14002b820
cmp qword [r15 + 0xb8], 0
jne 0x14002b820
cmp qword [r15 + 0xd0], 0
jne 0x14002b820
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rdx, [0x140060eaa]
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rax, [rsp + 0x110]
mov rdx, rsi
mov rcx, rax
mov qword [rsp + 0x50], rax
mov rdi, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, r14
mov rdx, rdi
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002b820
cmp qword [r15 + 0x80], 0
je 0x14002c350
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rdx, str.text_plain
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rax, [rsp + 0x110]
mov rdx, qword [rsp + 0x58]
mov rcx, rax
mov qword [rsp + 0x50], rax
mov rdi, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, r14
mov rdx, rdi
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002b7e3
mov rsi, qword [r15 + 0x80]
test rsi, rsi
je 0x14002c378
mov rbp, qword [r15 + 0x78]
xor edi, edi
jmp 0x14002c27c
add rdi, rax
cmp rdi, rsi
jae 0x14002b9e3
mov rax, qword [rsp + 0xb88]
mov r8, rsi
lea rdx, [rbp + rdi]
mov rcx, qword [rsp + 0xb88]
sub r8, rdi
mov rax, qword [rax]
call qword [rax + 0x28]
test rax, rax
jns 0x14002c270
jmp 0x14002b9e8
mov rdx, qword [r15 + 0xb8]
test rdx, rdx
je 0x14002c7f8
mov rax, qword [rsp + 0xb98]
mov rbx, qword [rsp + 0xb98]
mov rax, qword [rax + 0x188]
mov rcx, qword [rbx + 0x180]
cmp rax, rcx
je 0x14002d204
lea rbx, [rsp + 0x130]
cmp dword [r15 + 0x20], 0xce
mov qword [rsp + 0x40], rbx
je 0x14002ccc4
mov rsi, qword [rsp + 0x40]
mov rcx, rsi
call method.std::__cxx11.to_string_unsigned_long_long_
lea r14, [rsp + 0x160]
lea rdx, str.Content_Length
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rsi
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002b723
cmp qword [r15 + 0xb8], 0
jne 0x14002c1fe
cmp qword [r15 + 0xd0], 0
jne 0x14002c1fe
jmp 0x14002b7e3
cmp qword [r15 + 0xd0], 0
je 0x14002b9e3
mov rax, qword [rsp + 0xb80]
mov r9, qword [r15 + 0xb8]
mov qword [rsp + 0xb8], rax
test r9, r9
jne 0x14002cc06
movzx esi, byte [r15 + 0x100]
test sil, sil
je 0x14002cf02
mov rcx, qword [rsp + 0xb98]
mov rdx, r15
call method.httplib::detail.encoding_type_httplib::Request_const__httplib::Response_const_
sub eax, 1
xor r12d, r12d
cmp eax, 1
ja 0x14002d505
mov rcx, r14
mov byte [rsp + 0xb6], 1
mov qword [rsp + 0xc0], 0
mov byte [rsp + 0xb7], 1
call fcn.1400383d0
pxor xmm0, xmm0
mov ecx, 0x28
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x148], 0
movaps xmmword [rsp + 0x130], xmm0
call sym.operator_new_unsigned_long_long_
lea rdi, [rsp + 0xb7]
lea rdx, [rsp + 0xb6]
mov qword [rsp + 0x130], rax
movq xmm5, rdx
movq xmm6, rdi
mov qword [rax + 0x18], r12
mov rdi, qword [rsp + 0xb88]
punpcklqdq xmm6, xmm5
lea rdx, [rsp + 0xc0]
movdqa xmm5, xmmword [rsp + 0x160]
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0x138]
mov qword [rax + 0x20], rdi
lea rdi, [fcn.140040810]
movups xmmword [rax], xmm6
mov rax, qword [rsp + 0x130]
movq xmm0, rdi
lea rdi, [sym._ZNSt17_Function_handlerIFbPKcyEZN7httplib6detail21write_content_chunkedIZNS3_6Server27write_content_with_providerERNS3_6Strea]
movaps xmmword [rsp + 0x130], xmm5
movq xmm1, rdi
movdqa xmm5, xmmword [rsp + 0x170]
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x170]
punpcklqdq xmm0, xmm1
mov qword [rsp + 0x168], rdx
movaps xmmword [rsp + 0x140], xmm5
movaps xmmword [rsp + 0x170], xmm0
test rax, rax
je 0x14002c4f0
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
mov rax, qword [rsp + 0xb88]
movdqa xmm5, xmmword [rsp + 0x180]
lea rdi, [sym._ZNSt17_Function_handlerIFbvEZN7httplib6detail21write_content_chunkedIZNS1_6Server27write_content_with_providerERNS1_6StreamER]
mov qword [rsp + 0x138], 0
movq xmm0, rdi
lea rdi, [fcn.140043be0]
mov rdx, qword [rsp + 0x138]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
movq xmm1, rdi
movaps xmmword [rsp + 0x130], xmm5
punpcklqdq xmm0, xmm1
movdqa xmm5, xmmword [rsp + 0x190]
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0x190]
mov qword [rsp + 0x188], rdx
movaps xmmword [rsp + 0x140], xmm5
movaps xmmword [rsp + 0x190], xmm0
test rax, rax
je 0x14002c58f
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
mov rax, qword [rsp + 0xb88]
lea rdi, [fcn.1400454c0]
movdqa xmm1, xmmword [rsp + 0x1b0]
mov qword [rsp + 0x138], 0
movq xmm0, rdi
lea rdi, [sym._ZNSt17_Function_handlerIFvvEZN7httplib6detail21write_content_chunkedIZNS1_6Server27write_content_with_providerERNS1_6StreamER]
movdqa xmm5, xmmword [rsp + 0x1a0]
mov rdx, qword [rsp + 0x138]
mov qword [rsp + 0x128], rax
lea rax, [rsp + 0x110]
mov qword [rsp + 0x130], rax
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x130]
movaps xmmword [rsp + 0x140], xmm1
movq xmm1, rdi
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x1b0]
punpcklqdq xmm0, xmm1
mov qword [rsp + 0x120], r12
mov qword [rsp + 0x1a8], rdx
movaps xmmword [rsp + 0x110], xmm6
movaps xmmword [rsp + 0x130], xmm5
movaps xmmword [rsp + 0x1b0], xmm0
test rax, rax
je 0x14002c653
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
mov rax, qword [rsp + 0x50]
lea rdi, [fcn.1400452b0]
movdqa xmm1, xmmword [rsp + 0x1d0]
mov qword [rsp + 0x138], 0
movq xmm0, rdi
lea rdi, [sym._ZNSt17_Function_handlerIFvRKSt8multimapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_N7httplib6detail2ciESaISt4pair]
movdqa xmm5, xmmword [rsp + 0x1c0]
mov rdx, qword [rsp + 0x138]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
movaps xmmword [rsp + 0x140], xmm1
movq xmm1, rdi
mov qword [rsp + 0x1c0], rax
mov rax, qword [rsp + 0x1d0]
punpcklqdq xmm0, xmm1
mov qword [rsp + 0x1c8], rdx
movaps xmmword [rsp + 0x130], xmm5
movaps xmmword [rsp + 0x1d0], xmm0
test rax, rax
je 0x14002c6ef
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
lea rdi, [rsp + 0xc8]
lea rbp, [r15 + 0xc0]
jmp 0x14002c791
mov rax, qword [rsp + 0xb8]
mov rax, qword [rax + 0x28]
cmp rax, 0xffffffffffffffff
je 0x14002c79f
mov rax, qword [rsp + 0xb88]
mov rcx, qword [rsp + 0xb88]
mov rax, qword [rax]
call qword [rax + 0x18]
test al, al
je 0x14002d333
mov rax, qword [rsp + 0xc0]
cmp qword [r15 + 0xd0], 0
mov qword [rsp + 0xc8], 0
mov qword [rsp + 0x130], rax
je 0x14002d5d8
mov rdx, qword [rsp + 0x40]
mov r9, r14
mov r8, rdi
mov rcx, rbp
call qword [r15 + 0xd8]
test al, al
je 0x14002d333
cmp byte [rsp + 0xb7], 0
je 0x14002d333
cmp byte [rsp + 0xb6], 0
jne 0x14002c708
mov rcx, r14
call method.httplib::DataSink.DataSink__
test r12, r12
je 0x14002ccb7
mov rax, qword [r12]
lea rdx, [sym.httplib::detail::nocompressor::nocompressor__]
mov rax, qword [rax + 8]
cmp rax, rdx
jne 0x14002d599
mov edx, 8
mov rcx, r12
call sym.operator_delete_void__unsigned_long_long_
jmp 0x14002ccae
mov rcx, r11
lea rdx, [rsp + 0x1c0]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_assign_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x14002c006
cmp qword [r15 + 0xd0], 0
je 0x14002b723
cmp byte [r15 + 0x100], 0
je 0x14002b723
lea rax, [rsp + 0x130]
lea rdx, str.chunked
mov rcx, rax
mov qword [rsp + 0x40], rax
mov rsi, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea r14, [rsp + 0x160]
lea rdx, str.Transfer_Encoding
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rsi
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
cmp ebx, 1
je 0x14002d563
cmp ebx, 2
jne 0x14002b723
mov rbx, qword [rsp + 0x40]
lea rdx, [0x140060e19]
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rdx, str.Content_Encoding
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rbx
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x14002bce2
sub rax, rcx
cmp rax, 0x10
je 0x14002d216
lea rax, [rsp + 0x170]
lea r14, [rsp + 0x160]
mov r9, rdx
mov r8, qword [rsp + 0x70]
mov qword [rsp + 0x160], rax
lea rax, [rsp + 0xa0]
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0x30], rax
mov rcx, qword [rsp + 0xb98]
mov qword [rsp + 0x28], r14
mov qword [rsp + 0x20], r14
mov qword [rsp + 0x168], 0
mov byte [rsp + 0x170], 0
mov qword [rsp + 0xa0], r14
mov qword [rsp + 0xa8], r15
call sym._ZN7httplib6detail29process_multipart_ranges_dataIZNS0_26make_multipart_ranges_dataERKNS_7RequestERNS_8ResponseERKNSt7__cxx111
mov rdx, r14
lea rcx, [r15 + 0x78]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::swap_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rdx, qword [r15 + 0x80]
lea rax, [rsp + 0x130]
mov qword [rsp + 0x40], rax
jmp 0x14002bcb0
lea rax, str.Content_Type
lea r14, [rsp + 0x160]
mov rdx, rax
mov rcx, r14
mov qword [rsp + 0x58], rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov rcx, qword [rsp + 0x160]
mov rbx, qword [rsp + 0x168]
lea rbp, [r15 + 0x50]
mov rdx, qword [r15 + 0x58]
mov rsi, qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
mov r13, rbp
lea r9, [rcx + rbx]
test rdx, rdx
je 0x14002caca
mov qword [rsp + 0x60], r9
mov rdi, rdx
mov r12, rcx
mov qword [rsp + 0xba0], r15
mov qword [rsp + 0x68], r14
mov qword [rsp + 0x50], rbp
mov rbp, rbx
nop
mov r8, qword [rdi + 0x20]
mov rax, qword [rdi + 0x28]
lea rcx, [r8 + rax]
lea r9, [r8 + rbp]
cmp rbp, rax
mov rbx, rcx
cmovl rbx, r9
cmp r8, rbx
je 0x14002d2a1
mov qword [rsp + 0x40], rdi
mov r14, r12
mov rdi, r8
mov r15, rbx
jmp 0x14002ca1f
jg 0x14002cd18
add rdi, 1
add r14, 1
cmp r15, rdi
je 0x14002cd30
movzx ecx, byte [rdi]
call rsi
movzx ecx, byte [r14]
mov ebx, eax
call rsi
cmp ebx, eax
jge 0x14002ca08
mov rdi, qword [rsp + 0x40]
mov rdi, qword [rdi + 0x18]
test rdi, rdi
jne 0x14002c9d0
mov rbx, rbp
mov rbp, r13
mov r13, qword [rsp + 0x50]
mov r9, qword [rsp + 0x60]
mov r15, qword [rsp + 0xba0]
mov r14, qword [rsp + 0x68]
mov rcx, r12
cmp rbp, r13
je 0x14002caca
mov rdi, qword [r13 + 0x28]
mov rax, qword [r13 + 0x20]
lea r8, [r12 + rdi]
cmp rbx, rdi
cmovg r9, r8
cmp r12, r9
je 0x14002d5a3
mov qword [rsp + 0x40], rbp
mov rsi, rax
mov rbp, rcx
mov r12, qword [sym.imp.api_ms_win_crt_string_l1_1_0.dll_tolower]
mov qword [rsp + 0x60], rdi
mov rdi, r9
mov qword [rsp + 0x50], rax
jmp 0x14002cab7
jg 0x14002d2a9
add rbp, 1
add rsi, 1
cmp rdi, rbp
je 0x14002d313
movzx ecx, byte [rbp]
call r12
movzx ecx, byte [rsi]
mov ebx, eax
call r12
cmp ebx, eax
jge 0x14002caa0
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rax, [rsp + 0xd0]
mov qword [rsp + 0x70], rax
movzx eax, byte [0x14005e1f0]
test al, al
jne 0x14002cb01
lea rbx, [0x14005e1f0]
mov rcx, rbx
call sym.__cxa_guard_acquire
test eax, eax
jne 0x14002d403
movzx eax, byte [0x14005e1d0]
test al, al
jne 0x14002cb23
lea rsi, [0x14005e1d0]
mov rcx, rsi
call sym.__cxa_guard_acquire
test eax, eax
jne 0x14002d442
movzx eax, byte [0x14005e1e0]
lea rsi, [0x14005e340]
test al, al
je 0x14002ce6f
lea rax, [rsp + 0x170]
mov byte [rsp + 0x170], 0
mov ebx, 0x10
lea rbp, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
mov qword [rsp + 0x160], rax
movabs rdi, 0x8421084210842109
mov qword [rsp + 0x168], 0
jmp 0x14002cbe3
mov ecx, dword [rsi + rax*4]
lea rdx, [rax + 1]
mov qword [0x14005ed00], rdx
mov eax, ecx
shr eax, 0xb
xor ecx, eax
mov eax, ecx
shl eax, 7
and eax, 0x9d2c5680
xor ecx, eax
mov eax, ecx
shl eax, 0xf
and eax, 0xefc60000
xor ecx, eax
mov eax, ecx
shr eax, 0x12
xor ecx, eax
mov rdx, rcx
shr rdx, 1
mov rax, rdx
mul rdi
shr rdx, 4
mov rax, rdx
shl rax, 5
sub rax, rdx
add rax, rax
sub rcx, rax
movsx edx, byte [rbp + rcx]
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::push_back_char_
sub rbx, 1
je 0x14002cd42
mov rax, qword [0x14005ed00]
cmp rax, 0x26f
jbe 0x14002cb78
mov rcx, rsi
call sym._ZNSt23mersenne_twister_engineIjLy32ELy624ELy397ELy31ELj2567483615ELy11ELj4294967295ELy7ELj2636928640ELy15ELj4022730752ELy18EL
mov rax, qword [0x14005ed00]
jmp 0x14002cb78
mov rax, qword [rsp + 0xb98]
mov rsi, qword [rsp + 0xb98]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x14002d522
sub rax, rdx
cmp rax, 0x10
je 0x14002d3b7
mov rax, qword [rsp + 0xb88]
mov qword [rsp + 0x168], r15
mov rcx, rsi
mov r8, qword [rsp + 0x70]
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0x160], rax
lea rax, [rsp + 0xb8]
movdqa xmm5, xmmword [rsp + 0x160]
mov qword [rsp + 0x170], rax
mov qword [rsp + 0x90], rax
lea rax, [rsp + 0x80]
mov qword [rsp + 0x30], rax
mov rax, qword [rsp + 0xb88]
movaps xmmword [rsp + 0x80], xmm5
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call sym._ZN7httplib6detail29process_multipart_ranges_dataIZNS0_27write_multipart_ranges_dataIZNS_6Server27write_content_with_providerE
mov esi, eax
test sil, sil
je 0x14002b9e8
mov byte [r15 + 0x101], 1
jmp 0x14002b9e3
sub rax, rcx
cmp rax, 0x10
je 0x14002d358
mov qword [rsp + 0x30], rbx
mov r9, rdx
mov r8, qword [rsp + 0x70]
mov qword [rsp + 0x28], rbx
mov rdx, qword [rsp + 0x68]
mov qword [rsp + 0x20], rbx
mov rcx, qword [rsp + 0xb98]
mov qword [rsp + 0x130], 0
call sym._ZN7httplib6detail29process_multipart_ranges_dataIZNS0_32get_multipart_ranges_data_lengthERKNS_7RequestERKNSt7__cxx1112basic_s
mov rdx, qword [rsp + 0x130]
jmp 0x14002c302
mov rdi, qword [rsp + 0x40]
mov qword [rsp + 0x50], rdi
mov rdi, qword [rdi + 0x10]
jmp 0x14002ca39
mov rdi, qword [rsp + 0x40]
cmp qword [rsp + 0x60], r14
jne 0x14002ca35
jmp 0x14002cd1d
lea r9, str.__cpp_httplib_multipart_data_
xor r8d, r8d
xor edx, edx
mov rcx, r14
mov qword [rsp + 0x20], 0x1d
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_replace_unsigned_long_long__unsigned_long_long__char_const__unsigned_long_long_
lea rdi, [rsp + 0x130]
mov rdx, rax
mov rcx, rdi
mov qword [rsp + 0x40], rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rcx, [rsp + 0xf0]
mov rdx, rdi
mov qword [rsp + 0x68], rcx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.operator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char______clone_.isra.0_
mov rcx, rdi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rbx, qword [rsp + 0xf8]
mov rcx, rdi
lea rax, [rsp + 0x140]
mov qword [rsp + 0x130], rax
mov rsi, qword [rsp + 0xf0]
lea rdx, [rbx + 0x1f]
mov byte [rsp + 0x140], 0
mov qword [rsp + 0x138], 0
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::reserve_unsigned_long_long_
movabs rax, 0x3fffffffffffffff
sub rax, qword [rsp + 0x138]
cmp rax, 0x1e
jbe 0x14002d5ee
mov rcx, qword [rsp + 0x40]
mov r8d, 0x1f
lea rdx, str.multipart_byteranges__boundary
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_append_char_const__unsigned_long_long_
movabs rax, 0x3fffffffffffffff
sub rax, qword [rsp + 0x138]
cmp rax, rbx
jb 0x14002d5e2
mov rcx, qword [rsp + 0x40]
mov r8, rbx
mov rdx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_append_char_const__unsigned_long_long_
mov rdx, qword [rsp + 0x58]
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov rsi, qword [rsp + 0x40]
mov rdx, r14
mov rcx, r15
mov r8, rsi
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
jmp 0x14002bc4c
lea rbx, [0x14005e1e0]
lea rsi, [0x14005e340]
mov rcx, rbx
call sym.__cxa_guard_acquire
test eax, eax
je 0x14002cb39
lea rcx, [0x14005e320]
lea r8, [rsp + 0xb20]
mov rdx, r14
call method.void_std::seed_seq.generate_unsigned_int__unsigned_int__unsigned_int_
mov eax, dword [rsp + 0x160]
mov dword [0x14005e340], eax
not eax
shr eax, 0x1f
mov ecx, eax
mov eax, 1
nop dword [rax]
mov edx, dword [r14 + rax*4]
mov dword [rsi + rax*4], edx
test cl, cl
je 0x14002ced0
test edx, edx
sete cl
add rax, 1
cmp rax, 0x270
jne 0x14002cec0
test cl, cl
je 0x14002ceea
mov dword [0x14005e340], 0x80000000
mov qword [0x14005ed00], 0x270
mov rcx, rbx
call sym.__cxa_guard_release
jmp 0x14002cb39
mov rcx, r14
mov byte [rsp + 0xb7], 1
mov qword [rsp + 0xc8], 0
mov byte [rsp + 0xc0], 1
call fcn.1400383d0
pxor xmm0, xmm0
mov ecx, 0x18
mov qword [rsp + 0x140], 0
mov qword [rsp + 0x148], 0
movaps xmmword [rsp + 0x130], xmm0
call sym.operator_new_unsigned_long_long_
lea rsi, [rsp + 0xc0]
lea rdx, [rsp + 0xc8]
movdqa xmm1, xmmword [rsp + 0x160]
mov qword [rsp + 0x130], rax
movq xmm5, rdx
movq xmm0, rsi
mov rsi, qword [rsp + 0xb88]
mov rdx, qword [rsp + 0x138]
punpcklqdq xmm0, xmm5
movdqa xmm5, xmmword [rsp + 0x170]
mov qword [rax + 0x10], rsi
lea rsi, [sym._ZNSt17_Function_handlerIFbPKcyEZN7httplib6detail28write_content_without_lengthIZNS3_6Server27write_content_with_providerERNS3]
movups xmmword [rax], xmm0
mov rax, qword [rsp + 0x130]
movq xmm0, rsi
lea rsi, [fcn.140040bf0]
movaps xmmword [rsp + 0x130], xmm1
movq xmm1, rsi
mov qword [rsp + 0x160], rax
mov rax, qword [rsp + 0x170]
punpcklqdq xmm0, xmm1
mov qword [rsp + 0x168], rdx
movaps xmmword [rsp + 0x140], xmm5
movaps xmmword [rsp + 0x170], xmm0
test rax, rax
je 0x14002d00c
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
mov rax, qword [rsp + 0xb88]
movdqa xmm1, xmmword [rsp + 0x180]
lea rsi, [sym._ZNSt17_Function_handlerIFbvEZN7httplib6detail28write_content_without_lengthIZNS1_6Server27write_content_with_providerERNS1_6S]
mov qword [rsp + 0x138], 0
movq xmm0, rsi
lea rsi, [fcn.140043c30]
mov rdx, qword [rsp + 0x138]
movdqa xmm5, xmmword [rsp + 0x190]
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
movaps xmmword [rsp + 0x130], xmm1
movq xmm1, rsi
mov qword [rsp + 0x180], rax
mov rax, qword [rsp + 0x190]
punpcklqdq xmm0, xmm1
mov qword [rsp + 0x188], rdx
movaps xmmword [rsp + 0x140], xmm5
movaps xmmword [rsp + 0x190], xmm0
test rax, rax
je 0x14002d0ab
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
lea rax, [rsp + 0xb7]
movdqa xmm1, xmmword [rsp + 0x1a0]
lea rsi, [sym._ZNSt17_Function_handlerIFvvEZN7httplib6detail28write_content_without_lengthIZNS1_6Server27write_content_with_providerERNS1_6S]
mov qword [rsp + 0x138], 0
mov qword [rsp + 0x130], rax
mov rax, qword [rsp + 0x130]
movq xmm0, rsi
lea rsi, [fcn.140045550]
mov rdx, qword [rsp + 0x138]
movdqa xmm5, xmmword [rsp + 0x1b0]
movaps xmmword [rsp + 0x130], xmm1
movq xmm1, rsi
mov qword [rsp + 0x1a0], rax
mov rax, qword [rsp + 0x1b0]
punpcklqdq xmm0, xmm1
mov qword [rsp + 0x1a8], rdx
movaps xmmword [rsp + 0x140], xmm5
movaps xmmword [rsp + 0x1b0], xmm0
test rax, rax
je 0x14002d14a
mov rdx, qword [rsp + 0x40]
mov r8d, 3
mov rcx, rdx
call rax
lea rsi, [rsp + 0x110]
lea rdi, [r15 + 0xc0]
jmp 0x14002d1e9
mov rax, qword [rsp + 0xb8]
mov rax, qword [rax + 0x28]
cmp rax, 0xffffffffffffffff
je 0x14002d1f7
mov rax, qword [rsp + 0xb88]
mov rcx, qword [rsp + 0xb88]
mov rax, qword [rax]
call qword [rax + 0x18]
test al, al
je 0x14002d34b
mov rax, qword [rsp + 0xc8]
cmp qword [r15 + 0xd0], 0
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x130], rax
je 0x14002d5dd
mov rdx, qword [rsp + 0x40]
mov r9, r14
mov r8, rsi
mov rcx, rdi
call qword [r15 + 0xd8]
test al, al
je 0x14002d34b
cmp byte [rsp + 0xc0], 0
je 0x14002d34b
cmp byte [rsp + 0xb7], 0
jne 0x14002d160
mov rcx, r14
call method.httplib::DataSink.DataSink__
jmp 0x14002ccb7
lea rax, [rsp + 0x130]
mov qword [rsp + 0x40], rax
jmp 0x14002c302
mov rbx, qword [rcx + 8]
mov rbp, rsi
mov rsi, qword [rcx]
mov r9, rdx
mov rcx, rbp
sub rbx, rsi
mov rdx, rsi
add rbx, 1
mov r8, rbx
call method.httplib::detail.make_content_range_header_field_abi:cxx11__std::pair_unsigned_long_long__unsigned_long_long__const__unsigned_long_long___clone_.isra.0_
lea r14, [rsp + 0x160]
lea rdx, str.Content_Range
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rbp
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
lea rdi, [r15 + 0x78]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov r9, rbx
mov r8, rsi
mov rdx, rdi
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::substr_unsigned_long_long__unsigned_long_long__const
mov rdx, r14
mov rcx, rdi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.operator_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char______clone_.isra.0_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rbp
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rdx, qword [r15 + 0x80]
jmp 0x14002bcb0
mov r14, r12
jmp 0x14002cd35
mov rbp, qword [rsp + 0x40]
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rcx, [rsp + 0xd0]
lea rdx, [r13 + 0x40]
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x70], rcx
mov qword [rsp + 0x68], rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_assign_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rdx, rbp
mov rcx, r13
call sym.std::_Rb_tree_rebalance_for_erase_std::_Rb_tree_node_base__std::_Rb_tree_node_base_
lea rbx, [rax + 0x20]
lea rcx, [rax + 0x40]
mov rsi, rax
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rbx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov edx, 0x60
mov rcx, rsi
call sym.operator_delete_void__unsigned_long_long_
sub qword [r15 + 0x70], 1
jmp 0x14002cadf
mov rbp, qword [rsp + 0x40]
mov rax, qword [rsp + 0x50]
mov rdi, qword [rsp + 0x60]
add rax, rdi
cmp rsi, rax
jne 0x14002caca
jmp 0x14002d2ae
mov rcx, r14
xor esi, esi
call method.httplib::DataSink.DataSink__
test r12, r12
jne 0x14002c7b0
jmp 0x14002b9e8
mov rcx, r14
call method.httplib::DataSink.DataSink__
jmp 0x14002b9e8
mov rax, qword [rcx]
mov rsi, rbx
mov rbx, qword [rcx + 8]
mov r9, rdx
mov rcx, rsi
sub rbx, rax
mov rdx, rax
add rbx, 1
mov r8, rbx
call method.httplib::detail.make_content_range_header_field_abi:cxx11__std::pair_unsigned_long_long__unsigned_long_long__const__unsigned_long_long___clone_.isra.0_
lea r14, [rsp + 0x160]
lea rdx, str.Content_Range
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rsi
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rdx, rbx
jmp 0x14002c302
mov r8, qword [rdx]
mov rsi, qword [rsp + 0xb80]
lea rcx, [rsp + 0x110]
mov rax, qword [rdx + 8]
mov qword [rsp + 0x28], rcx
lea rdx, [r15 + 0xc0]
mov qword [rsp + 0x20], rsi
mov rcx, qword [rsp + 0xb88]
mov dword [rsp + 0x110], 0
sub rax, r8
lea r9, [rax + 1]
call sym._ZN7httplib6detail13write_contentIZNS_6Server27write_content_with_providerERNS_6StreamERKNS_7RequestERNS_8ResponseERKNSt7__cxx
jmp 0x14002ccac
lea rdx, str.default
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov rdx, r14
lea rcx, [0x14005ed20]
call sym.std::random_device::_M_init_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rcx, [sym.__tcf_5]
call sym.atexit
mov rcx, rbx
call sym.__cxa_guard_release
jmp 0x14002cb01
lea rbx, [0x14005ed20]
mov rcx, rbx
call sym.std::random_device::_M_getval__
mov rcx, rbx
mov dword [rsp + 0x40], eax
call sym.std::random_device::_M_getval__
mov rcx, rbx
mov r13d, eax
call sym.std::random_device::_M_getval__
mov rcx, rbx
mov r12d, eax
call sym.std::random_device::_M_getval__
pxor xmm0, xmm0
mov ecx, 0x10
mov ebp, eax
mov qword [0x14005e330], 0
movaps xmmword [0x14005e320], xmm0
call sym.operator_new_unsigned_long_long_
mov r10, qword [0x14005e320]
mov r8, qword [0x14005e328]
mov rbx, rax
mov rdi, qword [0x14005e330]
sub r8, r10
test r8, r8
jg 0x14002d5ab
test r10, r10
jne 0x14002d5c0
mov edi, dword [rsp + 0x40]
lea rax, [rbx + 0x10]
mov qword [0x14005e320], rbx
lea rcx, [sym.__tcf_6]
mov qword [0x14005e330], rax
mov dword [rbx], edi
mov dword [rbx + 0xc], ebp
mov dword [rbx + 4], r13d
mov dword [rbx + 8], r12d
mov qword [0x14005e328], rax
call sym.atexit
mov rcx, rsi
call sym.__cxa_guard_release
jmp 0x14002cb23
mov ecx, 8
call sym.operator_new_unsigned_long_long_
mov r12, rax
lea rax, method.httplib::detail::nocompressor.nocompressor__
mov qword [r12], rax
jmp 0x14002c3d6
lea rax, [rsp + 0xc8]
mov rcx, qword [rsp + 0xb88]
lea rdx, [r15 + 0xc0]
xor r8d, r8d
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xb80]
mov dword [rsp + 0xc8], 0
mov qword [rsp + 0x20], rax
call sym._ZN7httplib6detail13write_contentIZNS_6Server27write_content_with_providerERNS_6StreamERKNS_7RequestERNS_8ResponseERKNSt7__cxx
jmp 0x14002ccac
mov rbx, qword [rsp + 0x40]
lea rdx, str.gzip
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
lea rdx, str.Content_Encoding
mov rcx, r14
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::basic_string_std.allocator_char____char_const__std::allocator_char__const___clone_.isra.0_
mov r8, rbx
mov rdx, r14
mov rcx, r15
call method.httplib::Response.set_header_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
jmp 0x14002bce2
mov rcx, r12
call rax
jmp 0x14002ccae
mov rsi, rax
jmp 0x14002d322
mov rdx, r10
mov rcx, rax
mov qword [rsp + 0x50], r10
call sym.memmove
mov r10, qword [rsp + 0x50]
sub rdi, r10
mov rcx, r10
mov rdx, rdi
call sym.operator_delete_void__unsigned_long_long_
jmp 0x14002d4c2
call sym.std::__throw_bad_function_call__
call sym.std::__throw_bad_function_call__
call sym.std::__throw_bad_function_call__
lea rcx, str.basic_string::append
call sym.std::__throw_length_error_char_const_
lea rcx, str.basic_string::append
call sym.std::__throw_length_error_char_const_
mov rbx, rax
jmp 0x14002d60c
mov rcx, qword [rsp + 0x40]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, qword [rsp + 0x68]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, qword [rsp + 0x70]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
mov rcx, rbx
call sym._Unwind_Resume
mov rcx, r14
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_dispose__
lea rax, [rsp + 0xf0]
mov qword [rsp + 0x68], rax
jmp 0x14002d616