Function at 0x471dd0
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, 0xf18
movaps xmmword [rsp + 0xf00], xmm6
mov rax, qword [rsp + 0xf80]
mov ebx, dword [rsp + 0xf88]
cmp dword [rax + 0x20], 0x18f
mov qword [rsp + 0xf60], rcx
mov r15, rdx
mov dword [rsp + 0x50], r8d
mov qword [rsp + 0xf78], r9
mov byte [rsp + 0x77], r8b
jle 0x471e4d
cmp qword [rcx + 0x208], 0
mov rax, rcx
je 0x471e4d
lea rcx, [rcx + 0x1f8]
mov r8, qword [rsp + 0xf80]
mov rdx, r9
call qword [rax + 0x210]
test eax, eax
je 0x472520
lea rax, [rsp + 0x180]
test bl, bl
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x190]
mov qword [rsp + 0x180], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x1b0]
mov byte [rsp + 0x190], 0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], 0
mov byte [rsp + 0x1b0], 0
jne 0x472582
cmp byte [rsp + 0x50], 0
lea rbx, [rsp + 0x700]
je 0x4723c0
lea rdx, str.close
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rsi, [rsp + 0x520]
lea rdx, str.Connection
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rbx
mov rdx, 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, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x471f19
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x471f2f
call sym.operator_delete_void_
lea rdx, str.Content_Type
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rax, qword [rsp + 0xf80]
mov rdx, rbx
lea rbp, [rax + 0x48]
lea rdi, [rax + 0x50]
mov rcx, rbp
call sym._ZNKSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_EN7httplib6detail2ciESaI
cmp rdi, rax
je 0x472b94
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x471f78
call sym.operator_delete_void_
lea rdx, str.Content_Length
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, rbp
mov rdx, rbx
call sym._ZNKSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_EN7httplib6detail2ciESaI
mov rcx, qword [rsp + 0x700]
cmp rdi, rax
je 0x472b00
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x471fb1
call sym.operator_delete_void_
lea rdx, str.Accept_Ranges
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rdx, rbx
mov rcx, rbp
call sym._ZNKSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_EN7httplib6detail2ciESaI
cmp rdi, rax
je 0x472e70
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x471fea
call sym.operator_delete_void_
mov rax, qword [rsp + 0xf60]
cmp qword [rax + 0x268], 0
je 0x472019
lea rcx, [rax + 0x258]
mov r8, qword [rsp + 0xf80]
mov rdx, qword [rsp + 0xf78]
call qword [rax + 0x270]
lea rax, [rsi + 0x18]
mov byte [rsp + 0x538], 0
mov qword [rsp + 0x528], rax
mov rax, qword [rsp + 0xf80]
lea r14, method.httplib::detail::BufferStream.BufferStream__
mov qword [rsp + 0x520], r14
mov qword [rsp + 0x530], 0
mov qword [rsp + 0x548], 0
mov edi, dword [rax + 0x20]
mov ecx, edi
call method.httplib.status_message_int_
xor edx, edx
mov r8d, 0x800
mov rcx, rbx
mov r12, rax
call sym.memset
mov r9d, edi
mov qword [rsp + 0x20], r12
mov rcx, rbx
lea r8, str.HTTP_1.1__d__s_r_n
mov edx, 0x7ff
call sym.snprintf
test eax, eax
mov r13d, eax
movsxd rdi, eax
jle 0x47220c
cmp eax, 0x7fe
jg 0x472c30
movabs rax, 0x7fffffffffffffff
sub rax, qword [rsp + 0x530]
cmp rdi, rax
ja 0x473acc
lea rcx, [rsi + 8]
mov r8, rdi
mov rdx, rbx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_append_char_const__unsigned_long_long_
mov rax, qword [rsp + 0xf60]
cmp qword [rax + 0x320], 0
je 0x473ab1
lea rcx, [rax + 0x310]
mov r8, rbp
mov rdx, rsi
call qword [rax + 0x328]
test rax, rax
mov r12, qword [rsp + 0x528]
je 0x47221d
mov rbp, qword [rsp + 0x530]
test rbp, rbp
je 0x47214b
xor edi, edi
jmp 0x47212b
add rdi, rax
cmp rbp, rdi
jbe 0x472143
mov rax, qword [r15]
lea rdx, [r12 + rdi]
mov r8, rbp
mov rcx, r15
sub r8, rdi
call qword [rax + 0x28]
test rax, rax
jns 0x472123
mov r12, qword [rsp + 0x528]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x520], r14
cmp r12, rax
je 0x472164
mov rcx, r12
call sym.operator_delete_void_
mov rcx, qword [rsp + 0xf78]
lea rdx, str.HEAD
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::compare_char_const__const
test eax, eax
je 0x472380
mov rax, qword [rsp + 0xf80]
mov rdi, qword [rax + 0x80]
test rdi, rdi
je 0x472290
mov rsi, qword [rax + 0x78]
xor ebx, ebx
jmp 0x4721ac
add rbx, rax
cmp rdi, rbx
jbe 0x472380
mov rax, qword [r15]
lea rdx, [rsi + rbx]
mov r8, rdi
mov rcx, r15
sub r8, rbx
call qword [rax + 0x28]
test rax, rax
jns 0x4721a0
xor ebx, ebx
jmp 0x472385
movabs rax, 0x7fffffffffffffff
sub rax, qword [rsp + 0x530]
cmp rax, rdi
jb 0x473ac0
lea rcx, [rsi + 8]
mov r8, rdi
mov rdx, r10
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::_M_append_char_const__unsigned_long_long_
mov rcx, qword [rsp + 0x140]
test rcx, rcx
je 0x47220c
call sym.operator_delete_void_
test rdi, rdi
mov r12, qword [rsp + 0x528]
jne 0x4720d8
add rsi, 0x18
mov qword [rsp + 0x520], r14
cmp r12, rsi
je 0x472236
mov rcx, r12
call sym.operator_delete_void_
xor ebx, ebx
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x1a0]
add rax, 0x10
cmp rcx, rax
je 0x472253
call sym.operator_delete_void_
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x180]
add rax, 0x10
cmp rcx, rax
je 0x47226f
call sym.operator_delete_void_
nop
movaps xmm6, xmmword [rsp + 0xf00]
mov eax, ebx
add rsp, 0xf18
pop rbx
pop rsi
pop rdi
pop rbp
pop r12
pop r13
pop r14
pop r15
ret
cmp qword [rax + 0xd0], 0
je 0x472380
mov rax, qword [rsp + 0xf60]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xf80]
mov r9, qword [rax + 0xb8]
test r9, r9
je 0x473072
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x473a2d
sub rax, rdx
cmp rax, 0x10
je 0x4739c1
movq xmm0, r15
mov r8, qword [rsp + 0x48]
mov rcx, rsi
mov qword [rsp + 0x28], r15
movhps xmm0, qword [rsp + 0xf80]
mov qword [rsp + 0x20], r15
movaps xmmword [rsp + 0x160], xmm0
mov rdx, qword [rsp + 0x168]
lea rax, [rsp + 0xe8]
mov qword [rsp + 0xa0], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x30], rax
movq qword [rsp + 0x90], xmm0
mov qword [rsp + 0x98], rdx
mov rdx, qword [rsp + 0x40]
call sym._ZN7httplib6detail29process_multipart_ranges_dataIZNS0_27write_multipart_ranges_dataIZNS_6Server27write_content_with_providerE
mov ebp, eax
test bpl, bpl
je 0x4721c4
mov rax, qword [rsp + 0xf80]
mov byte [rax + 0x101], 1
nop dword [rax + rax]
mov ebx, 1
mov rax, qword [rsp + 0xf60]
cmp qword [rax + 0x2a8], 0
je 0x472238
lea rcx, [rax + 0x298]
mov r8, qword [rsp + 0xf80]
mov rdx, qword [rsp + 0xf78]
call qword [rax + 0x2b0]
jmp 0x472238
lea rsi, [rsp + 0x520]
lea rdx, str.Connection
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rax, qword [rsp + 0xf78]
mov rdx, rsi
lea rbx, [rsp + 0x700]
lea rcx, [rax + 0x40]
call sym._ZN7httplib6detail16get_header_valueERKSt8multimapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES7_NS0_2ciESaISt4pairIK
mov rcx, rbx
mov rdx, rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rdx, str.close
mov rcx, rbx
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::compare_char_const__const
mov rcx, qword [rsp + 0x700]
mov edi, eax
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x472425
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x47243b
call sym.operator_delete_void_
test edi, edi
je 0x471eca
mov edx, 0x18
mov rcx, rbx
call sym.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___::basic_stringstream_std::_Ios_Openmode_
lea rcx, [rbx + 0x10]
mov r8d, 8
lea rdx, str.timeout
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 + 0xf60]
lea rcx, [rbx + 0x10]
mov rdx, qword [rax + 0x38]
call sym.std::ostream_std::ostream::_M_insert_long_long__long_long_
mov r8d, 6
mov rcx, rax
mov rdi, rax
lea rdx, str.__max
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 + 0xf60]
mov rcx, rdi
mov rdx, qword [rax + 0x30]
call sym.std::ostream_std::ostream::_M_insert_unsigned_long_long__unsigned_long_long_
lea rdi, [rsp + 0x340]
lea rdx, [rbx + 0x18]
mov rcx, rdi
call sym.std::__cxx11::basic_stringbuf_char__std::char_traits_char___std::allocator_char___::str___const
lea rdx, str.Keep_Alive
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rdi
mov rdx, 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, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x4724f3
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x340]
add rdi, 0x10
cmp rcx, rdi
je 0x472509
call sym.operator_delete_void_
mov rcx, rbx
call sym.std::__cxx11::basic_stringstream_char__std::char_traits_char___std::allocator_char___::basic_stringstream__
jmp 0x471f2f
lea rax, [rsp + 0x180]
mov qword [rsp + 0x188], 0
mov qword [rsp + 0x48], rax
lea rax, [rsp + 0x190]
mov qword [rsp + 0x180], rax
lea rax, [rsp + 0x1a0]
mov qword [rsp + 0x40], rax
lea rax, [rsp + 0x1b0]
mov byte [rsp + 0x190], 0
mov qword [rsp + 0x1a0], rax
mov qword [rsp + 0x1a8], 0
mov byte [rsp + 0x1b0], 0
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
sub rax, qword [rsi + 0x180]
cmp rax, 0x1f
jbe 0x472973
lea rax, [rsp + 0x240]
lea rdx, str.Content_Type
mov rcx, rax
mov qword [rsp + 0x80], rax
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rax, qword [rsp + 0xf80]
mov r14, qword [rax + 0x58]
lea rsi, [rax + 0x50]
mov rax, qword [rsp + 0x240]
mov qword [rsp + 0x88], rsi
test r14, r14
mov qword [rsp + 0x58], rax
je 0x472ef2
mov qword [rsp + 0x68], rsi
mov rsi, qword [rsp + 0x248]
mov qword [rsp + 0xf68], r15
add rax, rsi
mov qword [rsp + 0x60], rsi
mov rsi, qword [sym.imp.msvcrt.dll_tolower]
mov qword [rsp + 0x78], rax
mov rbx, qword [r14 + 0x20]
mov rdi, qword [rsp + 0x60]
mov rax, qword [r14 + 0x28]
lea r13, [rbx + rdi]
lea rdx, [rbx + rax]
cmp rax, rdi
mov rdi, qword [rsp + 0x58]
cmovle r13, rdx
cmp rbx, r13
jne 0x472676
jmp 0x472e50
mov ecx, r12d
call rsi
mov ecx, ebp
mov r12d, eax
call rsi
cmp r12d, eax
jl 0x472e5b
add rbx, 1
add rdi, 1
cmp r13, rbx
je 0x472e50
movzx ebp, byte [rbx]
movzx r12d, byte [rdi]
mov ecx, ebp
call rsi
mov ecx, r12d
mov r15d, eax
call rsi
cmp r15d, eax
jge 0x472650
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x472620
mov rax, qword [rsp + 0x68]
cmp qword [rsp + 0x88], rax
mov r15, qword [rsp + 0xf68]
je 0x472ef2
mov rcx, qword [rsp + 0x80]
lea rdx, [rax + 0x20]
call method.httplib::detail::ci.operator___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__const__clone_.isra.886_
test al, al
jne 0x472ef2
mov rax, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x58]
add rax, 0x10
cmp rsi, rax
je 0x4726e9
mov rcx, rsi
call sym.operator_delete_void_
mov rsi, qword [rsp + 0x68]
mov rcx, qword [rsp + 0x48]
lea rdx, [rsi + 0x40]
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, qword [rsp + 0x88]
mov rcx, rsi
call sym.std::_Rb_tree_rebalance_for_erase_std::_Rb_tree_node_base__std::_Rb_tree_node_base_
mov rcx, qword [rax + 0x40]
mov rbx, rax
lea rax, [rax + 0x50]
cmp rcx, rax
je 0x472721
call sym.operator_delete_void_
mov rcx, qword [rbx + 0x20]
lea rax, [rbx + 0x30]
cmp rcx, rax
je 0x472733
call sym.operator_delete_void_
mov rcx, rbx
call sym.operator_delete_void_
mov rax, qword [rsp + 0xf80]
sub qword [rax + 0x70], 1
movzx eax, byte [0x005130c0]
test al, al
jne 0x472767
lea rcx, [0x005130c0]
call sym.__cxa_guard_acquire
test eax, eax
jne 0x473692
movzx eax, byte [0x005130a0]
test al, al
jne 0x472786
lea rcx, [0x005130a0]
call sym.__cxa_guard_acquire
test eax, eax
jne 0x4735f9
movzx eax, byte [0x005130b0]
test al, al
je 0x473020
lea rsi, [rsp + 0x2c0]
mov byte [rsp + 0x2d0], 0
mov ebx, 0x10
movabs rbp, 0x8421084210842109
mov qword [rsp + 0x2c8], 0
lea rax, [rsi + 0x10]
lea rdi, [0x00513260]
mov qword [rsp + 0x2c0], rax
lea r12, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
mov r13, rdi
jmp 0x47283e
mov ecx, dword [rdi + rax*4]
lea rdx, [rax + 1]
mov qword [0x00513c20], 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 rbp
shr rdx, 4
imul rdx, rdx, 0x3e
sub rcx, rdx
movsx edx, byte [r12 + rcx]
mov rcx, rsi
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::push_back_char_
sub rbx, 1
je 0x472860
mov rax, qword [0x00513c20]
cmp rax, 0x26f
jbe 0x4727e0
mov rcx, r13
call fcn.004a6f00
mov rax, qword [0x00513c20]
jmp 0x4727e0
mov qword [rsp + 0x20], 0x1d
lea r9, str.__cpp_httplib_multipart_data_
xor r8d, r8d
xor edx, edx
mov rcx, rsi
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 rbx, [rsp + 0x700]
lea rdx, [rbx + 0x10]
mov qword [rsp + 0x700], rdx
mov rcx, qword [rax]
lea rdx, [rax + 0x10]
cmp rcx, rdx
je 0x473060
mov qword [rsp + 0x700], rcx
mov rcx, qword [rax + 0x10]
mov qword [rsp + 0x710], rcx
mov rcx, qword [rax + 8]
add rsi, 0x10
mov qword [rsp + 0x708], rcx
mov qword [rax], rdx
mov rcx, qword [rsp + 0x2c0]
mov qword [rax + 8], 0
mov byte [rax + 0x10], 0
cmp rcx, rsi
je 0x4728e6
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x40]
mov rdx, rbx
call sym.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____
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x472909
call sym.operator_delete_void_
mov r8, qword [rsp + 0x40]
lea rsi, [rsp + 0x260]
lea rdx, str.multipart_byteranges__boundary
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____std::operator_char__std::char_traits_char___std.allocator_char____char_const__std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rdx, str.Content_Type
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rsi
mov rdx, rbx
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, qword [rsp + 0x700]
add rbx, 0x10
cmp rcx, rbx
je 0x47295d
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x260]
add rsi, 0x10
cmp rcx, rsi
je 0x472973
call sym.operator_delete_void_
mov rdx, qword [rsp + 0xf80]
mov rcx, qword [rsp + 0xf78]
call method.httplib::detail.encoding_type_httplib::Request_const__httplib::Response_const_
mov edi, eax
mov rax, qword [rsp + 0xf80]
mov r9, qword [rax + 0x80]
test r9, r9
je 0x472d50
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x472a78
sub rax, rdx
cmp rax, 0x10
je 0x4734f0
lea rbx, [rsp + 0x220]
mov r8, qword [rsp + 0x48]
mov rcx, rsi
mov qword [rsp + 0x228], 0
lea rax, [rbx + 0x10]
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x28], rbx
mov qword [rsp + 0x220], rax
mov rax, qword [rsp + 0xf80]
mov qword [rsp + 0x20], rbx
mov byte [rsp + 0x230], 0
mov qword [rsp + 0xb0], rbx
mov qword [rsp + 0xb8], rax
lea rax, [rsp + 0xb0]
mov qword [rsp + 0x30], rax
call sym._ZN7httplib6detail29process_multipart_ranges_dataIZNS0_26make_multipart_ranges_dataERKNS_7RequestERNS_8ResponseERKNSt7__cxx111
mov rax, qword [rsp + 0xf80]
mov rdx, rbx
add rbx, 0x10
lea rcx, [rax + 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, qword [rsp + 0x220]
cmp rcx, rbx
je 0x472a69
call sym.operator_delete_void_
mov rax, qword [rsp + 0xf80]
mov r9, qword [rax + 0x80]
lea rsi, [rsp + 0x1e0]
mov qword [rsp + 0x20], r9
mov r8d, 0x20
lea r9, [0x0051522b]
mov rcx, rsi
lea rdx, [sym.vsnprintf]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char______gnu_cxx::__to_xstring_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____char__int____char__unsigned_long_long__char_const__char___unsigned_long_long__char_const__::___clone_constprop3709_
lea rbx, [rsp + 0x700]
lea rdx, str.Content_Length
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rsi
mov rdx, rbx
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, qword [rsp + 0x700]
add rbx, 0x10
cmp rcx, rbx
je 0x472ae1
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x1e0]
add rsi, 0x10
cmp rcx, rsi
je 0x471eb7
call sym.operator_delete_void_
jmp 0x471eb7
mov rax, qword [rsp + 0xf80]
cmp qword [rax + 0x80], 0
jne 0x471fa3
cmp qword [rax + 0xb8], 0
jne 0x471fa3
cmp qword [rax + 0xd0], 0
jne 0x471fa3
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x472b40
call sym.operator_delete_void_
lea rdx, [0x005168f5]
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rdx, str.Content_Length
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rbx
mov rdx, 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, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x472b87
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x700]
jmp 0x471fa3
mov rax, qword [rsp + 0xf80]
cmp qword [rax + 0x80], 0
jne 0x472bc0
cmp qword [rax + 0xb8], 0
jne 0x472bc0
cmp qword [rax + 0xd0], 0
je 0x471f62
nop
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x472bd6
call sym.operator_delete_void_
lea rdx, str.text_plain
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rdx, str.Content_Type
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rbx
mov rdx, 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, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x471f62
call sym.operator_delete_void_
jmp 0x471f62
mov ecx, 0x800
pxor xmm0, xmm0
mov qword [rsp + 0x150], 0
movaps xmmword [rsp + 0x140], xmm0
call sym.operator_new_unsigned_long_long_
lea r9, [rax + 0x800]
xor edx, edx
mov rcx, rax
mov qword [rsp + 0x140], rax
mov r8d, 0x800
mov qword [rsp + 0x150], r9
mov qword [rsp + 0x50], r9
call sym.memset
mov r9, qword [rsp + 0x50]
cmp r13d, 0x7fe
mov r10, rax
mov qword [rsp + 0x148], r9
jle 0x4721d0
lea rdi, [rsp + 0x140]
mov eax, 0x800
mov qword [rsp + 0x50], rdi
lea r13, str.HTTP_1.1__d__s_r_n
jmp 0x472d1e
jae 0x472cd5
add rdx, r10
cmp rdx, r9
je 0x472cd5
mov qword [rsp + 0x148], rdx
mov r9, rdx
sub r9, r10
mov qword [rsp + 0x20], r12
mov rcx, r10
mov r8, r13
mov rax, qword [rsp + 0xf80]
lea rdx, [r9 - 1]
mov r9d, dword [rax + 0x20]
call sym.snprintf
mov r9, qword [rsp + 0x148]
mov r10, qword [rsp + 0x140]
movsxd rdi, eax
mov rax, r9
sub rax, r10
lea rdx, [rax - 1]
cmp rdx, rdi
ja 0x4721d0
lea rdx, [rax + rax]
cmp rdx, rax
jbe 0x472cc0
mov rcx, qword [rsp + 0x50]
sub rdx, rax
call method.std::vector_char__std::allocator_char___._M_default_append_unsigned_long_long_
mov r9, qword [rsp + 0x148]
mov r10, qword [rsp + 0x140]
jmp 0x472cd5
mov r9, qword [rax + 0xb8]
test r9, r9
je 0x472f20
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x472dcd
sub rax, rdx
cmp rax, 0x10
je 0x473456
mov r8, qword [rsp + 0x48]
lea rax, [rsp + 0xe0]
mov rcx, rsi
mov qword [rsp + 0xe0], 0
mov rdx, qword [rsp + 0x40]
mov qword [rsp + 0x30], rax
mov qword [rsp + 0x28], rax
mov qword [rsp + 0x20], rax
call sym._ZN7httplib6detail29process_multipart_ranges_dataIZNS0_32get_multipart_ranges_data_lengthERKNS_7RequestERKNSt7__cxx1112basic_s
mov r9, qword [rsp + 0xe0]
lea rsi, [rsp + 0x280]
mov qword [rsp + 0x20], r9
mov r8d, 0x20
lea r9, [0x0051522b]
mov rcx, rsi
lea rdx, [sym.vsnprintf]
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char______gnu_cxx::__to_xstring_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char_____char__int____char__unsigned_long_long__char_const__char___unsigned_long_long__char_const__::___clone_constprop3709_
lea rbx, [rsp + 0x700]
lea rdx, str.Content_Length
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rsi
mov rdx, rbx
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, qword [rsp + 0x700]
add rbx, 0x10
cmp rcx, rbx
je 0x472e36
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x280]
add rsi, 0x10
cmp rcx, rsi
jne 0x472af6
jmp 0x471eb7
cmp rdi, qword [rsp + 0x78]
jne 0x47268e
mov qword [rsp + 0x68], r14
mov r14, qword [r14 + 0x10]
jmp 0x472692
mov rcx, qword [rsp + 0xf78]
lea rdx, str.HEAD
call sym.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___::compare_char_const__const
test eax, eax
jne 0x471fd4
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x472ea2
call sym.operator_delete_void_
lea rdx, str.bytes
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rdx, str.Accept_Ranges
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rbx
mov rdx, 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, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x471fd4
call sym.operator_delete_void_
jmp 0x471fd4
mov rax, qword [rsp + 0x80]
add rax, 0x10
cmp qword [rsp + 0x58], rax
je 0x472748
mov rcx, qword [rsp + 0x58]
call sym.operator_delete_void_
jmp 0x472748
cmp qword [rax + 0xd0], 0
je 0x471eb7
cmp byte [rax + 0x100], 0
je 0x471eb7
lea rsi, [rsp + 0x520]
lea rdx, str.chunked
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rbx, [rsp + 0x700]
lea rdx, str.Transfer_Encoding
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rsi
mov rdx, rbx
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, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x472f92
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x472fa8
call sym.operator_delete_void_
cmp edi, 1
je 0x473a71
cmp edi, 2
jne 0x471eb7
lea rdx, [0x005166bb]
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rdx, str.Content_Encoding
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rsi
mov rdx, rbx
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, qword [rsp + 0x700]
add rbx, 0x10
cmp rcx, rbx
je 0x473001
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x520]
add rsi, 0x10
cmp rcx, rsi
jne 0x472af6
jmp 0x471eb7
lea rcx, [0x005130b0]
call sym.__cxa_guard_acquire
test eax, eax
je 0x472795
lea rdx, [0x00513240]
lea rcx, [0x00513260]
call sym._ZNSt23mersenne_twister_engineIjLy32ELy624ELy397ELy31ELj2567483615ELy11ELj4294967295ELy7ELj2636928640ELy15ELj4022730752ELy18EL
lea rcx, [0x005130b0]
call sym.__cxa_guard_release
jmp 0x472795
movdqu xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x710], xmm1
jmp 0x4728b5
movzx ebp, byte [rax + 0x100]
test bpl, bpl
je 0x4736e3
mov rcx, qword [rsp + 0xf78]
mov rdx, rax
call method.httplib::detail.encoding_type_httplib::Request_const__httplib::Response_const_
sub eax, 1
xor r13d, r13d
cmp eax, 1
ja 0x473a10
lea rdi, [rsp + 0x340]
mov byte [rsp + 0xd4], 1
mov rcx, rdi
mov byte [rsp + 0xd5], 1
mov qword [rsp + 0xf0], 0
call fcn.0047c150
mov ecx, 0x28
mov qword [rsp + 0x310], 0
call sym.operator_new_unsigned_long_long_
lea rdx, [rsp + 0xd4]
mov qword [rsp + 0x300], rax
movdqa xmm3, xmmword [rsp + 0x340]
movq xmm2, rdx
mov qword [rax + 0x18], r13
lea rdx, [rsp + 0xf0]
mov qword [rax + 0x20], r15
lea rsi, [rsp + 0xd5]
mov qword [rax + 0x10], rdx
mov rdx, qword [rsp + 0x308]
movq xmm6, rsi
punpcklqdq xmm6, xmm2
movups xmmword [rax], xmm6
mov rax, qword [rsp + 0x300]
movaps xmmword [rsp + 0x300], xmm3
mov qword [rsp + 0x348], rdx
lea rdx, [sym._ZNSt14_Function_base13_Base_managerIZN7httplib6detail21write_content_chunkedIZNS1_6Server27write_content_with_providerERNS1_6]
mov qword [rsp + 0x340], rax
mov rax, qword [rsp + 0x350]
mov qword [rsp + 0x350], rdx
mov rdx, qword [rsp + 0x358]
test rax, rax
mov qword [rsp + 0x310], rax
mov qword [rsp + 0x318], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFbPKcyEZN7httplib6detail21write_content_chunkedIZNS3_6Server27write_content_with_providerERNS3_6Strea]
mov qword [rsp + 0x358], rdx
je 0x4731a7
lea rcx, [rsp + 0x300]
mov r8d, 3
mov rdx, rcx
call rax
mov rdx, qword [rsp + 0x708]
mov qword [rsp + 0x700], r15
mov rax, qword [rsp + 0x700]
movdqa xmm4, xmmword [rsp + 0x360]
mov qword [rsp + 0x368], rdx
lea rdx, [fcn.004a4080]
mov qword [rsp + 0x360], rax
mov rax, qword [rsp + 0x370]
mov qword [rsp + 0x370], rdx
mov rdx, qword [rsp + 0x378]
movaps xmmword [rsp + 0x700], xmm4
test rax, rax
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFbvEZN7httplib6detail21write_content_chunkedIZNS1_6Server27write_content_with_providerERNS1_6StreamER]
mov qword [rsp + 0x378], rdx
je 0x473231
mov r8d, 3
mov rdx, rbx
mov rcx, rbx
call rax
mov rdx, qword [rsp + 0x708]
movq xmm0, r13
movq xmm5, r15
movaps xmmword [rsp + 0x2e0], xmm6
lea rsi, [rsp + 0x2e0]
punpcklqdq xmm0, xmm5
movaps xmmword [rsp + 0x2f0], xmm0
movdqa xmm2, xmmword [rsp + 0x380]
mov qword [rsp + 0x700], rsi
mov rax, qword [rsp + 0x700]
movaps xmmword [rsp + 0x700], xmm2
mov qword [rsp + 0x388], rdx
lea rdx, [fcn.004a40c0]
mov qword [rsp + 0x380], rax
mov rax, qword [rsp + 0x390]
mov qword [rsp + 0x390], rdx
mov rdx, qword [rsp + 0x398]
test rax, rax
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFvvEZN7httplib6detail21write_content_chunkedIZNS1_6Server27write_content_with_providerERNS1_6StreamER]
mov qword [rsp + 0x398], rdx
je 0x4732e1
mov r8d, 3
mov rdx, rbx
mov rcx, rbx
call rax
mov rdx, qword [rsp + 0x708]
mov qword [rsp + 0x700], rsi
mov rax, qword [rsp + 0x700]
movdqa xmm3, xmmword [rsp + 0x3a0]
mov qword [rsp + 0x3a8], rdx
lea rdx, [fcn.004a4040]
mov qword [rsp + 0x3a0], rax
mov rax, qword [rsp + 0x3b0]
mov qword [rsp + 0x3b0], rdx
mov rdx, qword [rsp + 0x3b8]
movaps xmmword [rsp + 0x700], xmm3
test rax, rax
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFvRKSt8multimapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_N7httplib6detail2ciESaISt4pair]
mov qword [rsp + 0x3b8], rdx
je 0x47336b
mov r8d, 3
mov rdx, rbx
mov rcx, rbx
call rax
mov rax, qword [rsp + 0xf80]
lea rbx, [rsp + 0xf8]
lea rsi, [rsp + 0x100]
lea r12, [rax + 0xc0]
jmp 0x47340d
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax + 0x28]
cmp rax, 0xffffffffffffffff
je 0x47341b
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x18]
test al, al
je 0x4739a7
mov rax, qword [rsp + 0xf0]
mov qword [rsp + 0xf8], 0
mov qword [rsp + 0x100], rax
mov rax, qword [rsp + 0xf80]
cmp qword [rax + 0xd0], 0
je 0x473abb
mov r9, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, r12
call qword [rax + 0xd8]
test al, al
je 0x4739a7
cmp byte [rsp + 0xd5], 0
je 0x4739a7
cmp byte [rsp + 0xd4], 0
jne 0x473390
mov rcx, rdi
call method.httplib::DataSink.DataSink__
test r13, r13
je 0x47236c
mov rax, qword [r13]
lea rdx, [sym.httplib::detail::nocompressor::nocompressor__]
mov rax, qword [rax + 8]
cmp rax, rdx
jne 0x473aa7
mov edx, 8
mov rcx, r13
call sym.operator_delete_void__unsigned_long_long_
jmp 0x472363
mov rax, qword [rdx]
lea rdi, [rsp + 0x1c0]
mov r8, r9
mov rsi, qword [rdx + 8]
lea rdx, [rsp + 0x120]
mov rcx, rdi
mov qword [rsp + 0x120], rax
sub rsi, rax
add rsi, 1
mov qword [rsp + 0x128], rsi
call method.httplib::detail.make_content_range_header_field_abi:cxx11__std::pair_unsigned_long_long__unsigned_long_long__const__unsigned_long_long_
lea rbx, [rsp + 0x700]
lea rdx, str.Content_Range
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rdi
mov rdx, rbx
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, qword [rsp + 0x700]
add rbx, 0x10
cmp rcx, rbx
je 0x4734cf
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x1c0]
add rdi, 0x10
cmp rcx, rdi
je 0x4734e5
call sym.operator_delete_void_
mov r9, rsi
jmp 0x472dcd
mov rbp, qword [rdx]
lea rdi, [rsp + 0x200]
mov r8, r9
mov rsi, qword [rdx + 8]
lea rdx, [rsp + 0x130]
mov rcx, rdi
mov qword [rsp + 0x130], rbp
sub rsi, rbp
add rsi, 1
mov qword [rsp + 0x138], rsi
call method.httplib::detail.make_content_range_header_field_abi:cxx11__std::pair_unsigned_long_long__unsigned_long_long__const__unsigned_long_long_
lea rbx, [rsp + 0x700]
lea rdx, str.Content_Range
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rdi
mov rdx, rbx
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, qword [rsp + 0x700]
add rbx, 0x10
cmp rcx, rbx
je 0x473569
call sym.operator_delete_void_
mov rax, qword [rsp + 0xf80]
mov r9, qword [rax + 0x80]
lea r12, [rax + 0x78]
cmp rbp, r9
ja 0x473ad8
lea rbx, [rsp + 0x2a0]
sub r9, rbp
lea rax, [rbx + 0x10]
mov rcx, rbx
mov qword [rsp + 0x2a0], rax
mov rax, qword [rsp + 0xf80]
mov rdx, qword [rax + 0x78]
add rdx, rbp
cmp r9, rsi
cmova r9, rsi
lea r8, [rdx + r9]
call method.void_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___._M_construct_char_const__char_const__char_const__std::forward_iterator_tag___clone_.constprop.3711_
mov rdx, rbx
mov rcx, r12
add rbx, 0x10
call sym.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____
mov rcx, qword [rsp + 0x2a0]
cmp rcx, rbx
je 0x4735df
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x200]
add rdi, 0x10
cmp rcx, rdi
jne 0x472a64
jmp 0x472a69
lea rcx, [0x00513c40]
call sym.std::random_device::_M_getval_pretr1__
lea rcx, [0x00513c40]
mov dword [rsp + 0x700], eax
call sym.std::random_device::_M_getval_pretr1__
lea rcx, [0x00513c40]
mov dword [rsp + 0x704], eax
call sym.std::random_device::_M_getval_pretr1__
lea rcx, [0x00513c40]
mov dword [rsp + 0x708], eax
call sym.std::random_device::_M_getval_pretr1__
mov dword [rsp + 0x70c], eax
lea rdx, [rsp + 0xc0]
lea rax, [rsp + 0x700]
mov qword [rsp + 0xc8], 4
lea rcx, [0x00513240]
mov qword [rsp + 0xc0], rax
call method.std::seed_seq.seed_seq_unsigned_int__std::initializer_list_unsigned_int__
lea rcx, [0x005130a0]
call sym.__cxa_guard_release
lea rcx, [sym.__tcf_11]
call sym.atexit
jmp 0x472786
lea rbx, [rsp + 0x700]
lea rdx, str.mt19937
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rcx, [0x00513c40]
mov rdx, rbx
call sym.std::random_device::_M_init_pretr1_std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char____const_
lea rcx, [0x005130c0]
add rbx, 0x10
call sym.__cxa_guard_release
mov rcx, qword [rsp + 0x700]
cmp rcx, rbx
je 0x472767
call sym.operator_delete_void_
jmp 0x472767
mov rcx, rsi
mov byte [rsp + 0xd6], 1
mov qword [rsp + 0x108], 0
mov byte [rsp + 0xd7], 1
call fcn.0047c150
mov ecx, 0x18
mov qword [rsp + 0x330], 0
call sym.operator_new_unsigned_long_long_
lea rdx, [rsp + 0x108]
mov qword [rsp + 0x320], rax
movdqa xmm5, xmmword [rsp + 0x520]
lea rdi, [rsp + 0xd7]
movq xmm4, rdx
mov qword [rax + 0x10], r15
mov rdx, qword [rsp + 0x328]
movq xmm0, rdi
punpcklqdq xmm0, xmm4
movups xmmword [rax], xmm0
mov rax, qword [rsp + 0x320]
movaps xmmword [rsp + 0x320], xmm5
mov qword [rsp + 0x528], rdx
lea rdx, [sym._ZNSt14_Function_base13_Base_managerIZN7httplib6detail28write_content_without_lengthIZNS1_6Server27write_content_with_provider]
mov qword [rsp + 0x520], rax
mov rax, qword [rsp + 0x530]
mov qword [rsp + 0x530], rdx
mov rdx, qword [rsp + 0x538]
test rax, rax
mov qword [rsp + 0x330], rax
mov qword [rsp + 0x338], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFbPKcyEZN7httplib6detail28write_content_without_lengthIZNS3_6Server27write_content_with_providerERNS3]
mov qword [rsp + 0x538], rdx
je 0x4737d1
lea rcx, [rsp + 0x320]
mov r8d, 3
mov rdx, rcx
call rax
mov rdx, qword [rsp + 0x708]
mov qword [rsp + 0x700], r15
mov rax, qword [rsp + 0x700]
movdqa xmm2, xmmword [rsp + 0x540]
mov qword [rsp + 0x548], rdx
lea rdx, [fcn.004a4260]
mov qword [rsp + 0x540], rax
mov rax, qword [rsp + 0x550]
mov qword [rsp + 0x550], rdx
mov rdx, qword [rsp + 0x558]
movaps xmmword [rsp + 0x700], xmm2
test rax, rax
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFbvEZN7httplib6detail28write_content_without_lengthIZNS1_6Server27write_content_with_providerERNS1_6S]
mov qword [rsp + 0x558], rdx
je 0x47385b
mov r8d, 3
mov rdx, rbx
mov rcx, rbx
call rax
mov rdx, qword [rsp + 0x708]
lea rax, [rsp + 0xd6]
mov qword [rsp + 0x700], rax
mov rax, qword [rsp + 0x700]
movdqa xmm3, xmmword [rsp + 0x560]
mov qword [rsp + 0x568], rdx
lea rdx, [fcn.004a42a0]
mov qword [rsp + 0x560], rax
mov rax, qword [rsp + 0x570]
mov qword [rsp + 0x570], rdx
mov rdx, qword [rsp + 0x578]
movaps xmmword [rsp + 0x700], xmm3
test rax, rax
mov qword [rsp + 0x710], rax
mov qword [rsp + 0x718], rdx
lea rdx, [sym._ZNSt17_Function_handlerIFvvEZN7httplib6detail28write_content_without_lengthIZNS1_6Server27write_content_with_providerERNS1_6S]
mov qword [rsp + 0x578], rdx
je 0x4738ed
mov r8d, 3
mov rdx, rbx
mov rcx, rbx
call rax
mov rax, qword [rsp + 0xf80]
lea rbx, [rsp + 0x110]
lea rdi, [rsp + 0x118]
lea rbp, [rax + 0xc0]
jmp 0x473981
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax + 0x28]
cmp rax, 0xffffffffffffffff
je 0x47398b
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x18]
test al, al
je 0x473998
mov rax, qword [rsp + 0x108]
mov qword [rsp + 0x110], 0
mov qword [rsp + 0x118], rax
mov rax, qword [rsp + 0xf80]
cmp qword [rax + 0xd0], 0
je 0x473ab6
mov r9, rsi
mov r8, rbx
mov rdx, rdi
mov rcx, rbp
call qword [rax + 0xd8]
test al, al
je 0x473998
cmp byte [rsp + 0xd7], 0
je 0x473998
cmp byte [rsp + 0xd6], 0
jne 0x473910
mov rcx, rsi
call method.httplib::DataSink.DataSink__
jmp 0x47236c
mov rcx, rsi
xor ebx, ebx
call method.httplib::DataSink.DataSink__
jmp 0x472385
mov rcx, rdi
xor ebp, ebp
call method.httplib::DataSink.DataSink__
test r13, r13
jne 0x47342c
xor ebx, ebx
jmp 0x472385
mov rsi, qword [rsp + 0xf80]
lea rcx, [rsp + 0xdc]
mov r8, qword [rdx]
mov dword [rsp + 0xdc], 0
mov rax, qword [rdx + 8]
mov qword [rsp + 0x28], rcx
mov rcx, r15
lea rdx, [rsi + 0xc0]
mov rsi, qword [rsp + 0xf60]
sub rax, r8
lea r9, [rax + 1]
mov qword [rsp + 0x20], rsi
call sym._ZN7httplib6detail13write_contentIZNS_6Server27write_content_with_providerERNS_6StreamERKNS_7RequestERNS_8ResponseERKNSt7__cxx
jmp 0x472361
mov ecx, 8
call sym.operator_new_unsigned_long_long_
mov r13, rax
lea rax, method.httplib::detail::nocompressor.nocompressor__
mov qword [r13], rax
jmp 0x4730a1
mov rax, qword [rsp + 0xf80]
xor r8d, r8d
mov rcx, r15
mov dword [rsp + 0xd8], 0
lea rdx, [rax + 0xc0]
lea rax, [rsp + 0xd8]
mov qword [rsp + 0x28], rax
mov rax, qword [rsp + 0xf60]
mov qword [rsp + 0x20], rax
call sym._ZN7httplib6detail13write_contentIZNS_6Server27write_content_with_providerERNS_6StreamERKNS_7RequestERNS_8ResponseERKNSt7__cxx
jmp 0x472361
lea rdx, str.gzip
mov rcx, rsi
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
lea rdx, str.Content_Encoding
mov rcx, rbx
call method.std::__cxx11::basic_string_char__std::char_traits_char___std::allocator_char___.basic_string_char_const__std::allocator_char__const___clone_.isra.1253_
mov rcx, qword [rsp + 0xf80]
mov r8, rsi
mov rdx, rbx
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 0x472feb
mov rcx, r13
call rax
jmp 0x472363
call sym.std::__throw_bad_function_call__
call sym.std::__throw_bad_function_call__
call sym.std::__throw_bad_function_call__
lea rcx, [0x005151dd]
call sym.std::__throw_length_error_char_const_
lea rcx, [0x005151dd]
call sym.std::__throw_length_error_char_const_
lea rdx, [0x00515fd4]
mov r8, rbp
lea rcx, [0x00515ff0]
call sym.std::__throw_out_of_range_fmt_char_const__::_
mov rcx, qword [rsp + 0x700]
add rbx, 0x10
mov rsi, rax
cmp rcx, rbx
je 0x473b07
call sym.operator_delete_void_
mov rbx, rsi
mov rcx, qword [rsp + 0x200]
add rdi, 0x10
cmp rcx, rdi
je 0x473b60
call sym.operator_delete_void_
jmp 0x473b60
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x1a0]
add rax, 0x10
cmp rcx, rax
je 0x473b7b
call sym.operator_delete_void_
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x180]
add rax, 0x10
cmp rcx, rax
je 0x473b96
call sym.operator_delete_void_
mov rcx, rbx
call sym._Unwind_Resume
mov rbx, rax
mov rax, qword [rsp + 0x330]
test rax, rax
je 0x473bc1
lea rcx, [rsp + 0x320]
mov r8d, 3
mov rdx, rcx
call rax
mov rcx, rsi
call method.httplib::DataSink.DataSink__
jmp 0x473b60