Function at 0x4732a0
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 0x47331d
cmp qword [rcx + 0x208], 0
mov rax, rcx
je 0x47331d
lea rcx, [rcx + 0x1f8]
mov r8, qword [rsp + 0xf80]
mov rdx, r9
call qword [rax + 0x210]
test eax, eax
je 0x4739f0
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 0x473a52
cmp byte [rsp + 0x50], 0
lea rbx, [rsp + 0x700]
je 0x473890
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.1540_
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.1540_
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 0x4733e9
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x4733ff
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.1540_
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 0x474064
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x473448
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.1540_
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 0x473fd0
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x473481
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.1540_
mov rdx, rbx
mov rcx, rbp
call sym._ZNKSt8_Rb_treeINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt4pairIKS5_S5_ESt10_Select1stIS8_EN7httplib6detail2ciESaI
cmp rdi, rax
je 0x474340
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x4734ba
call sym.operator_delete_void_
mov rax, qword [rsp + 0xf60]
cmp qword [rax + 0x268], 0
je 0x4734e9
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_
mov r8d, 0x800
xor edx, edx
mov rcx, rbx
mov r12, rax
call sym.memset
mov qword [rsp + 0x20], r12
mov r9d, edi
mov rcx, rbx
lea r8, str.HTTP_1.1__d__s_r_n
mov edx, 0x7ff
call sym.snprintf_char__unsigned_long_long__char_const__::_
test eax, eax
mov r13d, eax
movsxd rdi, eax
jle 0x4736dc
cmp eax, 0x7fe
jg 0x474100
movabs rax, 0x7fffffffffffffff
sub rax, qword [rsp + 0x530]
cmp rdi, rax
ja 0x474f99
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 0x474f7e
lea rcx, [rax + 0x310]
mov r8, rbp
mov rdx, rsi
call qword [rax + 0x328]
test rax, rax
mov r12, qword [rsp + 0x528]
je 0x4736ed
mov rbp, qword [rsp + 0x530]
test rbp, rbp
je 0x47361b
xor edi, edi
jmp 0x4735fb
add rdi, rax
cmp rbp, rdi
jbe 0x473613
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 0x4735f3
mov r12, qword [rsp + 0x528]
lea rax, [rsi + 0x18]
mov qword [rsp + 0x520], r14
cmp r12, rax
je 0x473634
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 0x473850
mov rax, qword [rsp + 0xf80]
mov rdi, qword [rax + 0x80]
test rdi, rdi
je 0x473760
mov rsi, qword [rax + 0x78]
xor ebx, ebx
jmp 0x47367c
add rbx, rax
cmp rdi, rbx
jbe 0x473850
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 0x473670
xor ebx, ebx
jmp 0x473855
movabs rax, 0x7fffffffffffffff
sub rax, qword [rsp + 0x530]
cmp rax, rdi
jb 0x474f8d
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 0x4736dc
call sym.operator_delete_void_
test rdi, rdi
mov r12, qword [rsp + 0x528]
jne 0x4735a8
add rsi, 0x18
mov qword [rsp + 0x520], r14
cmp r12, rsi
je 0x473706
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 0x473723
call sym.operator_delete_void_
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x180]
add rax, 0x10
cmp rcx, rax
je 0x47373f
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 0x473850
mov rax, qword [rsp + 0xf60]
mov qword [rsp + 0xe8], rax
mov rax, qword [rsp + 0xf80]
mov r9, qword [rax + 0xb8]
test r9, r9
je 0x474542
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x474efd
sub rax, rdx
cmp rax, 0x10
je 0x474e91
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 0x473694
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 0x473708
lea rcx, [rax + 0x298]
mov r8, qword [rsp + 0xf80]
mov rdx, qword [rsp + 0xf78]
call qword [rax + 0x2b0]
jmp 0x473708
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.1540_
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.1540_
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 0x4738f5
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x47390b
call sym.operator_delete_void_
test edi, edi
je 0x47339a
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.1540_
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 0x4739c3
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x340]
add rdi, 0x10
cmp rcx, rdi
je 0x4739d9
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 0x4733ff
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 0x473e43
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.1540_
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 0x4743c2
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 0x473b46
jmp 0x474320
mov ecx, r12d
call rsi
mov ecx, ebp
mov r12d, eax
call rsi
cmp r12d, eax
jl 0x47432b
add rbx, 1
add rdi, 1
cmp r13, rbx
je 0x474320
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 0x473b20
mov r14, qword [r14 + 0x18]
test r14, r14
jne 0x473af0
mov rax, qword [rsp + 0x68]
cmp qword [rsp + 0x88], rax
mov r15, qword [rsp + 0xf68]
je 0x4743c2
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.882_
test al, al
jne 0x4743c2
mov rax, qword [rsp + 0x80]
mov rsi, qword [rsp + 0x58]
add rax, 0x10
cmp rsi, rax
je 0x473bb9
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 0x473bf1
call sym.operator_delete_void_
mov rcx, qword [rbx + 0x20]
lea rax, [rbx + 0x30]
cmp rcx, rax
je 0x473c03
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 [0x0050f770]
test al, al
jne 0x473c37
lea rcx, [0x0050f770]
call sym.__cxa_guard_acquire
test eax, eax
jne 0x474b62
movzx eax, byte [0x0050f750]
test al, al
jne 0x473c56
lea rcx, [0x0050f750]
call sym.__cxa_guard_acquire
test eax, eax
jne 0x474ac9
movzx eax, byte [0x0050f760]
test al, al
je 0x4744f0
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, [0x0050f920]
mov qword [rsp + 0x2c0], rax
lea r12, str.0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
mov r13, rdi
jmp 0x473d0e
mov ecx, dword [rdi + rax*4]
lea rdx, [rax + 1]
mov qword [0x005102e0], 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 0x473d30
mov rax, qword [0x005102e0]
cmp rax, 0x26f
jbe 0x473cb0
mov rcx, r13
call fcn.004a6e10
mov rax, qword [0x005102e0]
jmp 0x473cb0
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 0x474530
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 0x473db6
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 0x473dd9
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.1540_
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 0x473e2d
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x260]
add rsi, 0x10
cmp rcx, rsi
je 0x473e43
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 0x474220
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x473f48
sub rax, rdx
cmp rax, 0x10
je 0x4749c0
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 0x473f39
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, [0x005123b2]
mov rcx, rsi
lea rdx, [sym.vsnprintf_char__unsigned_long_long__char_const__char_]
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_constprop3681_
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.1540_
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 0x473fb1
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x1e0]
add rsi, 0x10
cmp rcx, rsi
je 0x473387
call sym.operator_delete_void_
jmp 0x473387
mov rax, qword [rsp + 0xf80]
cmp qword [rax + 0x80], 0
jne 0x473473
cmp qword [rax + 0xb8], 0
jne 0x473473
cmp qword [rax + 0xd0], 0
jne 0x473473
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x474010
call sym.operator_delete_void_
lea rdx, [0x00513597]
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.1540_
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.1540_
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 0x474057
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x700]
jmp 0x473473
mov rax, qword [rsp + 0xf80]
cmp qword [rax + 0x80], 0
jne 0x474090
cmp qword [rax + 0xb8], 0
jne 0x474090
cmp qword [rax + 0xd0], 0
je 0x473432
nop
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x4740a6
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.1540_
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.1540_
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 0x473432
call sym.operator_delete_void_
jmp 0x473432
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 0x4736a0
lea rdi, [rsp + 0x140]
mov eax, 0x800
mov qword [rsp + 0x50], rdi
lea r13, str.HTTP_1.1__d__s_r_n
jmp 0x4741ee
jae 0x4741a5
add rdx, r10
cmp rdx, r9
je 0x4741a5
mov qword [rsp + 0x148], rdx
mov r9, rdx
sub r9, r10
mov qword [rsp + 0x20], r12
mov r8, r13
mov rcx, r10
mov rax, qword [rsp + 0xf80]
lea rdx, [r9 - 1]
mov r9d, dword [rax + 0x20]
call sym.snprintf_char__unsigned_long_long__char_const__::_
mov r9, qword [rsp + 0x148]
movsxd rdi, eax
mov r10, qword [rsp + 0x140]
mov rax, r9
sub rax, r10
lea rdx, [rax - 1]
cmp rdx, rdi
ja 0x4736a0
lea rdx, [rax + rax]
cmp rdx, rax
jbe 0x474190
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 0x4741a5
mov r9, qword [rax + 0xb8]
test r9, r9
je 0x4743f0
mov rax, qword [rsp + 0xf78]
mov rsi, qword [rsp + 0xf78]
mov rax, qword [rax + 0x188]
mov rdx, qword [rsi + 0x180]
cmp rax, rdx
je 0x47429d
sub rax, rdx
cmp rax, 0x10
je 0x474921
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, [0x005123b2]
mov rcx, rsi
lea rdx, [sym.vsnprintf_char__unsigned_long_long__char_const__char_]
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_constprop3681_
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.1540_
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 0x474306
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x280]
add rsi, 0x10
cmp rcx, rsi
jne 0x473fc6
jmp 0x473387
cmp rdi, qword [rsp + 0x78]
jne 0x473b5e
mov qword [rsp + 0x68], r14
mov r14, qword [r14 + 0x10]
jmp 0x473b62
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 0x4734a4
mov rcx, qword [rsp + 0x700]
lea rax, [rbx + 0x10]
cmp rcx, rax
je 0x474372
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.1540_
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.1540_
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 0x4734a4
call sym.operator_delete_void_
jmp 0x4734a4
mov rax, qword [rsp + 0x80]
add rax, 0x10
cmp qword [rsp + 0x58], rax
je 0x473c18
mov rcx, qword [rsp + 0x58]
call sym.operator_delete_void_
jmp 0x473c18
cmp qword [rax + 0xd0], 0
je 0x473387
cmp byte [rax + 0x100], 0
je 0x473387
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.1540_
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.1540_
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 0x474462
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x520]
lea rax, [rsi + 0x10]
cmp rcx, rax
je 0x474478
call sym.operator_delete_void_
cmp edi, 1
je 0x474f41
cmp edi, 2
jne 0x473387
lea rdx, [0x0051355d]
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.1540_
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.1540_
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 0x4744d1
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x520]
add rsi, 0x10
cmp rcx, rsi
jne 0x473fc6
jmp 0x473387
lea rcx, [0x0050f760]
call sym.__cxa_guard_acquire
test eax, eax
je 0x473c65
lea rdx, [0x0050f900]
lea rcx, [0x0050f920]
call sym._ZNSt23mersenne_twister_engineIjLy32ELy624ELy397ELy31ELj2567483615ELy11ELj4294967295ELy7ELj2636928640ELy15ELj4022730752ELy18EL
lea rcx, [0x0050f760]
call sym.__cxa_guard_release
jmp 0x473c65
movdqu xmm1, xmmword [rax + 0x10]
movaps xmmword [rsp + 0x710], xmm1
jmp 0x473d85
movzx ebp, byte [rax + 0x100]
test bpl, bpl
je 0x474bb3
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 0x474ee0
lea rdi, [rsp + 0x340]
mov byte [rsp + 0xd4], 1
mov rcx, rdi
mov byte [rsp + 0xd5], 1
mov qword [rsp + 0xf0], 0
call fcn.0047d6f0
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 0x474677
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.004a3fd0]
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 0x474701
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.004a4010]
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 0x4747b1
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.004a3f90]
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 0x47483b
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 0x4748dd
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax + 0x28]
cmp rax, 0xffffffffffffffff
je 0x4748eb
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x18]
test al, al
je 0x474e77
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 0x474f88
mov r9, rdi
mov r8, rbx
mov rdx, rsi
mov rcx, r12
call qword [rax + 0xd8]
test al, al
je 0x474e77
cmp byte [rsp + 0xd5], 0
je 0x474e77
cmp byte [rsp + 0xd4], 0
jne 0x474860
mov rcx, rdi
call method.httplib::DataSink.DataSink__
test r13, r13
je 0x47383c
mov rax, qword [r13]
lea rdx, [sym.httplib::detail::nocompressor::nocompressor__]
mov rcx, r13
mov rax, qword [rax + 8]
cmp rax, rdx
jne 0x474f77
call sym.operator_delete_void_
jmp 0x473833
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.1540_
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 0x47499a
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x1c0]
add rdi, 0x10
cmp rcx, rdi
je 0x4749b0
call sym.operator_delete_void_
mov r9, rsi
jmp 0x47429d
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.1540_
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 0x474a39
call sym.operator_delete_void_
mov rax, qword [rsp + 0xf80]
mov r9, qword [rax + 0x80]
lea r12, [rax + 0x78]
cmp rbp, r9
ja 0x474fa5
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.3682_
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 0x474aaf
call sym.operator_delete_void_
mov rcx, qword [rsp + 0x200]
add rdi, 0x10
cmp rcx, rdi
jne 0x473f34
jmp 0x473f39
lea rcx, [0x00510300]
call sym.std::random_device::_M_getval_pretr1__
lea rcx, [0x00510300]
mov dword [rsp + 0x700], eax
call sym.std::random_device::_M_getval_pretr1__
lea rcx, [0x00510300]
mov dword [rsp + 0x704], eax
call sym.std::random_device::_M_getval_pretr1__
lea rcx, [0x00510300]
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, [0x0050f900]
mov qword [rsp + 0xc0], rax
call method.std::seed_seq.seed_seq_unsigned_int__std::initializer_list_unsigned_int__
lea rcx, [0x0050f750]
call sym.__cxa_guard_release
lea rcx, [sym.__tcf_11]
call sym.atexit
jmp 0x473c56
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.1540_
lea rcx, [0x00510300]
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, [0x0050f770]
add rbx, 0x10
call sym.__cxa_guard_release
mov rcx, qword [rsp + 0x700]
cmp rcx, rbx
je 0x473c37
call sym.operator_delete_void_
jmp 0x473c37
mov rcx, rsi
mov byte [rsp + 0xd6], 1
mov qword [rsp + 0x108], 0
mov byte [rsp + 0xd7], 1
call fcn.0047d6f0
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 0x474ca1
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.004a41a0]
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 0x474d2b
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.004a41e0]
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 0x474dbd
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 0x474e51
mov rax, qword [rsp + 0xe8]
mov rax, qword [rax + 0x28]
cmp rax, 0xffffffffffffffff
je 0x474e5b
mov rax, qword [r15]
mov rcx, r15
call qword [rax + 0x18]
test al, al
je 0x474e68
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 0x474f83
mov r9, rsi
mov r8, rbx
mov rdx, rdi
mov rcx, rbp
call qword [rax + 0xd8]
test al, al
je 0x474e68
cmp byte [rsp + 0xd7], 0
je 0x474e68
cmp byte [rsp + 0xd6], 0
jne 0x474de0
mov rcx, rsi
call method.httplib::DataSink.DataSink__
jmp 0x47383c
mov rcx, rsi
xor ebx, ebx
call method.httplib::DataSink.DataSink__
jmp 0x473855
mov rcx, rdi
xor ebp, ebp
call method.httplib::DataSink.DataSink__
test r13, r13
jne 0x4748fc
xor ebx, ebx
jmp 0x473855
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 0x473831
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 0x474571
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 0x473831
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.1540_
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.1540_
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 0x4744bb
call rax
jmp 0x473833
call sym.std::__throw_bad_function_call__
call sym.std::__throw_bad_function_call__
call sym.std::__throw_bad_function_call__
lea rcx, [0x0051202a]
call sym.std::__throw_length_error_char_const_
lea rcx, [0x0051202a]
call sym.std::__throw_length_error_char_const_
lea rdx, [0x00513048]
mov r8, rbp
lea rcx, [0x00513060]
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 0x474fd4
call sym.operator_delete_void_
mov rbx, rsi
mov rcx, qword [rsp + 0x200]
add rdi, 0x10
cmp rcx, rdi
je 0x47502d
call sym.operator_delete_void_
jmp 0x47502d
mov rax, qword [rsp + 0x40]
mov rcx, qword [rsp + 0x1a0]
add rax, 0x10
cmp rcx, rax
je 0x475048
call sym.operator_delete_void_
mov rax, qword [rsp + 0x48]
mov rcx, qword [rsp + 0x180]
add rax, 0x10
cmp rcx, rax
je 0x475063
call sym.operator_delete_void_
mov rcx, rbx
call sym._Unwind_Resume
mov rbx, rax
mov rax, qword [rsp + 0x330]
test rax, rax
je 0x47508e
lea rcx, [rsp + 0x320]
mov r8d, 3
mov rdx, rcx
call rax
mov rcx, rsi
call method.httplib::DataSink.DataSink__
jmp 0x47502d